
100
Chapter 8
In this chapter:
• History and Purpose
• A Decent Embedded
Operating System
• Real-Time
Characteristics
• Selection Process
8
Operating Systems 8.
o•s•o•pho•bi•a n. A common fear among embedded systems programmers.
All but the most trivial of embedded programs will benefit from the inclusion of an
operating system. This can range from a small kernel written by you to a full-
featured commercial operating system. Either way, you’ll need to know what fea-
tures are the most important and how their implementation will affect the rest of
your software. At the very least, you need to understand what an embedded oper-
ating system looks like on the outside. But there’s probably no better way to
understand the exterior interfaces than to examine a small operating system in its
entirety. So that’s what we’ll do in this chapter.
History and Purpose
In the early days of computing there was no such thing as an operating system.
Application programmers were completely responsible for controlling and moni-
toring the state of the processor and other hardware. In fact, the purpose of the
first operating systems was to provide a virtual hardware platform that made appli-
cation programs easier to write. To accomplish this goal, operating system devel-
opers needed only provide a loose collection of routines—much like a modern
software library—for resetting the hardware to a known state, reading the state ...