EmbeddedRelated.com
Books
The 2026 Embedded Online Conference

Embedded and Real-Time Operating Systems

Wang, K.C. 2017

This book covers the basic concepts and principles of operating systems, showing how to apply them to the design and implementation of complete operating systems for embedded and real-time systems. It includes all the foundational and background information on ARM architecture, ARM instructions and programming, toolchain for developing programs, virtual machines for software implementation and testing, program execution image, function call conventions, run-time stack usage and link C programs with assembly code.

It describes the design and implementation of a complete OS for embedded systems in incremental steps, explaining the design principles and implementation techniques. For Symmetric Multiprocessing (SMP) embedded systems, the author examines the ARM MPcore processors, which include the SCU and GIC for interrupts routing and interprocessor communication and synchronization by Software Generated Interrupts (SGIs).
<
Throughout the book, complete working sample systems demonstrate the design principles and implementation techniques. The content is suitable for advanced-level and graduate students working in software engineering, programming, and systems theory.


Why Read This Book

You will get a hands‑on, systems‑level walkthrough of how operating system concepts map to real embedded and real‑time devices, with concrete examples on ARM and a virtual machine for safe experimentation. The book emphasizes implementation: you’ll learn how to build kernel services incrementally, link C with assembly, work the toolchain, and extend concepts to SMP embedded platforms.

Who Will Benefit

Engineers and senior students who write firmware or develop kernels and want to move from OS theory to implementing real embedded/real‑time operating systems on ARM‑class hardware.

Level: Advanced — Prerequisites: Comfortable C programming, basic data structures and algorithms, familiarity with computer architecture and assembly language concepts, and experience building/debugging embedded code with a cross toolchain.

Get This Book

Key Takeaways

  • Implement a minimal embedded OS kernel including context switching, task management, and inter‑task synchronization.
  • Design and reason about real‑time scheduling policies and apply priority/latency techniques appropriate for hard/soft real‑time systems.
  • Use the cross compilation toolchain, create program images, and link C code with assembly following calling conventions and stack usage rules.
  • Develop, test, and debug OS code using virtual machines/emulators and understand practical methods for firmware testing.
  • Apply SMP concepts and design considerations to multicore embedded systems, including synchronization and memory considerations.

Topics Covered

  1. 1. Introduction to Operating Systems and Real‑Time Concepts
  2. 2. ARM Architecture Overview and Instruction Set
  3. 3. Toolchain, Assemblers, Linkers, and Program Image Layout
  4. 4. Calling Conventions, Stack Usage, and Linking C with Assembly
  5. 5. CPU Modes, Exceptions, and Interrupt Handling
  6. 6. Task Management and Context Switching
  7. 7. Scheduling Algorithms for Real‑Time Systems
  8. 8. Interprocess Communication and Synchronization Primitives
  9. 9. Memory Organization and Management for Embedded Systems
  10. 10. Designing and Building a Simple Embedded OS (step‑by‑step)
  11. 11. SMP Issues for Embedded Multicore Systems
  12. 12. Virtual Machines and Emulation for OS Development and Testing
  13. 13. Case Studies, Examples, and Appendices (tools, reference tables)

Languages, Platforms & Tools

CARM assemblyARM family (ARMv6/ARMv7/Cortex variants)Embedded multicore/SMP systemsGeneric embedded microcontroller platformsGNU toolchain (gcc, as, ld, binutils)GDB (debugger)QEMU or the book’s custom virtual machine/emulatormake/build systemsobjdump/objcopy

How It Compares

Covers similar hands‑on OS implementation ground as Jonathan Valvano’s ARM RTOS books but places more emphasis on OS internals, toolchain/linking mechanics, and stepwise kernel construction; complements Labrosse’s MicroC/OS titles, which focus more on a specific commercial RTOS.

Related Books

The 2026 Embedded Online Conference