4
Real-Time Operating Systems: An Ongoing Review Ramesh Y erraballi Dept. of Comput er Science and Engine ering University of Texas at Arlington Abstract  Re al- time operating sys tems hav e evolved ove r the years  fr om being simple exec utive s usin g cycli c sche dulin g to the current feature-rich operating environments. The stan- dardization of POSIX 1003.1, ISO/IEC 9945-1 (real-time extensions to POSIX) has contributed signicantly to this evolution, however, the specication leaves plenty of room  for individual implementations to both interpret and spe- cialize their RTOSs. Accor dingly , ther e has been a pr o- liferation of both commercial and free RTOSs, notably, the  ITRON OS, the OSEK-VDX OS specication, commercial  RTOSs like VxWorks, VRTX, LynxOS, OSE and QNX, and  free RTOSs like RT-Linux (RTAI), and Windows CE.The goal of the work reported in this paper is to draw the real-time systems practitioner and researcher’s attention to these choices and bring out the similarities and differ- ences among them. W ork is underway to, inst all, test and benchmark the aforementioned OSs to draw a more objec- tive assessment. 1 Intr oduc ti on The prima ry role of an operat ing syst em (OS) is to man- age resources so as to meet the demands of target applica- tions. Traditional timesharing operating systems target ap- plication environments, that demand fairness and high re- source utilization. Rea l- time appli cat ions on the other hand demand timeliness and predictability , and the operating systems targeting these applications meet these demands by paying special attention to a host of OS features like: (i) Multitasking (ii) Synchronization (iii) Interrupt and Event Handling (iv) Input/Output (v) Inter-task Communication (vi) Timers and Clocks (vii) Memory Management. The design of a real-time operating system (RTOS) is essentially a balance between providing a reasonably rich featu re set for appli catio n deve lopment and deplo yment and, not sacr ici ng predicta bilit y and time lines s. In ad- diti on to time line ss and predi ctabi lity some other desir- able chara cter isti cs ha ve been ident ied in the var ious stan- dards [10, 7, 6] specic ations. In this paper , we attemp t to demonstrate that the various RTOSs implementing these stan dards , dif fer in their impl ement ation choic es and strate- gies. This demonstrati on should allo w a pract itioner to choose the right RTOS for a particular application. The specic real-time operating systems that are con- sidered in this paper are: LynxOS: A UNIX-compa tible , POSIX-conformant real-time operating system for embed- ded applicat ions from Lynx Real- Time Syst ems Inc. It is scalable, fully re-entrant, preemptible, and ROMable [2]. ITRON: An open RTOS specication for embedded sys- tems resulting from the TRON ( he eal-Time perating System ucleus) project. Participant companies that have imple mente d the speci cati on inclu de, Fujit su, Hita chi, Mitsubhishi, Miyazaki, Morson, Erg Co., Firmware Sys- tems, NEC, Sony Corp., Three Ace Computer Corp., and Toshiba [10]. OSE: A commercia l RTOS from Enea Data Systems that boa sts to ha ve bri dge d the gap bet wee n app lic ati ons and the kernel by providing a rich set of features inside the kernel. It’s mess age based architecture allows for efcient I PC and synchronization [5]. OSEK-VDX: The “Open Syst ems in Aut omoti ve Net- works” RTOS specication that has been adopted by the following organizations in their embedded systems: Adam Opel AG, BMW AG,DaimlerChrysler AG, University of Karlsruhe - IIIT, PSA, Renault SA, Robert Bosch GmbH, Siemens AG, Volkswagen AG [6]. QNX: A real-time, extensible POSIX compliant OS with a lean micro-kernel and a team of optional cooperating pro- cesses. [9]. RTAI: It evo lved from NMT RTLinux (Ne w Mexic o Inst i- tute of Technology’ s Real-Time Linux), and take s a unique approach of running Linux as a task (lowest priority) that competes with other real-time tasks for the CPU [3]. VRTX: A highly reliable RTOS from Mentor Graphics that is the rst to be certied under the US FAA’s strin- gent RTCA/DO-178B level A standard for mission-critical aerospace systems. It is based on a Nanokernel running on top of a Hardware Abstraction Layer to provide fast and predictable response [11]. VxWorks: The most popul ar (and compl ete) comme rcial RTOS (from Wind River Systems) in the embedded indus- try with ports for virtually all CPUs in the market [12]. Windows CE: Micr osoft s embed ded operat ing syst em for handhel d PCs and small embedded pro cessors. Though it’ s cur rent ver si on (2.0 ) does not rea lly quali fy as an RTOS, both feature-wis e and performance-wise, Microsoft promises to x these shortcomings in version 3.0 [13]. The abo ve lis t is in no wayexhaus ti ve but is a rea son able subset of more than 50 commercial, academic (research- based ) and free RT OSs currentl y availa ble. We hav e not inclu ded sev eral excel lent acade mic RTOSs which hav e been very well re vie wed in [4]. Furth er, we only picked one of several (Lineo, ecos, Lynx Bluecat etc.) new RTOS derivatives of the Linux operating system. We refer to the

Real-Time Operating Systems an Ongoing Review

Embed Size (px)

Citation preview

8/2/2019 Real-Time Operating Systems an Ongoing Review

http://slidepdf.com/reader/full/real-time-operating-systems-an-ongoing-review 1/4

