Results 1 - 10
of
127
A Hierarchical CPU Scheduler for Multimedia Operating Systems
, 1996
"... The need for supportingvariety of hard and soft real-time, as well as best effort applications in a multimedia computing environment requires an operating system framework that: (1) enables different schedulers to be employed for different application classes, and (2) provides protection between the ..."
Abstract
-
Cited by 272 (4 self)
- Add to MetaCart
The need for supportingvariety of hard and soft real-time, as well as best effort applications in a multimedia computing environment requires an operating system framework that: (1) enables different schedulers to be employed for different application classes, and (2) provides protection between the various classes of applications. We argue that these objectives can be achieved by hierarchical partitioning of CPU bandwidth, in which an operating system partitions the CPU bandwidth among various application classes, and each application class, in turn, partitions its allocation (potentially using a different scheduling algorithm) among its sub-classes or applications. We present Start-time Fair Queuing (SFQ) algorithm, which enables such hierarchical partitioning. We have implemented a hierarchical scheduler in Solaris 2.4. We describe our implementation, and demonstrate its suitability for multimedia operating systems. 1
The Design, Implementation and Evaluation of SMART: A Scheduler for Multimedia Applications
, 1997
"... This paper argues for the need to design a new processor scheduling algorithm that can handle the mix of applications we see today. We present a scheduling algorithm which we have implemented in the Solaris UNIX operating system [Eykholt et al. 1992], and demonstrate its improved performance over ex ..."
Abstract
-
Cited by 213 (6 self)
- Add to MetaCart
This paper argues for the need to design a new processor scheduling algorithm that can handle the mix of applications we see today. We present a scheduling algorithm which we have implemented in the Solaris UNIX operating system [Eykholt et al. 1992], and demonstrate its improved performance over existing schedulers in research and practice on real applications. In particular, we have quantitatively compared against the popular weighted fair queueing and UNIX SVR4 schedulers in supporting multimedia applications in a realistic workstation environment...
A Feedback-driven Proportion Allocator for Real-Rate Scheduling
, 1999
"... In this paper we propose changing the decades-old practice of allocating CPU to threads based on priority to a scheme based on proportion and period. Our scheme allocates to each thread a percentage of CPU cycles over a period of time, and uses a feedback-based adaptive scheduler to assign automatic ..."
Abstract
-
Cited by 186 (23 self)
- Add to MetaCart
In this paper we propose changing the decades-old practice of allocating CPU to threads based on priority to a scheme based on proportion and period. Our scheme allocates to each thread a percentage of CPU cycles over a period of time, and uses a feedback-based adaptive scheduler to assign automatically both proportion and period. Applications with known requirements, such as isochronous software devices, can bypass the adaptive scheduler by specifying their desired proportion and/or period. As a result, our scheme provides reservations to applications that need them, and the benefits of proportion and period to those that do not. Adaptive scheduling using proportion and period has several distinct benefits over either fixed or adaptive priority based schemes: finer grain control of allocation, lower variance in the amount of cycles allocated to a thread, and avoidance of accidental priority inversion and starvation, including defense against denial-of-service attacks. This paper descr...
Operating System Support for Planetary-Scale Network Services
, 2004
"... PlanetLab is a geographically distributed overlay network designed to support the deployment and evaluation of planetary-scale network services. Two high-level goals shape its design. First, to enable a large research community to share the infrastructure, PlanetLab provides distributed virtualizati ..."
Abstract
-
Cited by 179 (17 self)
- Add to MetaCart
PlanetLab is a geographically distributed overlay network designed to support the deployment and evaluation of planetary-scale network services. Two high-level goals shape its design. First, to enable a large research community to share the infrastructure, PlanetLab provides distributed virtualization, whereby each service runs in an isolated slice of PlanetLab’s global resources. Second, to support competition among multiple network services, PlanetLab decouples the operating system running on each node from the networkwide services that define PlanetLab, a principle referred to as unbundled management. This paper describes how Planet-Lab realizes the goals of distributed virtualization and unbundled management, with a focus on the OS running on each node. 1
Performance Guarantees for Web Server End-Systems: A Control-Theoretical Approach
- IEEE Transactions on Parallel and Distributed Systems
, 2001
"... The Internet is undergoing substantial changes from a communication and browsing infrastructure to a medium for conducting business and marketing a myriad of services. The World Wide Web provides a uniform and widely-accepted application interface used by these services to reach multitudes of client ..."
Abstract
-
Cited by 164 (17 self)
- Add to MetaCart
The Internet is undergoing substantial changes from a communication and browsing infrastructure to a medium for conducting business and marketing a myriad of services. The World Wide Web provides a uniform and widely-accepted application interface used by these services to reach multitudes of clients. These changes place the web server at the center of a gradually emerging eservice infrastructure with increasing requirements for service quality and reliability guarantees in an unpredictable and highly-dynamic environment.
Stride Scheduling: Deterministic Proportional-Share Resource Management
, 1995
"... This paper presents stride scheduling, a deterministic scheduling technique that efficiently supports the same flexible resource management abstractions introduced by lottery scheduling. Compared to lottery scheduling, stride scheduling achieves significantly improved accuracy over relative throughp ..."
Abstract
-
Cited by 145 (1 self)
- Add to MetaCart
This paper presents stride scheduling, a deterministic scheduling technique that efficiently supports the same flexible resource management abstractions introduced by lottery scheduling. Compared to lottery scheduling, stride scheduling achieves significantly improved accuracy over relative throughput rates, with significantly lower response time variability. Stride scheduling implements proportional-share control over processor time and other resources by cross-applying elements of rate-based flow control algorithms designed for networks. We introduce new techniques to support dynamic changes and higher-level resource management abstractions. We also introduce a novel hierarchical stride scheduling algorithm that achieves better throughput accuracy and lower response time variability than prior schemes. Stride scheduling is evaluated using both simulations and prototypes implemented for the Linux kernel.
QoS Negotiation in Real-Time Systems and its Application to Automated Flight Control
- in IEEE Real-Time Technology and Applications Symposium
, 1997
"... AbstractÐReal-time middleware services must guarantee predictable performance under specified load and failure conditions, and ensure graceful degradation when these conditions are violated. Guaranteed predictable performance typically entails reservation of resources and use of admission control. G ..."
Abstract
-
Cited by 104 (17 self)
- Add to MetaCart
AbstractÐReal-time middleware services must guarantee predictable performance under specified load and failure conditions, and ensure graceful degradation when these conditions are violated. Guaranteed predictable performance typically entails reservation of resources and use of admission control. Graceful degradation, on the other hand, requires dynamic reallocation of resources to maximize the application-perceived system utility while coping with unanticipated overload and failures. We propose a model for quality-of-service (QoS) negotiation in building real-time services to meet both of the above requirements. QoS negotiation is shown to 1) outperform ªbinaryº admission control schemes (either guaranteeing the required QoS or rejecting the service request), 2) achieve higher application-perceived system utility, and 3) deal with violations of the load and failure hypotheses. We incorporated the proposed QoS-negotiation model into an example real-time middleware service, called RTPOOL, which manages a distributed pool of shared computing resources (processors) to guarantee timeliness QoS for real-time applications. In order to guarantee timeliness QoS, the resource pool is encapsulated with its own schedulability analysis, admission control, and load-sharing support. This support differs from others in that it adheres to the proposed QoS-negotiation model. The efficacy and power of QoS negotiation are demonstrated for an automated flight control system implemented on a network of PCs running RTPOOL. This system is used to fly an F-16 fighter aircraft modeled using the Aerial Combat (ACM) F-16 Flight Simulator. Experimental results indicate that QoS negotiation, while maintaining real-time guarantees, enables graceful QoS degradation under conditions in which traditional schedulability analysis and admission control schemes fail. Index TermsÐQuality-of-service (QoS), QoS negotiation, QoS levels and rewards, schedulability analysis and admission control, automated flight systems. 1
The Eclipse Operating System: Providing Quality of Service via Reservation Domains
- IN PROCEEDINGS OF USENIX 1998 TECHNICAL CONFERENCE (NEW
, 1998
"... In this paper, we introduce a new operating system abstraction called reservation domains, and describe its implementation in Eclipse, an experimental operating system that provides a testbed for Quality of Service (QoS) support for applications. Reservation domains enable explicit control over the ..."
Abstract
-
Cited by 85 (6 self)
- Add to MetaCart
In this paper, we introduce a new operating system abstraction called reservation domains, and describe its implementation in Eclipse, an experimental operating system that provides a testbed for Quality of Service (QoS) support for applications. Reservation domains enable explicit control over the provisioning of system resources among applications in order to achieve desired levels of predictable performance. In general, each reservation domain is assigned a certain fraction of each resource (e.g., 25% CPU, 50% disk I/O, etc.). Eclipse implements reservation-domain scheduling of multiple resources. It currently supports CPU and disk and physical memory (working set size) scheduling. Eclipse implements a new scheduling algorithm, Move-to-Rear List Scheduling (MTR-LS), that provides a cumulative service guarantee, in addition to fairness and delay bounds. Cumulative service guarantee is necessary for ensuring predictable aggregate throughput for applications that require multiple res...
Self-paging in the nemesis operating system
- In Proceedings of the 3rd USENIX Symposium on Operating Systems Design and Implementation
, 1999
"... In contemporary operating systems, continuous media (CM) applications are sensitive to the behaviour of other tasks in the system. This is due to contention in the kernel (or in servers) between these applications. To properly support CM tasks, we require “Quality of Service Firewalling” between dif ..."
Abstract
-
Cited by 68 (3 self)
- Add to MetaCart
In contemporary operating systems, continuous media (CM) applications are sensitive to the behaviour of other tasks in the system. This is due to contention in the kernel (or in servers) between these applications. To properly support CM tasks, we require “Quality of Service Firewalling” between different applications. This paper presents a memory management system supporting Quality of Service (QoS) within the Nemesis operating system. It combines application-level paging techniques with isolation, exposure and responsibility in a manner we call self-paging. This enables rich virtual memory usage alongside (or even within) continuous media applications. 1

