Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 16

Real Time OS

Real-time operating system is an operating system that supports the


construction of real-time systems.
 Increasing Complexity
 Time to Market
 Reuse of Components
Configurability
No single RTOS will fit all needs, no overhead for unused functions
tolerated - configurability needed
 Object orientation
Used for a derivation of proper subclasses
 Conditional compilation
In this case, we are using some macro preprocessor, and we are taking advantage of #if and #ifdef
preprocessor commands.
 Advanced compile-time evaluation
configurations could be performed by defining constant values of variables before compiling the OS.
The compiler could then propagate the knowledge of these values as much as possible.
 Linker-based removal of unused functions
At link-time, there may be more information about used and unused functions than during earlier
phases.
 Dynamic data might be replaced by static data
Testing and verification of the derived
OS
 Real time operating system - Red Hat Linux
 100 to 200 reconfiguration points.
Operating system core
Device Driver

Hardware

Compiler layers
Application layer.
Embedded OS Vs. Standard OS
Embedded OS Standard OS

Application Layer Application Layer

middle wax middle wax

dd dd O.S

Kernel dd dd
Protection is optional in real time OS

 Embedded systems are mostly design single purpose

 Privilege instructions are not required

Load reg 1, sw 1

0/1
reg 1
Interrupts in embedded operating
systems

 When the interrupt comes, we go to the kernel, but in embedded


operating system, we are not restricted to go through the kernel. We
need not restrict it to the operating system, a device can directly
connect to the interrupt line of the processor because they are already
tested and protections are not always required.
Functionality of RTOS-Kernels

Includes
 Processor management,
 Memory management,
 Timer management;
 Task management (resume, wait etc),
 Inter-task communication and synchronization.
Requirements of RT OS

 Predictability: the timing behavior must be predictable. Should not


disable interrupts for long.
 Contiguous allocation of the file on disk.
 OS should manage the timing and scheduling of the works.
 The OS must be fast.
Time

 Physical time - real number


 Relative times
 absolute time-
International atomic time (TAI)
Universal time coordinated (UTC)
Clocks Synchronization

 Whenever I have got more than one clock I need to have


synchronization among them, so that they count together.
 Master clock
 Distributed synchronization
 Internal synchronization.
Collect the information from the neighbors
Apply the corrections and get the correct value
External synchronization

 External synchronization usually use a GPS.


 The GPS offers both TAI and UTC both timing information.
The characteristics of the
operating system or real time operating system

 Must be predictable
 Must be doing the task of scheduling
 Must be very fast
 Synchronization
Structure of the real time kernels

Classes of real time operating systems


Application Layer
 Fast and proprietary- Example: Vx works
 RT extension to standard OS
middle wax

dd dd

Real time Kernel


Structure of the real time kernels

Non- RT Task 1 Non- RT Task 2

RT Task 1 RT Task 1
Standard OS

dd dd dd dd

Real time Kernel


Real time Linux
chrome
Init IE

Scheduler
Linux- kernel
Driver

RT- Scheduler
I/O RT- Linux
Interrupt
Hardware

You might also like