Real-Time Operating Systems: An Ongoing Review

Ramesh Yerraballi

Dept. of Computer Science and Engineering

University of Texas at Arlington

Abstract

 Real-time operating systems have evolved over the years

  from being simple executives using cyclic scheduling to

the current feature-rich operating environments. The stan-

dardization of POSIX 1003.1, ISO/IEC 9945-1 (real-time

extensions to POSIX) has contributed significantly to this

evolution, however, the specification leaves plenty of room

 for individual implementations to both interpret and spe-

cialize their RTOSs. Accordingly, there has been a pro-

liferation of both commercial and free RTOSs, notably, the

   ITRON OS, the OSEK-VDX OS specification, commercial

 RTOSs like VxWorks, VRTX, LynxOS, OSE and QNX, and 

 free RTOSs like RT-Linux (RTAI), and Windows CE.Thegoal of the work reported in this paper is to draw the

real-time systems practitioner and researcher’s attention

to these choices and bring out the similarities and differ-

ences among them. Work is underway to, install, test and 

benchmark the aforementioned OSs to draw a more objec-

tive assessment.

1 Introduction

The primary role of an operating system (OS) is to man-

age resources so as to meet the demands of target applica-

tions. Traditional timesharing operating systems target ap-

plication environments, that demand fairness and high re-

source utilization. Real-time applications on the other hand

demand timeliness and predictability , and the operating

systems targeting these applications meet these demands

by paying special attention to a host of OS features like: (i)

Multitasking (ii) Synchronization (iii) Interrupt and Event

Handling (iv) Input/Output (v) Inter-task Communication

(vi) Timers and Clocks (vii) Memory Management.

The design of a real-time operating system (RTOS) is

essentially a balance between providing a reasonably rich

feature set for application development and deployment

and, not sacrificing predictability and timeliness. In ad-

dition to timeliness and predictability some other desir-able characteristics have been identified in the various stan-

dards [10, 7, 6] specifications. In this paper, we attempt

to demonstrate that the various RTOSs implementing these

standards, differ in their implementation choices and strate-

gies. This demonstration should allow a practitioner to

choose the right RTOS for a particular application.

The specific real-time operating systems that are con-

sidered in this paper are: LynxOS: A UNIX-compatible,

POSIX-conformant real-time operating system for embed-

ded applications from Lynx Real-Time Systems Inc. It is

scalable, fully re-entrant, preemptible, and ROMable [2].

  ITRON: An open RTOS specification for embedded sys-

tems resulting from the TRON ( Ì  he Ê  eal-Time Ç  perating

SystemÆ 

ucleus) project. Participant companies that have

implemented the specification include, Fujitsu, Hitachi,

Mitsubhishi, Miyazaki, Morson, Erg Co., Firmware Sys-

tems, NEC, Sony Corp., Three Ace Computer Corp., and

Toshiba [10].

OSE: A commercial RTOS from Enea Data Systems that

boasts to have bridged the gap between applications and the

kernel by providing a rich set of features inside the kernel.

It’s message based architecture allows for efficient IPC and

synchronization [5].OSEK-VDX: The “Open Systems in Automotive Net-

works” RTOS specification that has been adopted by the

following organizations in their embedded systems: Adam

Opel AG, BMW AG,DaimlerChrysler AG, University of 

Karlsruhe - IIIT, PSA, Renault SA, Robert Bosch GmbH,

Siemens AG, Volkswagen AG [6].

QNX: A real-time, extensible POSIX compliant OS with a

lean micro-kernel and a team of optional cooperating pro-

cesses. [9].

RTAI: It evolved from NMT RTLinux (New Mexico Insti-

tute of Technology’s Real-Time Linux), and takes a unique

approach of running Linux as a task (lowest priority) that

competes with other real-time tasks for the CPU [3].VRTX: A highly reliable RTOS from Mentor Graphics

that is the first to be certified under the US FAA’s strin-

gent RTCA/DO-178B level A standard for mission-critical

aerospace systems. It is based on a Nanokernel running on

top of a Hardware Abstraction Layer to provide fast and

predictable response [11].

VxWorks: The most popular (and complete) commercial

RTOS (from Wind River Systems) in the embedded indus-

try with ports for virtually all CPUs in the market [12].

Windows CE: Microsoft’s embedded operating system for

handheld PCs and small embedded processors. Though

it’s current version (2.0) does not really qualify as an

RTOS, both feature-wise and performance-wise, Microsoftpromises to fix these shortcomings in version 3.0 [13].

The above list is in no way exhaustive but is a reasonable

subset of more than 50 commercial, academic (research-

based) and free RTOSs currently available. We have not

included several excellent academic RTOSs which have

been very well reviewed in [4]. Further, we only picked

one of several (Lineo, ecos, Lynx Bluecat etc.) new RTOS

derivatives of the Linux operating system. We refer to the

8/2/2019 Real-Time Operating Systems an Ongoing Review

http://slidepdf.com/reader/full/real-time-operating-systems-an-ongoing-review 2/4

8/2/2019 Real-Time Operating Systems an Ongoing Review

http://slidepdf.com/reader/full/real-time-operating-systems-an-ongoing-review 3/4

8/2/2019 Real-Time Operating Systems an Ongoing Review

http://slidepdf.com/reader/full/real-time-operating-systems-an-ongoing-review 4/4