Hoboken: Wiley, 2017. — 319 p.
Introduction to Real-Time Embedded Systems
Real-Time Embedded Systems
Example: Automobile Anti-Lock Braking System
Real-Time Embedded System Characteristics
Hard and Soft of Real-Time Embedded Systems
Exercises
Suggestions for Reading
Hardware Components
Processors
Memory and Cache
I/O Interfaces
Sensors and Actuators
Timers and Counters
Exercises
Suggestions for Reading
Real-time Operating Systems
Main Functions of General Purpose Operating Systems
Characteristics of RTOS Kernels
RTOS Examples
Exercises
Suggestions for Reading
Task Scheduling
Tasks
Clock-Driven Scheduling
Round-Robin Approach
Priority-Driven Scheduling Algorithms
Task Assignment
Exercises
Suggestions for Reading
Resource Sharing and Access Control
Resource Sharing
Non-preemptive Critical Section Protocol
Priority Inheritance Protocol
Priority Ceiling Protocol
Stack-Sharing Priority-Ceiling Protocol
Exercises
Suggestion for Reading
Concurrent Programming
POSIX Threads
Synchronization Primitives
Communication among Tasks
Real-Time Facilities
Exercises
Suggestions for Reading
Finite-State Machines
Finite State Machine Basics
Deterministic Finite Automation (DFA)
Non-Deterministic Finite Automation
Programming Finite State Machines
Exercises
Suggestions for Reading
UML State Machines
States
Transitions
Events
Composite States
Pseudostates
UML State Machine of Anti-Lock Braking System
Exercises
Suggestions for Reading
Timed Petri Nets
Petri Net Definition
Petri Net Properties
Timed Petri Nets
Exercises
Suggestions for Reading
Model Checking
Introduction to Model Checking
Temporal logic
The NuSMV Model Checking Tool
Real-Time Computation Tree Logic
Example: The Ferryman Puzzle
Exercises
Suggestions for Reading
Practical issues
Software Reliability
Software Aging and Rejuvenation
Security
Safety
Power Conservation
Suggestions for Reading