Patent ID: 8078798

Claim:
A virtual tape server (VTS), comprising: a first host adapter through which a first host is coupled; a second host adapter through which a second host is coupled; a VTS controller; a virtual tape emulation (VTE) through which a first level storage unit is coupled, the first level storage unit having a first partition allocated to the first host and a second partition allocated to the second host; a first hierarchical storage controller (“HSC”) coupled to a first physical tape storage unit (“first tape unit”), the first HSC operable to manage removal of data from the first partition to the first tape unit; a second HSC coupled to a second physical tape storage unit (“second tape unit”), the second HSC operable to manage removal of data from the second partition to the second tape unit; a first free-space controller coupled to the VTS controller and operable to determine a total amount of free space in the first level storage unit; a second free-space controller coupled to the VTS controller and operable to determine an amount of free space in the second partition; a first throttling controller responsive to the first free-space controller and operable to manage the flow of data to the first partition; and a second throttling controller responsive to the second free-space controller and operable to manage the flow of data to the second partition; the VTS controller operable to: periodically receive an indication of the total amount of free space in the first level storage unit; periodically receive an indication of the amount of free space in the second partition from the second free-space controller; calculate a difference between the total amount of free space in the first level storage unit and the amount of free space in the second partition; and periodically transmit to the first free-space controller the calculated difference as the amount of free space available to the first partition, whereby free space in the second partition is not encroached upon by data associated with the first host.