ABSTRACT

This chapter reviews some of the essential concepts and definitions used in embedded systems. Most embedded real-time systems use a priority system as a means of establishing the relative importance of threads in the system. There are two classes of priorities: static and dynamic. A static priority is one that is assigned when a thread is created and remains constant throughout execution. A dynamic priority is one that is assigned when a thread is created, but can be changed at any time during execution. Many Real-time operating system (RTOS) vendors claim their systems are deterministic and justify that assertion by publishing tables of minimum, average, and maximum number of clock cycles required for each system call. A kernel is a minimal implementation of an RTOS. It normally consists of at least a scheduler and a context switch handler. Most modem commercial RTOSes are actually kernels, rather than full-blown operating systems.