Real-Time Systems Development introduces computing students and professional programmers to the development of software for real-time applications. Based on the academic and commercial experience of the author, the book is an ideal companion to final year undergraduate options or MSc modules in the area of real-time systems design and implementation. Assuming a certain level of general systems design and programming experience, this text will extend students' knowledge and skills into an area of computing which has increasing relevance in a modern world of telecommunications and 'intelligent' equipment using embedded microcontrollers.
This book takes a broad, practical approach in discussing real-time systems. It covers topics such as basic input and output; cyclic executives for bare hardware; finite state machines; task communication and synchronization; input/output interfaces; structured design for real-time systems; designing for multitasking; UML for real-time systems; object oriented approach to real-time systems; selecting languages for RTS development; Linux device drivers; and hardware/software co-design. Programming examples using GNU/Linux are included, along with a supporting website containing slides; solutions to problems; and software examples.
This book will appeal to advanced undergraduate Computer Science students; MSc students; and, undergraduate software engineering and electronic engineering students.* Concise treatment delivers material in manageable sections
* Includes handy glossary, references and practical exercises based on familiar scenarios
* Supporting website contains slides, solutions to problems and software examples
Design Tool; Finite State Machines
Implementation Options; Why Multitask?; Task Communication and Synchronization; Real-time Executives; Input / Output Interfaces; Structured Design for Real-time Systems; Designing for Multitasking; UML for Real-time Systems; Object Oriented Approach to Real-time Systems; System Integrity; Selecting Languages for RTS Development
C, Ada & Java; Cross Development Techniques; Microcontroller Embedded Systems; Linux Device Drivers; Hardware / Software Co-design; Appendix A. Software Debugging with an Oscilloscope; Solutions and Discussion of Example Problems; Glossary; Index