Operating System Performance Metrics
In software processing, systems are subdivided into processes, tasks, or threads. Examples
of well-established operating systems used, for example, to control the protocol
stack in a cellular phone are the OS9 operating system from Microware (now RadiSys).
However, as we discussed in an earlier chapter, we might also have an RTOS for the
DSP, a separate RTOS for the microcontroller, an RTOS for memory management, as
well as an RTOS for the protocol stack and man-machine interface (MMI) (which may
or may not be the same as the microcontroller RTOS). These various standalone processors
influence each other and need to talk to each other. They communicate via mailboxes,
semaphores, event flags, pipes, and alarms.
Performance metrics in an operating system include the following:
Context switching. The time taken to save the context of one task (registers and
stack pointers) and load the context of another task
Interrupt latency. The amount of time between an interrupt being flagged and
the first line of the code being produced (in response to the interrupt), including
completion of the initial instruction
As a rule of thumb, if an OS is ROM-based, the OS is generally more compact, less
vulnerable to virus infection, and more efficient (and probably more predictable). Psion
EPOC, the basis for Symbian products, is an example. The cost is flexibility, which
means, the better the real-time performance, the less flexible the OS will be. Response
times of an RTOS should generally be better than (that is, less than) 50 μs.
329 times read