Image Processing Reference
In-Depth Information
OSEKtime FTCom : OSEKtime FTCom is the fault-tolerant communication layer accompanying
OSEKtime OS.
To minimize the memory footprint as well as the required central processing unit (CPU) time,
each of these components is configured upon design time via a configuration file in OSEK imple-
mentation language syntax []. Using a generation tool, the appropriate data structures in the used
programminglanguagearecreatedbasedonthisconigurationile.hus,noneofthecomponents
provides services for dynamic resource allocation (like task creation, memory allocation, and so on).
In the following, each of the listed OSEK/VDX components is described briefly.
18.3.1 OSEK OS
OSEK OS [] is an “event-driven single chip real-time operating system,” which is statically con-
figured (as far as available tasks, used resources, etc.) and thus does not provide dynamic resource
allocation. The OS itself defines three different processing levels: “interrupt level,” “logical level”
for the scheduler itself, and “task level”. For the task scheduling, OSEK OS uses a “priority-based
scheduling” strategy. Based on the OS configuration, this scheduling strategy is either “preemptive
or non-preemptive.” he main OS entities of execution are tasks in OSEK OS. Hereby, OSEK OS dis-
tinguishes between “basic tasks” (which do not use any blocking interprocess communication (IPC)
constructs) and “extended tasks” (which are allowed to use blocking IPC constructs). The second
entity of execution in OSEK OS are “ISRs.” OSEK OS distinguishes between category  and category 
ISRs. Whereas the former are not allowed to call operating system services, the latter are allowed to
do so. Depending on the chosen scheduling strategy, an OSEK OS task can be in one of the states
depicted in Figure ..
Hereby, Figure .a illustrates the task states for the extended task model (which exhibits an
additional Waiting state), whereas Figure .b depicts the tasks states for basic task model. Syn-
chronization between extended tasks in OSEK OS is performed via “events.” In case extended tasks
can wait for an event, they remain in a Waiting task state until the event is set by some other
extended task. Mutual exclusion between extended tasks is performed by means of “resources.” To
prevent deadlocks and priority inversion, OSEK OS implements the “priority ceiling protocol” []
for resources. Communication between tasks in OSEK OS is performed by means of “messages.” A
detailed description of the OSEK communication primitives is provided in the section on OSEK
COM (Section ..). For cyclic operations, OSEK OS provides the OS entities “counters” and
Suspended
Activate
Terminate
Start
Preempt
Suspended
Ready
Running
Activate
Terminate
Release
Wait
Start
Preempt
Ready
Running
Waiting
(a)
(b)
FIGURE .
OSEK OS task states.
Search WWH ::




Custom Search