Embedded Software Development: The Open-Source Approach delivers a practical introduction to embedded software development, with a focus on open-source components. This programmer-centric book is written in a way that enables even novice practitioners to grasp the development process as a whole.
Incorporating real code fragments and explicit, real-world open-source operating system references (in particular, FreeRTOS) throughout, the text:
- Defines the role and purpose of embedded systems, describing their internal structure and interfacing with software development tools
- Examines the inner workings of the GNU compiler collection (GCC)-based software development system or, in other words, toolchain
- Presents software execution models that can be adopted profitably to model and express concurrency
- Addresses the basic nomenclature, models, and concepts related to task-based scheduling algorithms
- Shows how an open-source protocol stack can be integrated in an embedded system and interfaced with other software components
- Analyzes the main components of the FreeRTOS Application Programming Interface (API), detailing the implementation of key operating system concepts
- Discusses advanced topics such as formal verification, model checking, runtime checks, memory corruption, security, and dependability
Embedded Software Development: The Open-Source Approach capitalizes on the authors' extensive research on real-time operating systems and communications used in embedded applications, often carried out in strict cooperation with industry. Thus, the book serves as a springboard for further research.