Download REAL TIME OPERATING SYSTEMS Lesson-10

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Reactive programming wikipedia , lookup

Supercomputer architecture wikipedia , lookup

Scheduling (computing) wikipedia , lookup

Structured programming wikipedia , lookup

Transcript
REAL TIME OPERATING SYSTEMS
Lesson-10:
Real Time Operating System
2008
Chapter-8 L10: "Embedded Systems - Architecture,
Programming and Design" , Raj Kamal, Publs.: McGraw-Hill,
Inc.
1
1. Real Time Operating System
Definition
2008
Chapter-8 L10: "Embedded Systems - Architecture,
Programming and Design" , Raj Kamal, Publs.: McGraw-Hill,
Inc.
2
Real Time

A real time is the time which continuously
increments at regular intervals after the start
of the system and time for all the activities
at difference instances take that time as a
reference in the system.
2008
Chapter-8 L10: "Embedded Systems - Architecture,
Programming and Design" , Raj Kamal, Publs.: McGraw-Hill,
Inc.
3
RTOS

A real time operating system (RTOS) is
multitasking operation system for the
applications with hard or soft real time
constraints
2008
Chapter-8 L10: "Embedded Systems - Architecture,
Programming and Design" , Raj Kamal, Publs.: McGraw-Hill,
Inc.
4
RTOS

Real-time constraint means constraint on
occurance of an event and system expected
response and latency to the event.
2008
Chapter-8 L10: "Embedded Systems - Architecture,
Programming and Design" , Raj Kamal, Publs.: McGraw-Hill,
Inc.
5
Basic OS Functions





2008
Process Management,
Resources Management,
Device Management,
I/O Devices subsystems
Network Devices and subsystems
management
Chapter-8 L10: "Embedded Systems - Architecture,
Programming and Design" , Raj Kamal, Publs.: McGraw-Hill,
Inc.
6
Process Priorities Allocation



User level priorities allocation, called static
priority allocation or real-time priority
allocation is permitted.
The real time priorities are higher than the
dynamically allocated priorities to the OS
functions and the idle priority allotted to
low priority threads.
The idle priority thread or task is one which
runs when no other high priority ones
running.
2008
Chapter-8 L10: "Embedded Systems - Architecture,
Programming and Design" , Raj Kamal, Publs.: McGraw-Hill,
Inc.
7
Process Management by Preemption



RTOS kernel preempts a lower priority
process when a message or event for that
was waiting is obtained for the higher
priority process.
The RTOS kernel has the preemption points
at the end of the critical code and therefore
the RTOS can be preempted at those points
by a real time high priority task.
Only small sections in the RTOS functions
are non-preemptive
2008
Chapter-8 L10: "Embedded Systems - Architecture,
Programming and Design" , Raj Kamal, Publs.: McGraw-Hill,
Inc.
8
Process Priorities Management by priority
Inheritance


Priorities Inheritance enables a shared
resource in low priority task, for example,
LCD display, be used by high priority task
first.
An intermediate priority task will not
preempt the low priority task when it is
locked to run the critical shared resource or
code for the high priority task.
2008
Chapter-8 L10: "Embedded Systems - Architecture,
Programming and Design" , Raj Kamal, Publs.: McGraw-Hill,
Inc.
9
Process Priorities Management by priority
Inheritance

Priority sealing in place of priority
inheritance option can also be used for a
specific system.
2008
Chapter-8 L10: "Embedded Systems - Architecture,
Programming and Design" , Raj Kamal, Publs.: McGraw-Hill,
Inc.
10
Process Predictability

A predictable timing behavior of the system
and a predictable task-synchronization with
minimum jitter (difference between best
case latency and worst case latency)
2008
Chapter-8 L10: "Embedded Systems - Architecture,
Programming and Design" , Raj Kamal, Publs.: McGraw-Hill,
Inc.
11
Memory Management by Protection


In RTOS threads can run in kernel space.
The real time performance becomes high.
However, then a thread can access the
kernel codes, stack and data memory space,
and this could lead to unprotected kernel
code
2008
Chapter-8 L10: "Embedded Systems - Architecture,
Programming and Design" , Raj Kamal, Publs.: McGraw-Hill,
Inc.
12
Memory Management: Disabling MMU


Either disabling use of MMU and virtual
memory or using memory locks.
Memory locking stops page swapping
between physical memory and disk
disabled. This makes RTOS task latencies
predictable and reduces jitter (time between
worst case latency and best case latencies
for a task or thread).
2008
Chapter-8 L10: "Embedded Systems - Architecture,
Programming and Design" , Raj Kamal, Publs.: McGraw-Hill,
Inc.
13
Memory Allocation

In RTOS, the memory allocation is fast and
there are , fixed length memory block
allocationt and system takes predictable
time for allocation
2008
Chapter-8 L10: "Embedded Systems - Architecture,
Programming and Design" , Raj Kamal, Publs.: McGraw-Hill,
Inc.
14
Scheduling and InterruptInterrupt-latency control
functions

Real time Task-Scheduling and Interruptlatency control and uses of the timers and
system clocks
2008
Chapter-8 L10: "Embedded Systems - Architecture,
Programming and Design" , Raj Kamal, Publs.: McGraw-Hill,
Inc.
15
Timer Functions and Time Management

Provides for timer functions. There is time
allocation and de-allocation to attain best
utilization efficiency in given timing
constraints
2008
Chapter-8 L10: "Embedded Systems - Architecture,
Programming and Design" , Raj Kamal, Publs.: McGraw-Hill,
Inc.
16
Asynchronous IO Functions

Permits asynchronous IOs, which means
IOs without blocking a task
2008
Chapter-8 L10: "Embedded Systems - Architecture,
Programming and Design" , Raj Kamal, Publs.: McGraw-Hill,
Inc.
17
IPC Synchronization

Synchronization of tasks with IPCs
(Semaphores, mailboxes, message queues,
pipes, sockets and RPCs)
2008
Chapter-8 L10: "Embedded Systems - Architecture,
Programming and Design" , Raj Kamal, Publs.: McGraw-Hill,
Inc.
18
Spin Locks

Spin locks for critical section handling
2008
Chapter-8 L10: "Embedded Systems - Architecture,
Programming and Design" , Raj Kamal, Publs.: McGraw-Hill,
Inc.
19
Hard and soft real time operability

Hard real-time and soft real-time operations
2008
Chapter-8 L10: "Embedded Systems - Architecture,
Programming and Design" , Raj Kamal, Publs.: McGraw-Hill,
Inc.
20
Time Slicing

Time-slicing of the processes execution of
those processes which have equal priority
2008
Chapter-8 L10: "Embedded Systems - Architecture,
Programming and Design" , Raj Kamal, Publs.: McGraw-Hill,
Inc.
21
Summary
2008
Chapter-8 L10: "Embedded Systems - Architecture,
Programming and Design" , Raj Kamal, Publs.: McGraw-Hill,
Inc.
22
We learnt
• RTOS is an OS for response time controlled
and event controlled processes. The
processes have predicable latencies and
execute by preemptive scheduling
• An RTOS is an OS for the systems having
the hard or soft real timing constraints and
deadline on the tasks, ISTs and ISRs
2008
Chapter-8 L10: "Embedded Systems - Architecture,
Programming and Design" , Raj Kamal, Publs.: McGraw-Hill,
Inc.
23
End of Lesson 10 of Chapter 8
2008
Chapter-8 L10: "Embedded Systems - Architecture,
Programming and Design" , Raj Kamal, Publs.: McGraw-Hill,
Inc.
24