A method and apparatus for enforcing capacity limitations such as those
imposed by software license agreements in an information handling system
in which a physical machine is divided into a plurality of logical
partitions, each of which is allocated a defined portion of processor
resources by a logical partition manager. A software license manager
specifies a maximum allowed consumption of processor resources by a
program executing in one of the logical partitions. A workload manager
also executing in the partition measures the actual consumption of
processor resources by the logical partition over a specified averaging
interval and compares it with the maximum allowed consumption. If the
actual consumption exceeds the maximum allowed consumption, the workload
manager calculates a capping pattern and interacts with the logical
partition manager to cap the actual consumption of processor resources by
the partition in accordance with the calculated capping pattern. To
provide additional capping flexibility, partitions are assigned phantom
weights that the logical partition manager adds to the total partition
weight to determine whether the partition has exceeded its allowed share
of processor resources for capping purposes. The logical partition thus
becomes a "container" for the licensed program with an enforced
processing capacity less than that of the entire machine.