1. A data-processing method comprising: identifying a plurality of hardware resources associated with a data-processing apparatus; time-slicing said plurality of hardware resources; and allocating said plurality of active hardware resources among a plurality of active hardware resources associated with said data-processing apparatus, thereby allowing a limited number of hardware resources to service a larger number of physical devices associated with said data-processing apparatus.