1. A system for allocating a resource to workloads comprising:
at least one processor configured to:
assign workloads corresponding share quantities of the resource, wherein the share quantity of at least one of the workloads is a hard share quantity, and each share quantity other than a hard share quantity is a soft share quantity;
allocate the resource to currently active workloads in a current interval based on share quantities of previously active workloads in a preceding predefined interval by determining for each of said previously active workloads a portion of the resource to which the previously active workload is entitled in the current interval based on the share quantity of that previously active workload relative to the share quantities of other previously active workloads in the preceding predefined interval; and
in response to the availability of additional resource amounts of the resource in the current interval, allocating the additional resource amounts to at least one of the currently active workloads assigned a soft share quantity in the current interval.
2. The system of claim 1, wherein the resource is processor time.
3. The system of claim 2, wherein a workload is active in an interval when the workload has a processor utilization that exceeds a minimum threshold for said interval, and said processor utilization for said interval is an average of processor utilization for one or more sub-intervals of said interval.
4. The system of claim 1, wherein said allocating said resource to said currently active workloads recurs according to a regular schedule.
5. The system of claim 1, wherein said portion of the resource to which a previously active workload was entitled is proportional to said hard share quantity of said previously active workload divided by a sum of said hard share quantity and said soft share quantity of said other previously active workloads in said preceding predefined interval.
6. The system of claim 1, wherein a portion of the resource to which one or more previously active workloads was entitled is determined for one or more previously inactive workloads in said preceding predefined interval based on a hard share quantity assigned to one or more other previously inactive workloads in the preceding predefined interval.
7. The system of claim 1, wherein said portion of the resource to which a previously active workloads was entitled may not exceed a predetermined limit.
8. The system of claim 1, wherein: at least one workload is a member of a class of workloads, and allocating said resource to said workload comprises determining a maximum resource allocation for the workload based on a resource entitlement of the class and a hard share quantity indicating a maximum allocation of the resource entitlement of the class to the workload.
9. A computer program product comprising:
a non-transitory computer readable storage medium having computer readable program code embodied therewith for execution on a first processing system, the computer readable program code comprising computer readable program code configured to:
assign workloads corresponding share quantities of the resource, wherein the share quantity of at least one of the workloads is a hard share quantity, and each share quantity other than a hard share quantity is a soft share quantity;
allocate the resource to currently active workloads in a current interval based on share quantities of previously active workloads in a preceding predefined interval by determining for each of said previously active workloads a portion of the resource to which the previously active workload is entitled in the current interval based on the share quantity of that previously active workload relative to the share quantities of other previously active workloads in the preceding predefined interval; and
in response to the availability of additional resource amounts of the resource in the current interval, allocating the additional resource amounts to at least one of the currently active workloads assigned a soft share quantity in the current interval.
10. The computer program product of claim 9, wherein the resource is processor time.
11. The computer program product of claim 10, wherein a workload is active in an interval when the workload has a processor utilization that exceeds a minimum threshold for said interval, and said processor utilization for said interval is an average of processor utilization for one or more sub-intervals of said interval.
12. The computer program product of claim 9, wherein said allocating said resource to said currently active workloads recurs according to a regular schedule.
13. The computer program product of claim 9, wherein said portion of the resource to which a previously active workload was entitled is proportional to said hard share quantity of said previously active workload divided by a sum of said hard share quantity and said soft share quantity of said other previously active workloads in said preceding predefined interval.
14. The computer program product of claim 9, wherein a maximum resource allocation is determined for one or more previously inactive workloads in said preceding predefined interval based on a hard share quantity assigned to said one or more other previously inactive workloads.
15. The computer program product of claim 9, wherein said portion of the resource to which a previously active workloads was entitled may not exceed a predetermined limit.
16. The computer program product of claim 9, wherein: at least one workload is a member of a class of workloads, and allocating said resource to said workload comprises determining a maximum resource allocation for the workload based on a resource entitlement of the class and a hard share quantity indicating a maximum allocation of the resource entitlement of the class to the workload.
The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.
1. A collision determination apparatus for determining an occurrence of a collision and deploying an occupant protection apparatus based on information from multiple sensors, the multiple sensors being of at least two different sensor types and each of the multiples sensors having a predetermined detection function detecting at least one of a vehicle behavior and a vehicle deformation and having an identification function for retaining a uniquely-assigned sensor identifier, each of the multiple sensors transmitting a sensor data to the collision determination apparatus, the collision determination apparatus comprising:
a bus master receiving the sensor data from each of the multiple sensors via an in-vehicle network, the sensor data including a detection data from the predetermined detection function and the uniquely-assigned sensor identifier;
a main determination unit determining whether to operate the occupant protection apparatus based on the sensor data forwarded by the bus master;
a redundant determination unit including at least two sub-determination units and a switch unit, the sub-determination units being of at least two different types and at least corresponding to each of the different sensor types of the multiple sensors, the switch unit selecting one of the sub-determination units for providing a redundant determination, wherein the redundant determination of whether to operate the occupant protection apparatus is based on at least one of the sensor data forwarded by the bus master and is performed independently from the determination of the main determination unit;
a logic gate determining whether to operate the occupant protection apparatus by evaluating a determination result of the main determination unit and a determination result of the redundant determination unit; and
a start driver starting the occupant protection apparatus according to a logic output provided by the logic gate.
2. The collision determination apparatus of claim 1, wherein
the sensors are satellite sensors that are dispersedly disposed on the vehicle,
the sensor identifier includes a type information representing a sensor type of each of the satellite sensors,
the sub-determination units have different determination logics that respectively correspond to at least the different sensor types of the satellite sensors, and
the switch unit distributes the sensor data according to the type information.
3. The collision determination apparatus of claim 1, wherein the main determination unit further includes:
an identifier setting unit that sets a respectively different sensor identifier to each of the multiple sensors as an initial setting after a start up; and
an identifier confirmation unit that confirms the sensor identifier in the sensor data that is returned by the multiple sensors in response to a request signal, which requests a transmission of the sensor data and is sent to each of the sensors.
4. The collision determination apparatus of claim 1, wherein the collision determination apparatus is an electronic control unit (ECU) that includes, in one housing:
a CPU that has the main determination unit built-in, and
an ASIC that has the bus master, the redundant determination unit, the logic gate, and the start driver built therein.
5. The collision determination apparatus of claim 4, wherein
the ECU is an airbag ECU having a side collision determination function,
the different sensor types at least include a pressure sensor that detects a pressure change in an in-door space of each door and are movably installed on a side face of the vehicle and include an impact sensor disposed in a non-movable side face that detects at least one of an acceleration or deformation,
the sub-determination units include a first sub-determination unit that performs a collision determination based on the detection data from the pressure sensor and a second sub-determination unit that performs a collision determination based on the detection data from the impact sensor,
the logic gate is an AND gate, and
the start driver is an ignition driver that operates a gas generator for deploying an airbag that servers as the occupant protection apparatus for a side collision.