Methods and apparatus for ensuring quality of service in an operating system

A uniform application programming interface (API) provides efficient generation and control of resource reservations so as to ensure a desired quality of service (QoS) for applications running on an operating system of a computer system. The uniform API is based on a hierarchical file system which a...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Hauptverfasser: OZDEN BANU, BRUSTOLONI JOSE CARLOS, SILBERSCHATZ ABRAHAM, BRUNO JOHN LOUIS, GABBER ERAN
Format: Patent
Sprache:eng
Schlagworte:
Online-Zugang:Volltext bestellen
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
Beschreibung
Zusammenfassung:A uniform application programming interface (API) provides efficient generation and control of resource reservations so as to ensure a desired quality of service (QoS) for applications running on an operating system of a computer system. The uniform API is based on a hierarchical file system which associates resource reservations with references to shared objects, rather than with the objects themselves. The uniform API permits the use of a variety of different proportional share schedulers for controlling access to physical resources, e.g., CPU, memory, disk, network interfaces, etc. of the computer system. The hierarchical file system includes a separate directory for each independently-scheduled physical resource of the computer system. A parent of the resource reservation in the hierarchical file system is either a root node of the file system or another reservation for the same resource. The resource reservation represents either an internal reservation, corresponding to a directory in the file system which is permitted to have child nodes associated therewith in the file system, or a queue, corresponding to a directory which is not permitted to have child nodes associated therewith. A given request for a resource reservation is processed by a proportional share scheduler associated with the resource, and identifies a queue having a predetermined portion of the resource allocated thereto. The invention also provides mechanisms for request tagging by the operating system, parental limitation of resources used by a child process, and "garbage collection" of resource reservations that are no longer needed.