Publisher's Synopsis
This new text presents a text on real-time software development focusing on practical engineering aspects of software construction through the entire life cycle. The text is practical enough to be accepted and used by engineers. It is rigorous enough to satisfy academics. The text would address the concepts relevant to development of real-time software allowing for a smooth transition from system specification to design to implementation. The book focuses on the software implementation including specific programming concepts of real-time software. Programming constructs dealing with timing, concurrency, synchronization, communication, and interrupt handling are significant parts of the work. The text is designed to be generic enough to be used in any environment, but the specific examples will be based on the authors' experiences with soft real-time on various POSIX compliant native systems (with a focus on LINUX) and hard real-time on VxWorks targets in host-target environments. The programming examples are using C/C++ and Ada to introduce the real-time concepts. The text is designed using a bottom-up paradigm introducing the real-time programming concepts and principles first, before applying them in the organized software project. The front-end phase of software development shall present two major development methodologies (structured and object oriented). Selected concepts of performance analysis for real-time systems are introduced to facilitate the software development rather than to explore at length the mathematics of scheduling theory. Essential text/reference for advanced students, practitioners and professionals in software engineering.