• DocumentCode
    3114675
  • 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
  • fYear
    1996
  • fDate
    4-6 Dec 1996
  • Firstpage
    288
  • Lastpage
    299
  • 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;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Real-Time Systems Symposium, 1996., 17th IEEE
  • Conference_Location
    Los Alamitos, CA
  • ISSN
    1052-8725
  • Print_ISBN
    0-8186-7689-2
  • Type

    conf

  • DOI
    10.1109/REAL.1996.563725
  • Filename
    563725