Concepedia

TLDR

General‑purpose operating systems inadequately support resource management in large‑scale servers because their process abstraction conflates protection domains with resource principals, preventing fine‑grained control over scheduling and resource allocation for modern server applications. We propose and evaluate a new operating system abstraction called a resource container. Resource containers separate protection domains from resource principals. Resource containers enable fine‑grained resource management and robust servers with firm priority control.

Abstract

General-purpose operating systems provide inadequate support for resource management in large-scale servers. Applications lack sufficient control over scheduling and management of machine resources, which makes it difficult to enforce priority policies, and to provide robust and controlled service. There is a fundamental mismatch between the original design assumptions underlying the resource management mechanisms of current general-purpose operating systems, and the behavior of modern server applications. In particular, the operating system's notions of protection domain and resource principal coincide in the process abstraction. This coincidence prevents a process that manages large numbers of network connections, for example, from properly allocating system resources among those connections. We propose and evaluate a new operating system abstraction called a resource container, which separates the notion of a protection domain from that of a resource principal. Resource containers enable fine-grained resource management in server systems and allow the development of robust servers, with simple and firm control over priority policies.

References

YearCitations

Page 1