Real-Time Concepts for Embedded Systems

Paperback
from $0.00

Author: Qing Li

ISBN-10: 1578201241

ISBN-13: 9781578201242

Category: Computer Hardware - General

'... a very good balance between the theory and practice of real-time embedded system designs.' —Jun-ichiro itojun Hagino, Ph.D., Research Laboratory, Internet Initiative Japan Inc., IETF IPv6 Operations Working Group (v6ops) co-chair 'A cl\ Develop a working understanding of the common design patterns and program structures of RTOSs so you can create your own standard building blocks. You learn how to decompose an application into units, and how to combine these units with other objects and...

Search in google:

'... a very good balance between the theory and practice of real-time embedded system designs.' —Jun-ichiro itojun Hagino, Ph.D., Research Laboratory, Internet Initiative Japan Inc., IETF IPv6 Operations Working Group (v6ops) co-chair 'A clDevelop a working understanding of the common design patterns and program structures of RTOSs so you can create your own standard building blocks. You learn how to decompose an application into units, and how to combine these units with other objects and services to create standard building blocks.

ForewordIXPrefaceXIAudience for this BookxiiAcknowledgmentsxiiChapter 1Introduction11.1Real Life Examples of Embedded Systems21.2Real-Time Embedded Systems101.3The Future of Embedded Systems161.4Points to Remember17Chapter 2Basics of Developing for Embedded Systems192.1Introduction192.2Overview of Linkers and the Linking Process202.3Executable and Linking Format232.4Mapping Executable Images into Target Embedded Systems272.5Points to Remember34Chapter 3Embedded System Initialization353.1Introduction353.2Target System Tools and Image Transfer363.3Target Boot Scenarios393.4Target System Software Initialization Sequence463.5On-Chip Debugging513.6Points to Remember52Chapter 4Introduction to Real-Time Operating Systems534.1Introduction534.2A Brief History of Operating Systems544.3Defining an RTOS554.4The Scheduler574.5Objects614.6Services624.7Key Characteristics of an RTOS624.8Points to Remember64Chapter 5Tasks655.1Introduction655.2Defining a Task655.3Task States and Scheduling675.4Typical Task Operations725.5Typical Task Structure765.6Synchronization, Communication, and Concurrency775.7Points to Remember77Chapter 6Semaphores796.1Introduction796.2Defining Semaphores796.3Typical Semaphore Operations846.4Typical Semaphore Use876.5Points to Remember95Chapter 7Message Queues977.1Introduction977.2Defining Message Queues977.3Message Queue States997.4Message Queue Content1007.5Message Queue Storage1017.6Typical Message Queue Operations1017.7Typical Message Queue Use1057.8Points to Remember110Chapter 8Other Kernel Objects1118.1Introduction1118.2Pipes1118.3Event Registers1188.4Signals1218.5Condition Variables1268.6Points to Remember130Chapter 9Other RTOS Services1339.1Introduction1339.2Other Building Blocks1339.3Component Configuration1399.4Points to Remember141Chapter 10Exceptions and Interrupts14310.1Introduction14310.2What are Exceptions and Interrupts?14410.3Applications of Exceptions and Interrupts14510.4A Closer Look at Exceptions and Interrupts14610.5Processing General Exceptions15010.6The Nature of Spurious Interrupts16310.7Points to Remember165Chapter 11Timer and Timer Services16711.1Introduction16711.2Real-Time Clocks and System Clocks16811.3Programmable Interval Timers16911.4Timer Interrupt Service Routines17111.5A Model for Implementing the Soft-Timer Handling Facility17111.6Timing Wheels17611.7Soft Timers and Timer Related Operations18211.8Points to Remember185Chapter 12I/O Subsystem18712.1Introduction18712.2Basic I/O Concepts18812.3The I/O Subsystem19212.4Points to Remember197Chapter 13Memory Management19913.1Introduction19913.2Dynamic Memory Allocation in Embedded Systems20013.3Fixed-Size Memory Management in Embedded Systems20813.4Blocking vs. Non-Blocking Memory Functions20913.5Hardware Memory Management Units21113.6Points to Remember212Chapter 14Modularizing an Application for Concurrency21314.1Introduction21314.2An Outside-In Approach to Decomposing Applications21414.3Guidelines and Recommendations for Identifying Concurrency21714.4Schedulability Analysis--Rate Monotonic Analysis22514.5Points to Remember229Chapter 15Synchronization and Communication23115.1Introduction23115.2Synchronization23115.3Communication23615.4Resource Synchronization Methods23815.5Critical Section Revisited24015.6Common Practical Design Patterns24115.7Specific Solution Design Patterns24715.8Points to Remember258Chapter 16Common Design Problems25916.1Introduction25916.2Resource Classification26016.3Deadlocks26016.4Priority Inversion27316.5Points to Remember280Appendix AReferences281About the Authors285Index287