1. A computer accessible storage medium encoded with a plurality of instructions that, when executed:
calculate a first load of a first virtual machine on a first computer system, wherein the first load is calculated from one or more load factors associated with the first virtual machine, and wherein the first virtual machine is assigned to the first computer system for execution at the time the first load is calculated;
transmit the one or more load factors from the first computer system to a second computer system, wherein the second computer system is configured to calculate a second load of the first virtual machine on the second computer system from the one or more load factors, wherein the second load is an expected load of the first virtual machine on the second computer system if the first virtual machine is migrated to the second computer system; and
migrate the first virtual machine to the second computer system to be executed on the second computer system responsive to the first load exceeding the second load.
2. The computer accessible storage medium as recited in claim 1 wherein the instructions, when executed:
determine a first total load on the first computer system and a second total load on the second computer system; and
migrate one or more virtual machines from the first computer system to the second computer system responsive to the first total load exceeding the second total load.
3. The computer accessible storage medium as recited in claim 1 wherein the first virtual machine executes on the second computer system independent of the first computer system during use, even if the first virtual machine was initially launched on the first computer system.
4. The computer accessible storage medium as recited in claim 1 wherein the plurality of instructions, when executed, calculate the first load as a weighted combination of the load factors, and wherein the second load is calculated as a weighted combination of the load factors, wherein at least one of the weights differs between the first and second computer systems.
5. The computer accessible storage medium as recited in claim 1 wherein the plurality of instructions, when executed, select the second computer system to which the load factors are to be transmitted.
6. The computer accessible storage medium as recited in claim 5 wherein the selection is random.
7. A computer system comprising execution hardware configured to execute the plurality of instructions and the computer accessible medium as recited in claim 1 coupled to the execution hardware.
8. A cluster comprising a plurality of computer systems, wherein each of the plurality of computer systems is configured to execute one or more virtual machines, and wherein a first computer system of the plurality of computer systems is configured to:
calculate a first load of a first virtual machine on the first computer system, wherein the first load is calculated from one or more load factors associated with the first virtual machine, and wherein the first virtual machine is assigned to the first computer system for execution at the time the first load is calculated; and
transmit the one or more load factors from the first computer system to a second computer system of the plurality of computer systems;
and wherein the second computer system is configured to calculate a second load of the first virtual machine on the second computer system from the one or more load factors, wherein the second load is an expected load of the first virtual machine on the second computer system if the first virtual machine is migrated to the second computer system; and
wherein the first computer system is configured to migrate the first virtual machine to the second computer system to be executed on the second computer system responsive to the first load exceeding the second load.
9. The cluster as recited in claim 8 wherein the first computer system is configured to determine a first total load on the first computer system, and wherein the second computer system is configured to determine a second total load on the second computer system, and wherein the first computer system is configured to migrate one or more virtual machines from the first computer system to the second computer system responsive to the first total load exceeding the second total load.
10. The cluster as recited in claim 8 wherein the first virtual machine executes on the second computer system independent of the first computer system during use, even if the first virtual machine was initially launched on the first computer system.
11. The cluster as recited in claim 8 wherein first computer system is configured to calculate the first load as a weighted combination of the load factors, and wherein the second computer system is configured to calculate the second load as a weighted combination of the load factors, wherein at least one of the weights differs between the first and second computer systems.
12. The cluster as recited in claim 8 wherein the first computer system is configured to select the second computer system to which the load factors are to be transmitted.
13. The cluster as recited in claim 12 wherein the selection is random.
14. A method comprising:
calculating a first load of a first virtual machine on a first computer system, wherein the first load is calculated from one or more load factors associated with the first virtual machine, and wherein the first virtual machine is assigned to the first computer system for execution at the time the first load is calculated;
transmitting the one or more load factors from the first computer system to a second computer system;
calculating a second load of the first virtual machine on the second computer system from the one or more load factors, wherein the second load is an expected load of the first virtual machine on the second computer system if the first virtual machine is migrated to the second computer system; and
migrating the first virtual machine to the second computer system to be executed on the second computer system responsive to the first load exceeding the second load.
15. The method as recited in claim 14 further comprising:
determining a first total load on the first computer system and a second total load on the second computer system; and
migrating one or more virtual machines from the first computer system to the second computer system responsive to the first total load exceeding the second total load.
16. The method as recited in claim 14 wherein the first virtual machine executes on the second computer system independent of the first computer system during use, even if the first virtual machine was initially launched on the first computer system.
17. The method as recited in claim 14 wherein calculating the first load is performed as a weighted combination of the load factors, and wherein calculating the second load is performed as a weighted combination of the load factors, wherein at least one of the weights differs between the first and second computer systems.
18. The method as recited in claim 14 further comprising selecting the second computer system to which the load factors are to be transmitted.
19. The method as recited in claim 18 wherein the selecting is random.
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 device for controlled dispensing of product comprising:
(a) a front door;
(b) at least one display panel comprising a product receiving surface;
(c) at least one control arm having two ends, wherein a first end of the control arm is attached to the front door and wherein a second end of the control arm is attached to the display panel; and
(d) a spring urging the front door to a closed position;
wherein the control arm prevents movement of the display panel when the front door is opened, blocking access to additional product.
2. The device of claim 1, wherein the device is downwardly sloped so that gravity moves product toward the at least one display panel.
3. The device of claim 2, wherein the device further comprises a foot for elevating a rear portion of the device.
4. The device of claim 1, wherein the product receiving surface further comprises a concave surface.
5. The device of claim 1, further comprising a time delay mechanism, wherein a time delay is provided after a product is dispensed before the device will dispense a second product.
6. The device of claim 5, wherein the time delay mechanism comprises a second spring attached to the display panel.
7. The device of claim 1, wherein the device is configured to stack upon other devices.
8. The device of claim 1, wherein the device further comprises a locking mechanism that enables multiple devices to be secured together.
9. The device of claim 1, wherein the display panel pivots between a product receiving position and a product dispensing position, and wherein a product may be positioned on the product receiving surface when the display panel is in either position.