Real Time Systems: A Tutorial

In this tutorial paper, we introduce a number of issues that arise in the design of distributed real-time systems in general, and hard real-time systems in particular. These issues include time management, process scheduling, and interprocess communications within both local and wide area networks. In addition, we discuss an evaluation, based on a simulation model, of a variety of scheduling policies used in real-time systems. Finally, we examine some relevant examples of existing distributed real-time systems, describe their structuring and implementation, and compare their principal features.

[1]  Lui Sha,et al.  Sources of unbounded priority inversions in real-time systems and a comparative study of possible solutions , 1992, OPSR.

[2]  Satish K. Tripathi,et al.  Efficient synchronization of clocks in a distributed system , 1991, [1991] Proceedings Twelfth Real-Time Systems Symposium.

[3]  Karsten Schwan,et al.  CHAOS/sup art/: support for real-time atomic transactions , 1989, [1989] The Nineteenth International Symposium on Fault-Tolerant Computing. Digest of Papers.

[4]  Paulo Veríssimo,et al.  The Delta-4 approach to dependability in open distributed computing systems , 1988, [1988] The Eighteenth International Symposium on Fault-Tolerant Computing. Digest of Papers.

[5]  Karsten Schwan,et al.  CHAOS: why one cannot have only an operating system for real-time applications , 1989, OPSR.

[6]  Peter P. Puschner,et al.  Developing real-time tasks with predictable timing , 1992, IEEE Software.

[7]  Hermann Kopetz,et al.  TTP - A time-triggered protocol for fault-tolerant real-time systems , 1993, FTCS-23 The Twenty-Third International Symposium on Fault-Tolerant Computing.

[8]  Satish K. Tripathi,et al.  The MARUTI hard real-time operating system , 1989, OPSR.

[9]  Wei-Kuan Shih,et al.  Algorithms for scheduling imprecise computations , 1991, Computer.

[10]  Wei Zhao,et al.  Issues in building dynamic real-time systems , 1992, IEEE Software.

[11]  Miroslaw Malek,et al.  Keynote address K3: Responsive systems (the challenge for the nineties) , 1990, Microprocessing and Microprogramming.

[12]  John F. Meyer,et al.  Closed-Form Solutions of Performability , 1982, IEEE Transactions on Computers.

[13]  Ashok K. Agrawala,et al.  Real-time system design , 1990, McGraw-Hill Computer Science series.

[14]  Flaviu Cristian,et al.  Understanding fault-tolerant distributed systems , 1991, CACM.

[15]  J.A. Stankovic,et al.  Misconceptions about real-time computing: a serious problem for next-generation systems , 1988, Computer.

[16]  K. H. Kim,et al.  Temporal uncertainties in interactions among real-time objects , 1990, Proceedings Ninth Symposium on Reliable Distributed Systems.

[17]  Dinesh C. Verma,et al.  A Scheme for Real-Time Channel Establishment in Wide-Area Networks , 1990, IEEE J. Sel. Areas Commun..

[18]  Yechiam Yemini,et al.  Multiple-access protocols and time-constrained communication , 1984, CSUR.

[19]  James W. Layland,et al.  Scheduling Algorithms for Multiprogramming in a Hard-Real-Time Environment , 1989, JACM.

[20]  Krithi Ramamritham,et al.  Virtual Time CSMA Protocols for Hard Real-Time Communication , 1987, IEEE Transactions on Software Engineering.

[21]  Kang G. Shin,et al.  HARTOS: a distributed real-time operating system , 1989, OPSR.

[22]  Gerhard Fohler,et al.  Real-time system development: The programming model of MARS , 1993, Proceedings ISAD 93: International Symposium on Autonomous Decentralized Systems.

[23]  Wei Kuan Shih,et al.  Fast algorithms for scheduling imprecise computations , 1989, RTSS 1989.

[24]  Fabio Panzieri,et al.  Issues in the design of a real-time executive for on-board applications , 1989 .

