This approach offers the best of both worlds. It can enforce CPU guarantees when the system runs out of excess cycles (for maximum security and guaranteed availability of lower-priority services) and can dispense free CPU cycles when they become available (for maximum performance).