ECE & BAS Magazine September/October 2014 - page 47

October 2014
47
T
OOLS
& S
OFTWARE
features or system services are required, then
they can be added and activated later. Alterna-
tive approaches might be to add small libraries
providing similar functions like a full system
service solution. Why carry a full OpenSSL
if only a MD5 is needed, which can be pro-
vided by small library. The system start of a
Linux system depends on the applied Linux
distribution, e.g. LTIB, Debian or ELDK. For
optimizations of the startup sequence, spe-
cial knowledge of the methods used by the
selected distribution is needed. There are
many startup methods available, for example,
SysV-init, BSD-init, busybox, launchd, runit,
systemd, upstart, just to name a few.
Totally different approaches are used in small
and clearly defined real-time operating sys-
tems like Microware OS-9, QNX, VxWorks
and others. Here, a special kernel is used
exactly for the chosen CPU. The operating sys-
tem functions for components like the MMU,
cache, interrupt and exception handling etc.
are precisely adapted and are open for opti-
mizations. The hardware functions can be
tuned with software drivers exactly to match
the required timings. Only the pre-planned
and desired function is integrated into the
operating system to avoid all time-consuming,
unnecessary and redundant program code.
Such a clearly defined system is much smaller
and starts faster by factors than a full blown
all inclusive system. Thus, real-time operating
systems have, due to their slimness, configu-
rability and clearness, the capability to provide
the fastest startup times compared to stan-
dard operating systems. Embedded RTOSs
offer the beauty that one need not to be a
dedicated expert to understand the function-
ality of each single element in the operating
system, its internal assignments and depen-
dencies. A RTOS like e.g. OS-9 is based on a
clear architecture with a modular process and
thread structure that is fully understandable
by a developer and accordingly manageable.
For example, modules like kernel, pcf, epi-
cirq or sppro1000e are exactly defined in their
function and do exist apart from each other.
That means they can be loaded and added on
demand to support system optimizations. The
naming convention helps to understand the
function of program modules and thus adds
to the clarity of the system architecture. This
results in a system structure whereby only
required program functions are selected and
in use. This approach is straight forward, com-
prehensive and much easier to validate and
test. In contrast, the reverse process applied
for standard operating systems, to remove
functions to optimize, possibly with a trial and
error method, implies many risks, especially
due to unknown or damaged system depen-
dencies. If we are talking about real or deeply
embedded systems, then the boot medium
Table 1. Comparison of different storage media influencing system startup times
SD/μSD CF-Card
NOR Flash
NAND Flash
1...,37,38,39,40,41,42,43,44,45,46 48,49,50,51,52,53,54,55,56
Powered by FlippingBook