1. A computer memory storing computer-executable instructions that, when executed by at least one computer system, perform a method comprising: registering at a resource manager a first scheduler, the first scheduler separate from the resource manager; receiving at the resource manager a request from the first scheduler for processing resources; receiving at the resource manager, first information that describes a first amount of use of a first set of resources allocated to the first scheduler of a first process; and adjusting, by the resource manager, the first set of resources allocated to the first scheduler in accordance with the first information, the resource manager adjusting processing resources to the first scheduler by providing an array of interfaces to a plurality of virtual processor roots and a count of a number of array element to the first scheduler; wherein the first scheduler creates a virtual processor for each interface to a virtual processor root and maps each virtual processor to a corresponding virtual processor root, wherein the virtual processor root maps to a respective hardware thread of the computer system.