[25]  Krithi Ramamritham,et al.  The Spring kernel: a new paradigm for real-time systems , 1991, IEEE Software.

[26]  P. M. Melliar-Smith,et al.  Synchronizing clocks in the presence of faults , 1985, JACM.

[27]  J.H. Lala,et al.  A design approach for ultrareliable real-time systems , 1991, Computer.

[28]  Krithi Ramamritham,et al.  The Spring kernel: a new paradigm for real-time operating systems , 1989, OPSR.

[29]  Hideyuki Tokuda,et al.  Evaluation of Real-Time Synchronization in Real-Time Mach , 1991, USENIX MACH Symposium.

[30]  Kishor S. Trivedi,et al.  Real-time systems performance in the presence of failures , 1991, Computer.

[31]  Karsten Schwan,et al.  Multiprocessor real-time threads , 1992, OPSR.

[32]  Keith Marzullo,et al.  Maintaining the time in a distributed system , 1983, PODC '83.

[33]  Domenico Ferrari,et al.  Design and Applications of a Delay Jitter Control Scheme for Packet-Switching Internetworks , 1991, NOSSDAV.

[34]  Robert McNaughton,et al.  Scheduling with Deadlines and Loss Functions , 1959 .

[35]  Hermann Kopetz,et al.  Distributed fault-tolerant real-time systems: the Mars approach , 1989, IEEE Micro.

[36]  Lui Sha,et al.  On Countering the Effects of Cycle-Stealing in a Hard Real-Time Environment , 1987, RTSS.

[37]  Larry L. Peterson,et al.  The x-Kernel: An Architecture for Implementing Network Protocols , 1991, IEEE Trans. Software Eng..

[38]  Kishor S. Trivedi,et al.  Performability Analysis: Measures, an Algorithm, and a Case Study , 1988, IEEE Trans. Computers.

[39]  Hermann Kopetz,et al.  Fault tolerance, principles and practice , 1990 .

[40]  Lui Sha,et al.  An Optimal Priority Inheritance Protocol for Real-Time Synchronization , 1988 .

[41]  H. Kopetz Six Difficult Problems in the Design of Responsive Systems , 1993 .

[42]  Leslie Lamport,et al.  Time, clocks, and the ordering of events in a distributed system , 1978, CACM.

[43]  Domenico Ferrari,et al.  A continuous media communication service and its implementation , 1992, [Conference Record] GLOBECOM '92 - Communications for Global Users: IEEE.

[44]  Krithi Ramamritham Channel Characteristics in Local-Area Hard Real-Tlime Systems , 1987, Comput. Networks.

[45]  Lui Sha,et al.  Exploiting unused periodic time for aperiodic service using the extended priority exchange algorithm , 1988, Proceedings. Real-Time Systems Symposium.

[46]  Sheng Cheng,et al.  Scheduling algorithms for hard real-time systems: a brief survey , 1989 .

[47]  Karsten Schwan,et al.  CHAOS-Kernel Support for Objects in the Real-Time Domain , 1987, IEEE Transactions on Computers.

[48]  Shahid H. Bokhari,et al.  A Shortest Tree Algorithm for Optimal Assignments Across Space and Time in a Distributed Processor System , 1981, IEEE Transactions on Software Engineering.

[49]  Mario J. Gonzalez Deterministic Processor Scheduling , 1977, CSUR.

[50]  Lui Sha,et al.  Solutions for Some Practical Problems in Prioritized Preemptive Scheduling , 1986, RTSS.

[51]  David Lorge Parnas,et al.  On Satisfying Timing Constraints in Hard-Real-Time Systems , 1993, IEEE Trans. Software Eng..

[52]  Hermann Kopetz,et al.  The real-time operating system of MARS , 1989, OPSR.

[53]  Hermann Kopetz,et al.  Clock Synchronization in Distributed Real-Time Systems , 1987, IEEE Transactions on Computers.

[54]  Kang G. Shin HARTS: A Distributed Real-Time Architecture , 1991, Computer.