Title :
A proportional share resource allocation algorithm for real-time, time-shared systems
Author :
Stoica, Ion ; Abdel-Wahab, Hussein ; Jeffay, Kevin ; Baruah, Sanjoy K. ; Gehrke, Johannes E. ; Plaxton, C. Greg
Author_Institution :
Dept. of Comput. Sci., Wisconsin Univ., Madison, WI, USA
Abstract :
We propose and analyze a proportional share resource allocation algorithm for realizing real-time performance in time-shared operating systems. Processes are assigned a weight which determines a share (percentage) of the resource they are to receive. The resource is then allocated in discrete-sized time quanta in such a manner that each process makes progress at a precise, uniform rate. Proportional share allocation algorithms are of interest because: they provide a natural means of seamlessly integrating real and non-real-time processing; they are easy to implement; they provide a simple and effective means of precisely controlling the real-time performance of a process; and they provide a natural means of policing so that processes that use more of a resource than they request have no ill-effect on well-behaved processes. We analyze our algorithm in the context of an idealized system in which a resource is assumed to be granted in arbitrarily small intervals of time and show that our algorithm guarantees that the difference between the service time that a process should receive and the service time it actually receives is optimally bounded by the size of a time quantum. In addition, the algorithm provides support for dynamic operations, such as processes joining or leaving the competition, and for both fractional and non-uniform time quanta. As a proof of concept we have implemented a prototype of a CPU scheduler under FreeBSD. The experimental results shows that our implementation performs within the theoretical bounds and hence supports real-time execution in a general purpose operating system
Keywords :
operating systems (computers); real-time systems; resource allocation; scheduling; software performance evaluation; time-sharing programs; CPU scheduler; FreeBSD; dynamic operations; general purpose operating system; idealized system; optimally bounded; proportional share resource allocation algorithm; real-time performance; real-time system; service time; time-shared operating systems; Algorithm design and analysis; Collaboration; Context-aware services; Operating systems; Processor scheduling; Proportional control; Prototypes; Real time systems; Resource management; Teleconferencing;
Conference_Titel :
Real-Time Systems Symposium, 1996., 17th IEEE
Conference_Location :
Los Alamitos, CA
Print_ISBN :
0-8186-7689-2
DOI :
10.1109/REAL.1996.563725