[Book Cover]

Introduction to Real-Time Systems: From Design to Networking with C/C++, 1/e

Raymond A. Buhr, Carleton University
Donald L. Bailey, Carleton University

Published August, 1998 by Prentice Hall Engineering/Science/Mathematics

Copyright 1999, 350 pp.
Cloth
ISBN 0-13-606070-6


Sign up for future
mailings
on this subject.

See other books about:
    Real Time Systems-Computer Science

    Real Time Systems-Electrical Engineering


More Info


Summary

Appropriate for a first course in Real-Time System Design and Programming for junior/senior-level courses in Computer Science and Electrical Engineering. This text introduces the nature of real-time, concurrent, distributed systems, presenting a specific set of techniques for designing and implementing such systems. It develops a “systems way of thinking” about software that is intended to serve readers throughout their careers.

Features


Explains how to program interrupt-driven, concurrent, distributed systems that are complex enough to be interesting.
Develops a deep understanding of how these systems function by working with a minimal software infrastructure—a subset of C++ and a small real-time kernel—that keeps all software elements directly under readers' control, without any confusing intervening software layers.
Complete source code for all example problems, the Message Transfer Utility (a case study in real-time system design and implementation), and the Tempo real-time kernel is available over the World Wide Web.
Helps readers build their own distributed applications, controlling all hardware and software elements themselves through I/O devices controlled by their own program.
Teaches readers to design into their own programs the ability to keep running in the presence of events and failures that occur in the environment of the distributed application at unpredictable times.
Trains readers to reason from application requirements for concurrency and failure detection/recovery to process architectures that will realize them, using a diagramming technique called “use case maps” that stands back from the details of code.
Explains how to translate the process architectures into IPC (Interprocess Communication) structures, such as coupled pipelines, using a diagramming technique called “collaboration graphs” that is closer to code, but still stands back from its details.
Develops an understanding of how diagramming techniques that stand back from code help to save work further down the development process (where mistakes cost more), in exchange for doing more work earlier in the development process.
Explains the relationship between system issues and programs to help readers feel comfortable working with systems that have many layers of support software and with design models and tools that are distant from code.


Table of Contents

    1. A Systems View of Real-Time Software.
    2. Programming with the Tempo Kernel: Concurrent Processes.
    3. Programming with the Tempo Kernel: Processing Real-Time Events.
    4. Programming with the Tempo Kernel: Advanced IPC.
    5. Basic Design Notations.
    6. Design Case Study: Message Transfer Utility (MTU).
    7. Design Case Study: Refining the MTU.
    8. Implementation Case Study: Programming the MTU.
    9. Structurally Dynamic Systems.
    10. A Look Inside the Tempo Kernel.
    11. Perspectives on Issues.
    Appendix A: Tempo Reference Manual.
    Appendix B: Collaboration Graph Reference Manual.
    Appendix C: Programming Interrupt Controllers and UARTs.
    Appendix D: Reading List and Bibliography.
    Index.


[Help]

© Prentice-Hall, Inc. A Simon & Schuster Company
Comments To webmaster@prenhall.com