Hardware Reference
In-Depth Information
Kernel Awareness . The OSEK standard supports a standard OSEK Run Time
Interface (ORTI) used to instruct a debugger about the meaning of specific data
structures, so that specific information can be visualized on the screen in the
proper way. For example, when tracing the running task, it is possible to visualize
the corresponding task identifier, as well as the time at which context switches
take place.
Support for Time Triggered Architectures . The OSEK Standard provides the
specification of OSEKTime OS, a time-triggered operating system that can be
fully integrated in the OSEK/VDX framework.
DETAILS ON THE OSEK/VDX STANDARD
The first feature that distinguishes an OSEK kernel from other operating systems is
that all kernel objects are statically defined at compile time. In particular, most of
these systems do not support dynamic memory allocation and dynamic tasks creation.
To help the user in configuring the system, the OSEK/VDX standard defines an OSEK
Implementation Language" (OIL) to specify the objects that must be instantiated in
the application. When the application is compiled, the OIL Compiler generates the
operating system data structures, allocating the exact amount of memory needed by
the application, to be put in flash memory (which is less expensive than RAM memory
on most microcontrollers).
The second feature distinguishing an OSEK/VDX system is the support for Stack
Sharing . The reason for providing stack sharing is to save RAM memory, which is
very expensive on small microcontrollers. The possibility of implementing a stack
sharing system is related to how the task code is written. In traditional real-time sys-
tems, a periodic task is structured according to the following scheme:
Task(x) {
int local;
initialization();
for (;;) {
do instance();
end instance();
}
}
Search WWH ::




Custom Search