Slotted priorities: supporting real-time computing within general-purpose operating systems

Slotted Priorities: Supporting Real-Time Computing Within General-Purpose Operating Systems Recent advances in network technologies, processor capabilities, and microcomputer system hardware, coupled with the explosive growth of the Internet and on-line data access, have created new demands on personal computer operating systems and hardware. In large part, these demands are for the ability to acquire, manipulate, display, and store multimedia data. The computational processes that successfully acquire and display multimedia data necessarily have deadlines. That is, the computation must be complete before a speci ed point in time. Currently, no general-purpose operating systems support such real-time processes. We have developed a software architecture, called slotted priorities, that de nes a way to add support for real-time computation to existing general-purpose operating systems for uniprocessor machine architectures. The slotted priorities architecture shares the resources of a computing system between a general-purpose operating system and a real-time kernel. Software components called executives manage how an instance of a resource is shared. Executives ensure that the RTK can gain access to the resource at precise times. The resulting operating system will be able

[1]  Hussein M. Abdel-Wahab,et al.  A proportional share resource allocation algorithm for real-time, time-shared systems , 1996, 17th IEEE Real-Time Systems Symposium.

[2]  Ramesh Govindan,et al.  Scheduling and IPC mechanisms for continuous media , 1991, SOSP '91.

[3]  V. Rich Personal communication , 1989, Nature.

[4]  Chung Laung Liu,et al.  Scheduling Algorithms for Multiprogramming in a Hard-Real-Time Environment , 1989, JACM.

[5]  William E. Weihl,et al.  Lottery scheduling: flexible proportional-share resource management , 1994, OSDI '94.

[6]  Dawson R. Engler,et al.  Exokernel: an operating system architecture for application-level resource management , 1995, SOSP.

[7]  Bill Carpenter,et al.  The RTX real-time subsystem for windows NT , 1997 .

[8]  Mike Hibler,et al.  Microkernels meet recursive virtual machines , 1996, OSDI '96.

[9]  Lui Sha,et al.  Priority Inheritance Protocols: An Approach to Real-Time Synchronization , 1990, IEEE Trans. Computers.

[10]  Stefan Savage,et al.  Processor Capacity Reserves for Multimedia Operating Systems , 1993 .

[11]  David S. Johnson,et al.  Computers and In stractability: A Guide to the Theory of NP-Completeness. W. H Freeman, San Fran , 1979 .

[12]  Harvey M. Deitel,et al.  The design of OS/2 , 1992 .

[13]  Mark Moir,et al.  Real-time object sharing with minimal system support , 1996, PODC '96.

[14]  Theodore P. Baker,et al.  The cyclic executive model and Ada , 2006, Real-Time Systems.

[15]  Michael B. Jones,et al.  Support for User-Centric Modular Real-Time Resource Management in the Rialto Operating System , 1995, NOSSDAV.

[16]  Peter J. Denning,et al.  The working set model for program behavior , 1968, CACM.

[17]  J. Duane Northcutt,et al.  SVR4UNIX Scheduler Unacceptable for Multimedia Applications , 1993, NOSSDAV.

[18]  Michael B. Jones,et al.  Adaptive Real-Time Resource Management Supporting Modular Composition of Digital Multimedia Services , 1993, NOSSDAV.

[19]  Hideyuki Tokuda,et al.  Real-Time Mach: Towards a Predictable Real-Time System , 1990, USENIX MACH Symposium.

[20]  Brian N. Bershad,et al.  Dynamic binding for an extensible system , 1996, OSDI '96.

[21]  Alan C. Shaw,et al.  Reasoning About Time in Higher-Level Language Software , 1989, IEEE Trans. Software Eng..

[22]  Jason Nieh,et al.  Integrated Processors Scheduling for Multimedia , 1995, NOSSDAV.

[23]  Kevin Jeffay,et al.  A Rate-Based Execution Abstraction for Multimedia Computing , 1995, NOSSDAV.