SlideShare a Scribd company logo
1 of 26
Real Time Operating Systems
for Embedded Systems
What is Embedded Systems ?
An embedded system is a special-purpose computer
system designed to perform one or a few dedicated functions,
often with real-time computing constraints.
Embedded systems contain a processor, software and
Memory and The processor may be 8051micro-controller or a
Pentium-IV processor, Memory ROM and RAM respectively
Processor
Memory
Input Output
What is Embedded Systems ?
Embedded systems also contain some type of inputs and
outputs
Inputs to the system generally take the form of sensors
and probes, communication signals, or control knobs and
buttons.
Outputs are generally displays, communication signals, or
changes to the physical world. E.g. microwave oven
Real-time embedded systems is one major subclass of
embedded systems and time is most important part for this
type of system
Example and History
Air conditioner, Home security system, ATM machine all
this are example of embedded system
airplane’s flight control system,
This example are real time embedded in real time embedded
system time is major factor
In the earliest years of computers in 1930 – 40s,
computers were sometimes dedicated to a single purpose
task.
One of the first recognizably modern embedded system
was the Apollo Guidance Computer, developed by Charles
Stark Draper at the MIT Instrumentation Laboratory.
Real-time programming
programming the processes or instruction set with
constraints of time for its response, process with latencies,
and process with deadlines.
Procedure-oriented C and object-oriented programming
C++ and Java languages are used in most embedded
systems programming.
Embedded programming is such that methods to optimize
the system memory requirements are also used.
For some embedded system which has more no. of
hardware and memory management this type use RTOS for
programming
Real-Time Operating System
An RTOS is an OS for response time-controlled and event-
controlled processes. It is very essential for large scale
embedded systems.
RTOS occupy little space from 10 KB to 100KB
The main task of a RTOS is to manage the
resources of the computer such that a particular operation
executes in precisely the same amount of time every time it
occur.
Renesas automotive dashboard platform.
When RTOS is not necessary?
Software for a large number of small-scale embedded
system use no RTOS and these functions are incorporated
into the application software.
For small-scaled systems, RTOS’s function can be replaced
by C.
For example, instead of the memory allocation and de-
allocation functions of RTOS, the C function , melloc and free
can be used.
Software can directly handle inter-process communication
When RTOS is necessary?
However, RTOS is essential when…
A common and effective way of handling of the hardware
source calls from the interrupts
I/O management with devices, files, mailboxes becomes
simple using an RTOS
Effectively scheduling and running and blocking of the
tasks in cases of many tasks and many more…..
In conclusion, an RTOS may not be necessary in a small-
scaled embedded system. An RTOS is necessary when
scheduling of multiple processes and devices is important.
Hard and Soft Real Time Systems
Hard Real time system: Failure to meet such a deadline
is considered to be a fatal fault and will lead to disastrous
consequences e.g. Response of the break system of a
speeding Train approaching a Red Signal to the stop
command must come before the train crosses the Red signal.
Soft Real time system : Failure to miss a Soft Deadline
is undesirable but a few misses does no serious harm like
occasional delay in an on line trading of stocks. However the
system’s overall performance becomes poorer and poorer as
more and more jobs starts missing the deadline.
CPU Architectures & Structure of a RTOS
The most important component of RTOS
is its kernel (Monolithic & Microkernel).
BSP or Board Support Package makes an
RTOS target-specific (It’s a processor
specific code onto (processor) which we
like to have our RTOS running).
8051, ARM7,ARM9, Intel Xscale, AVR, Blackfin, C167, Coldfire,,
MIPS, MSP430, PIC, PowerPC, R8C, SHARC, ST6, SuperH, TLCS-47,
TLCS-870, TLCS-900, Tricore, etc.
Monolithic kernel Vs Microkernel
Monolithic Kernel Microkernel
RTOS Kernel Functions
1. Task Management
2. Intertask Communication &
Synchronization
3. Dynamic Memory Allocation
4. Timers
5. Devices I/O Supervisor
Task Management
Set of services used to allow application software developers
to design their software as a number of separate chunks of
software each handling a distinct topic, a distinct goal, and
sometimes its own real-time deadline.
Main service offered is Task Scheduling
 controls the execution of application software tasks
 can make them run in a very timely and responsive
fashion.
Task Scheduling block diagram
Desired resources available
Task cancel
Task Scheduling
Non Real -time systems usually use Non-preemptive
Scheduling
 Once a task starts executing, it completes its full
execution
Most RTOS perform priority-based preemptive task
scheduling.
Basic rules for priority based preemptive task scheduling
 The Highest Priority Task that is Ready to Run, will be the
Task that Must be Running.
Priority based Preemptive Task
Scheduling
Every Task in a software application is assigned a priority.
Higher Priority = Higher Need for Quick Response.
Follows nested preemption
Nested Preemption
Timeline for Priority-based Preemptive Scheduling
Task Switch (1)
Each time the priority-based preemptive scheduler is alerted
by an External world trigger / Software trigger it shall go
through the following steps that constitute a Task Switch:
 Determine whether the currently running task should
continue to run.
 Determine which task should run next.
 Save the environment of the task that was stopped (so it
can continue later).
 Set up the running environment of the task that will run
next.
 Allow the selected task to run.
Task Switch (2)
A Non Real time operating system might do task switching
only at timer tick times.
Even with preemptive schedulers a large array of tasks is
searched before a task switch.
A Real time OS shall use Incrementally arranged tables to
save on time.
Intertask Communication &
Synchronization
These services makes it possible to pass information from
one task to another without information ever being
damaged.
Makes it possible for tasks to coordinate & productively
cooperate with each other.
Inter-Task communication &
Synchronization
The most important communication b/w tasks in an OS is
the passing of data from one task to another.
If messages are sent more quickly than they can be handled,
the OS provides message queues for holding the messages
until they can be processed.
Message
Producer Task
Message
Receiver Task
Message passing in RTOS
In RTOS, the OS copies a pointer to the message,
delivers the pointer to the message-receiver task, and
then deletes the copy of the pointer with message-sender
task.
Message Sender
Task
RAM
Message Receiver
Task
RTOS
msg_ptr
msg_ptr
Message Message
Dynamic Memory Allocation
in RTOS
RTOS does it by a mechanism known as Pools.
Pools memory allocation mechanism allows application software to
allocate chunks of memory of 4 to 8 different buffer sizes per
pool.
Pools avoid external memory fragmentation, by not permitting a
buffer that is returned to the pool to be broken into smaller
buffers in the future.
When a buffer is returned the pool, it is put onto a free buffer
list of buffers of its own size that are available for future re-use at
their original buffer size
Device i/o and Time Management
An RTOS kernel is often equipped with a device I/O
management service to provide a uniform framework
and supervision facility for an embedded system to
organize and access large numbers of diverse hardware
device drivers.
In embedded systems, system and user tasks are often scheduled to
perform after a specified duration. To provide such scheduling, there is
a need for a periodical interrupt to keep track of time delays and timeout.
Most RTOSs today offer both “relative timers” that work in units of ticks,
and “absolute timers” that work with calendar date and time.
For each kind of timer, RTOSs provide a “task delay” service, and also a
“task alert” service based on the signaling mechanism (e.g. event flags).
Another timer service provided is in meeting task deadline by cooperating
with task schedulers to determine whether tasks have met or missed their
real-time deadlines.
Peripheral devices and protocols
• Interfacing
Serial/parallel ports, USB, I2C, PCMCIA, IDE
• Communication
Serial, Ethernet, Low bandwidth radio, IrDA,
802.11b based devices
• User Interface
LCD, Keyboard, Touch sensors, Sound, Digital
pads, Webcams
• Sensors
A variety of sensors using fire, temperature,
pressure, water level, seismic, sound, vision
Example of Rtos
•Wind River Systems
VxWorks
pSOS
•QNX Software Systems
QNX
•Mentor Graphics
VRTX
•Palm Computing
PalmOS
•Mobile OS
SymbianOS
Linux based
•Embedded Debian Project
convert Debian to an
embedded OS
•ETLinux
for PC104 SBC’s
•uCLinux
for microprocessors that don’t
have MM
•uLinux (muLinux)
distro fits on a single floppy

More Related Content

What's hot

Embedded system design process
Embedded system design processEmbedded system design process
Embedded system design processRayees CK
 
Design challenges in embedded systems
Design challenges in embedded systemsDesign challenges in embedded systems
Design challenges in embedded systemsmahalakshmimalini
 
Embedded os
Embedded osEmbedded os
Embedded oschian417
 
System on chip architectures
System on chip architecturesSystem on chip architectures
System on chip architecturesA B Shinde
 
Rtos concepts
Rtos conceptsRtos concepts
Rtos conceptsanishgoel
 
SYBSC IT SEM IV EMBEDDED SYSTEMS UNIT I Core of Embedded Systems
SYBSC IT SEM IV EMBEDDED SYSTEMS UNIT I   Core of Embedded SystemsSYBSC IT SEM IV EMBEDDED SYSTEMS UNIT I   Core of Embedded Systems
SYBSC IT SEM IV EMBEDDED SYSTEMS UNIT I Core of Embedded SystemsArti Parab Academics
 
IOT Unit-1 (Introduction to IOT) by Durgacharan
IOT Unit-1 (Introduction to IOT) by DurgacharanIOT Unit-1 (Introduction to IOT) by Durgacharan
IOT Unit-1 (Introduction to IOT) by DurgacharanDurgacharan Kondabathula
 
Embedded firmware
Embedded firmwareEmbedded firmware
Embedded firmwareJoel P
 
Design of embedded systems
Design of embedded systemsDesign of embedded systems
Design of embedded systemsPradeep Kumar TS
 
RTOS for Embedded System Design
RTOS for Embedded System DesignRTOS for Embedded System Design
RTOS for Embedded System Designanand hd
 
EMBEDDED OS
EMBEDDED OSEMBEDDED OS
EMBEDDED OSAJAL A J
 
Memory allocation for real time operating system
Memory allocation for real time operating systemMemory allocation for real time operating system
Memory allocation for real time operating systemAsma'a Lafi
 

What's hot (20)

E.s unit 6
E.s unit 6E.s unit 6
E.s unit 6
 
Expert system
Expert systemExpert system
Expert system
 
MicroC/OS-II
MicroC/OS-IIMicroC/OS-II
MicroC/OS-II
 
Embedded system design process
Embedded system design processEmbedded system design process
Embedded system design process
 
Design challenges in embedded systems
Design challenges in embedded systemsDesign challenges in embedded systems
Design challenges in embedded systems
 
Embedded os
Embedded osEmbedded os
Embedded os
 
RT linux
RT linuxRT linux
RT linux
 
System on chip architectures
System on chip architecturesSystem on chip architectures
System on chip architectures
 
Rtos concepts
Rtos conceptsRtos concepts
Rtos concepts
 
SYBSC IT SEM IV EMBEDDED SYSTEMS UNIT I Core of Embedded Systems
SYBSC IT SEM IV EMBEDDED SYSTEMS UNIT I   Core of Embedded SystemsSYBSC IT SEM IV EMBEDDED SYSTEMS UNIT I   Core of Embedded Systems
SYBSC IT SEM IV EMBEDDED SYSTEMS UNIT I Core of Embedded Systems
 
IOT Unit-1 (Introduction to IOT) by Durgacharan
IOT Unit-1 (Introduction to IOT) by DurgacharanIOT Unit-1 (Introduction to IOT) by Durgacharan
IOT Unit-1 (Introduction to IOT) by Durgacharan
 
Embedded firmware
Embedded firmwareEmbedded firmware
Embedded firmware
 
Kernels and its types
Kernels and its typesKernels and its types
Kernels and its types
 
Design of embedded systems
Design of embedded systemsDesign of embedded systems
Design of embedded systems
 
RTOS for Embedded System Design
RTOS for Embedded System DesignRTOS for Embedded System Design
RTOS for Embedded System Design
 
Memory Organization
Memory OrganizationMemory Organization
Memory Organization
 
Real-Time Operating Systems
Real-Time Operating SystemsReal-Time Operating Systems
Real-Time Operating Systems
 
EMBEDDED OS
EMBEDDED OSEMBEDDED OS
EMBEDDED OS
 
Multicore Processor Technology
Multicore Processor TechnologyMulticore Processor Technology
Multicore Processor Technology
 
Memory allocation for real time operating system
Memory allocation for real time operating systemMemory allocation for real time operating system
Memory allocation for real time operating system
 

Similar to Embedded os

UNIT-I-RTOS and Concepts
UNIT-I-RTOS and ConceptsUNIT-I-RTOS and Concepts
UNIT-I-RTOS and ConceptsDr.YNM
 
Welcome to International Journal of Engineering Research and Development (IJERD)
Welcome to International Journal of Engineering Research and Development (IJERD)Welcome to International Journal of Engineering Research and Development (IJERD)
Welcome to International Journal of Engineering Research and Development (IJERD)IJERD Editor
 
LM1 - Computer System Overview, system calls
LM1 - Computer System Overview, system callsLM1 - Computer System Overview, system calls
LM1 - Computer System Overview, system callsmanideepakc
 
What is RTOS Step by Step Guide?
What is RTOS Step by Step Guide?What is RTOS Step by Step Guide?
What is RTOS Step by Step Guide?IntervalZero
 
Real Time Operating Systems
Real Time Operating SystemsReal Time Operating Systems
Real Time Operating SystemsPawandeep Kaur
 
RTOS implementation
RTOS implementationRTOS implementation
RTOS implementationRajan Kumar
 
MYSQL DATABASE Operating System Part2 (1).pptx
MYSQL DATABASE Operating System Part2 (1).pptxMYSQL DATABASE Operating System Part2 (1).pptx
MYSQL DATABASE Operating System Part2 (1).pptxArjayBalberan1
 
embedded system CHAPTER four about design .pdf
embedded system CHAPTER four about design .pdfembedded system CHAPTER four about design .pdf
embedded system CHAPTER four about design .pdfabdulkerimaragaw936
 
Real Time Operating Systems for Embedded Systems
Real Time Operating Systems for Embedded SystemsReal Time Operating Systems for Embedded Systems
Real Time Operating Systems for Embedded SystemsAditya Vichare
 
Embedded system software
Embedded system softwareEmbedded system software
Embedded system softwareJamia Hamdard
 
Basics of OS & RTOS.ppt
Basics of OS & RTOS.pptBasics of OS & RTOS.ppt
Basics of OS & RTOS.pptDr.YNM
 
Operating system basics, Types of operating systems, Tasks, Process and Thre...
Operating system basics, Types of operating  systems, Tasks, Process and Thre...Operating system basics, Types of operating  systems, Tasks, Process and Thre...
Operating system basics, Types of operating systems, Tasks, Process and Thre...SattiBabu16
 

Similar to Embedded os (20)

Os Concepts
Os ConceptsOs Concepts
Os Concepts
 
Unit v
Unit vUnit v
Unit v
 
UNIT-I-RTOS and Concepts
UNIT-I-RTOS and ConceptsUNIT-I-RTOS and Concepts
UNIT-I-RTOS and Concepts
 
Welcome to International Journal of Engineering Research and Development (IJERD)
Welcome to International Journal of Engineering Research and Development (IJERD)Welcome to International Journal of Engineering Research and Development (IJERD)
Welcome to International Journal of Engineering Research and Development (IJERD)
 
LM1 - Computer System Overview, system calls
LM1 - Computer System Overview, system callsLM1 - Computer System Overview, system calls
LM1 - Computer System Overview, system calls
 
What is RTOS Step by Step Guide?
What is RTOS Step by Step Guide?What is RTOS Step by Step Guide?
What is RTOS Step by Step Guide?
 
Real Time Operating Systems
Real Time Operating SystemsReal Time Operating Systems
Real Time Operating Systems
 
Rtos Concepts
Rtos ConceptsRtos Concepts
Rtos Concepts
 
RTOS implementation
RTOS implementationRTOS implementation
RTOS implementation
 
MYSQL DATABASE Operating System Part2 (1).pptx
MYSQL DATABASE Operating System Part2 (1).pptxMYSQL DATABASE Operating System Part2 (1).pptx
MYSQL DATABASE Operating System Part2 (1).pptx
 
embedded system CHAPTER four about design .pdf
embedded system CHAPTER four about design .pdfembedded system CHAPTER four about design .pdf
embedded system CHAPTER four about design .pdf
 
Real Time Operating Systems for Embedded Systems
Real Time Operating Systems for Embedded SystemsReal Time Operating Systems for Embedded Systems
Real Time Operating Systems for Embedded Systems
 
Embedded system software
Embedded system softwareEmbedded system software
Embedded system software
 
Bt0062
Bt0062Bt0062
Bt0062
 
B T0062
B T0062B T0062
B T0062
 
Basics of OS & RTOS.ppt
Basics of OS & RTOS.pptBasics of OS & RTOS.ppt
Basics of OS & RTOS.ppt
 
Real timedata
Real timedataReal timedata
Real timedata
 
Operating system basics, Types of operating systems, Tasks, Process and Thre...
Operating system basics, Types of operating  systems, Tasks, Process and Thre...Operating system basics, Types of operating  systems, Tasks, Process and Thre...
Operating system basics, Types of operating systems, Tasks, Process and Thre...
 
UNIT V PPT.ppt
UNIT V PPT.pptUNIT V PPT.ppt
UNIT V PPT.ppt
 
OPERATING SYSTEM.pptx
OPERATING SYSTEM.pptxOPERATING SYSTEM.pptx
OPERATING SYSTEM.pptx
 

More from K Senthil Kumar

Installing application in ubuntu [autosaved]
Installing application in ubuntu [autosaved]Installing application in ubuntu [autosaved]
Installing application in ubuntu [autosaved]K Senthil Kumar
 
Designing applications with web access capabilities
Designing applications with web access capabilitiesDesigning applications with web access capabilities
Designing applications with web access capabilitiesK Senthil Kumar
 
Designing applications with multimedia capabilities
Designing applications with multimedia capabilitiesDesigning applications with multimedia capabilities
Designing applications with multimedia capabilitiesK Senthil Kumar
 
Achieving quality contraints
Achieving quality contraintsAchieving quality contraints
Achieving quality contraintsK Senthil Kumar
 
User interfaces for mobile applications
User interfaces for mobile applicationsUser interfaces for mobile applications
User interfaces for mobile applicationsK Senthil Kumar
 
Constraints of designing for mobile devices
Constraints of designing for mobile devicesConstraints of designing for mobile devices
Constraints of designing for mobile devicesK Senthil Kumar
 
Architecting mobile application
Architecting mobile applicationArchitecting mobile application
Architecting mobile applicationK Senthil Kumar
 
Basics of embedded system design
Basics of embedded system designBasics of embedded system design
Basics of embedded system designK Senthil Kumar
 
Requirements gathering and validation for mobile applications
Requirements gathering and validation for mobile applicationsRequirements gathering and validation for mobile applications
Requirements gathering and validation for mobile applicationsK Senthil Kumar
 
Publishing and delivery of mobile application ios
Publishing and delivery of mobile application   iosPublishing and delivery of mobile application   ios
Publishing and delivery of mobile application iosK Senthil Kumar
 
Publishing and delivery of mobile application
Publishing and delivery of mobile applicationPublishing and delivery of mobile application
Publishing and delivery of mobile applicationK Senthil Kumar
 
Market and business drivers for mobile application
Market and business drivers for mobile applicationMarket and business drivers for mobile application
Market and business drivers for mobile applicationK Senthil Kumar
 
Introduction to mobile application
Introduction to mobile applicationIntroduction to mobile application
Introduction to mobile applicationK Senthil Kumar
 

More from K Senthil Kumar (14)

Installing application in ubuntu [autosaved]
Installing application in ubuntu [autosaved]Installing application in ubuntu [autosaved]
Installing application in ubuntu [autosaved]
 
Designing applications with web access capabilities
Designing applications with web access capabilitiesDesigning applications with web access capabilities
Designing applications with web access capabilities
 
Designing applications with multimedia capabilities
Designing applications with multimedia capabilitiesDesigning applications with multimedia capabilities
Designing applications with multimedia capabilities
 
Achieving quality contraints
Achieving quality contraintsAchieving quality contraints
Achieving quality contraints
 
User interfaces for mobile applications
User interfaces for mobile applicationsUser interfaces for mobile applications
User interfaces for mobile applications
 
Constraints of designing for mobile devices
Constraints of designing for mobile devicesConstraints of designing for mobile devices
Constraints of designing for mobile devices
 
Architecting mobile application
Architecting mobile applicationArchitecting mobile application
Architecting mobile application
 
Basics of embedded system design
Basics of embedded system designBasics of embedded system design
Basics of embedded system design
 
Requirements gathering and validation for mobile applications
Requirements gathering and validation for mobile applicationsRequirements gathering and validation for mobile applications
Requirements gathering and validation for mobile applications
 
Publishing and delivery of mobile application ios
Publishing and delivery of mobile application   iosPublishing and delivery of mobile application   ios
Publishing and delivery of mobile application ios
 
Publishing and delivery of mobile application
Publishing and delivery of mobile applicationPublishing and delivery of mobile application
Publishing and delivery of mobile application
 
Market and business drivers for mobile application
Market and business drivers for mobile applicationMarket and business drivers for mobile application
Market and business drivers for mobile application
 
Embedded systems
Embedded systemsEmbedded systems
Embedded systems
 
Introduction to mobile application
Introduction to mobile applicationIntroduction to mobile application
Introduction to mobile application
 

Recently uploaded

HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptxHMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptxEsquimalt MFRC
 
How to Manage Call for Tendor in Odoo 17
How to Manage Call for Tendor in Odoo 17How to Manage Call for Tendor in Odoo 17
How to Manage Call for Tendor in Odoo 17Celine George
 
Simple, Complex, and Compound Sentences Exercises.pdf
Simple, Complex, and Compound Sentences Exercises.pdfSimple, Complex, and Compound Sentences Exercises.pdf
Simple, Complex, and Compound Sentences Exercises.pdfstareducators107
 
How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17Celine George
 
dusjagr & nano talk on open tools for agriculture research and learning
dusjagr & nano talk on open tools for agriculture research and learningdusjagr & nano talk on open tools for agriculture research and learning
dusjagr & nano talk on open tools for agriculture research and learningMarc Dusseiller Dusjagr
 
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptxCOMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptxannathomasp01
 
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...Amil baba
 
Spellings Wk 4 and Wk 5 for Grade 4 at CAPS
Spellings Wk 4 and Wk 5 for Grade 4 at CAPSSpellings Wk 4 and Wk 5 for Grade 4 at CAPS
Spellings Wk 4 and Wk 5 for Grade 4 at CAPSAnaAcapella
 
Graduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - EnglishGraduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - Englishneillewis46
 
How to Add New Custom Addons Path in Odoo 17
How to Add New Custom Addons Path in Odoo 17How to Add New Custom Addons Path in Odoo 17
How to Add New Custom Addons Path in Odoo 17Celine George
 
Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)Jisc
 
21st_Century_Skills_Framework_Final_Presentation_2.pptx
21st_Century_Skills_Framework_Final_Presentation_2.pptx21st_Century_Skills_Framework_Final_Presentation_2.pptx
21st_Century_Skills_Framework_Final_Presentation_2.pptxJoelynRubio1
 
Towards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptxTowards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptxJisc
 
Transparency, Recognition and the role of eSealing - Ildiko Mazar and Koen No...
Transparency, Recognition and the role of eSealing - Ildiko Mazar and Koen No...Transparency, Recognition and the role of eSealing - Ildiko Mazar and Koen No...
Transparency, Recognition and the role of eSealing - Ildiko Mazar and Koen No...EADTU
 
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...Pooja Bhuva
 
Tatlong Kwento ni Lola basyang-1.pdf arts
Tatlong Kwento ni Lola basyang-1.pdf artsTatlong Kwento ni Lola basyang-1.pdf arts
Tatlong Kwento ni Lola basyang-1.pdf artsNbelano25
 
Play hard learn harder: The Serious Business of Play
Play hard learn harder:  The Serious Business of PlayPlay hard learn harder:  The Serious Business of Play
Play hard learn harder: The Serious Business of PlayPooky Knightsmith
 
Economic Importance Of Fungi In Food Additives
Economic Importance Of Fungi In Food AdditivesEconomic Importance Of Fungi In Food Additives
Economic Importance Of Fungi In Food AdditivesSHIVANANDaRV
 
PANDITA RAMABAI- Indian political thought GENDER.pptx
PANDITA RAMABAI- Indian political thought GENDER.pptxPANDITA RAMABAI- Indian political thought GENDER.pptx
PANDITA RAMABAI- Indian political thought GENDER.pptxakanksha16arora
 

Recently uploaded (20)

HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptxHMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
 
How to Manage Call for Tendor in Odoo 17
How to Manage Call for Tendor in Odoo 17How to Manage Call for Tendor in Odoo 17
How to Manage Call for Tendor in Odoo 17
 
Simple, Complex, and Compound Sentences Exercises.pdf
Simple, Complex, and Compound Sentences Exercises.pdfSimple, Complex, and Compound Sentences Exercises.pdf
Simple, Complex, and Compound Sentences Exercises.pdf
 
How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17
 
dusjagr & nano talk on open tools for agriculture research and learning
dusjagr & nano talk on open tools for agriculture research and learningdusjagr & nano talk on open tools for agriculture research and learning
dusjagr & nano talk on open tools for agriculture research and learning
 
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptxCOMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
 
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...
 
Spellings Wk 4 and Wk 5 for Grade 4 at CAPS
Spellings Wk 4 and Wk 5 for Grade 4 at CAPSSpellings Wk 4 and Wk 5 for Grade 4 at CAPS
Spellings Wk 4 and Wk 5 for Grade 4 at CAPS
 
OS-operating systems- ch05 (CPU Scheduling) ...
OS-operating systems- ch05 (CPU Scheduling) ...OS-operating systems- ch05 (CPU Scheduling) ...
OS-operating systems- ch05 (CPU Scheduling) ...
 
Graduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - EnglishGraduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - English
 
How to Add New Custom Addons Path in Odoo 17
How to Add New Custom Addons Path in Odoo 17How to Add New Custom Addons Path in Odoo 17
How to Add New Custom Addons Path in Odoo 17
 
Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)
 
21st_Century_Skills_Framework_Final_Presentation_2.pptx
21st_Century_Skills_Framework_Final_Presentation_2.pptx21st_Century_Skills_Framework_Final_Presentation_2.pptx
21st_Century_Skills_Framework_Final_Presentation_2.pptx
 
Towards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptxTowards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptx
 
Transparency, Recognition and the role of eSealing - Ildiko Mazar and Koen No...
Transparency, Recognition and the role of eSealing - Ildiko Mazar and Koen No...Transparency, Recognition and the role of eSealing - Ildiko Mazar and Koen No...
Transparency, Recognition and the role of eSealing - Ildiko Mazar and Koen No...
 
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
 
Tatlong Kwento ni Lola basyang-1.pdf arts
Tatlong Kwento ni Lola basyang-1.pdf artsTatlong Kwento ni Lola basyang-1.pdf arts
Tatlong Kwento ni Lola basyang-1.pdf arts
 
Play hard learn harder: The Serious Business of Play
Play hard learn harder:  The Serious Business of PlayPlay hard learn harder:  The Serious Business of Play
Play hard learn harder: The Serious Business of Play
 
Economic Importance Of Fungi In Food Additives
Economic Importance Of Fungi In Food AdditivesEconomic Importance Of Fungi In Food Additives
Economic Importance Of Fungi In Food Additives
 
PANDITA RAMABAI- Indian political thought GENDER.pptx
PANDITA RAMABAI- Indian political thought GENDER.pptxPANDITA RAMABAI- Indian political thought GENDER.pptx
PANDITA RAMABAI- Indian political thought GENDER.pptx
 

Embedded os

  • 1. Real Time Operating Systems for Embedded Systems
  • 2. What is Embedded Systems ? An embedded system is a special-purpose computer system designed to perform one or a few dedicated functions, often with real-time computing constraints. Embedded systems contain a processor, software and Memory and The processor may be 8051micro-controller or a Pentium-IV processor, Memory ROM and RAM respectively Processor Memory Input Output
  • 3. What is Embedded Systems ? Embedded systems also contain some type of inputs and outputs Inputs to the system generally take the form of sensors and probes, communication signals, or control knobs and buttons. Outputs are generally displays, communication signals, or changes to the physical world. E.g. microwave oven Real-time embedded systems is one major subclass of embedded systems and time is most important part for this type of system
  • 4. Example and History Air conditioner, Home security system, ATM machine all this are example of embedded system airplane’s flight control system, This example are real time embedded in real time embedded system time is major factor In the earliest years of computers in 1930 – 40s, computers were sometimes dedicated to a single purpose task. One of the first recognizably modern embedded system was the Apollo Guidance Computer, developed by Charles Stark Draper at the MIT Instrumentation Laboratory.
  • 5. Real-time programming programming the processes or instruction set with constraints of time for its response, process with latencies, and process with deadlines. Procedure-oriented C and object-oriented programming C++ and Java languages are used in most embedded systems programming. Embedded programming is such that methods to optimize the system memory requirements are also used. For some embedded system which has more no. of hardware and memory management this type use RTOS for programming
  • 6. Real-Time Operating System An RTOS is an OS for response time-controlled and event- controlled processes. It is very essential for large scale embedded systems. RTOS occupy little space from 10 KB to 100KB The main task of a RTOS is to manage the resources of the computer such that a particular operation executes in precisely the same amount of time every time it occur. Renesas automotive dashboard platform.
  • 7. When RTOS is not necessary? Software for a large number of small-scale embedded system use no RTOS and these functions are incorporated into the application software. For small-scaled systems, RTOS’s function can be replaced by C. For example, instead of the memory allocation and de- allocation functions of RTOS, the C function , melloc and free can be used. Software can directly handle inter-process communication
  • 8. When RTOS is necessary? However, RTOS is essential when… A common and effective way of handling of the hardware source calls from the interrupts I/O management with devices, files, mailboxes becomes simple using an RTOS Effectively scheduling and running and blocking of the tasks in cases of many tasks and many more….. In conclusion, an RTOS may not be necessary in a small- scaled embedded system. An RTOS is necessary when scheduling of multiple processes and devices is important.
  • 9. Hard and Soft Real Time Systems Hard Real time system: Failure to meet such a deadline is considered to be a fatal fault and will lead to disastrous consequences e.g. Response of the break system of a speeding Train approaching a Red Signal to the stop command must come before the train crosses the Red signal. Soft Real time system : Failure to miss a Soft Deadline is undesirable but a few misses does no serious harm like occasional delay in an on line trading of stocks. However the system’s overall performance becomes poorer and poorer as more and more jobs starts missing the deadline.
  • 10. CPU Architectures & Structure of a RTOS The most important component of RTOS is its kernel (Monolithic & Microkernel). BSP or Board Support Package makes an RTOS target-specific (It’s a processor specific code onto (processor) which we like to have our RTOS running). 8051, ARM7,ARM9, Intel Xscale, AVR, Blackfin, C167, Coldfire,, MIPS, MSP430, PIC, PowerPC, R8C, SHARC, ST6, SuperH, TLCS-47, TLCS-870, TLCS-900, Tricore, etc.
  • 11. Monolithic kernel Vs Microkernel Monolithic Kernel Microkernel
  • 12. RTOS Kernel Functions 1. Task Management 2. Intertask Communication & Synchronization 3. Dynamic Memory Allocation 4. Timers 5. Devices I/O Supervisor
  • 13. Task Management Set of services used to allow application software developers to design their software as a number of separate chunks of software each handling a distinct topic, a distinct goal, and sometimes its own real-time deadline. Main service offered is Task Scheduling  controls the execution of application software tasks  can make them run in a very timely and responsive fashion.
  • 14. Task Scheduling block diagram Desired resources available Task cancel
  • 15. Task Scheduling Non Real -time systems usually use Non-preemptive Scheduling  Once a task starts executing, it completes its full execution Most RTOS perform priority-based preemptive task scheduling. Basic rules for priority based preemptive task scheduling  The Highest Priority Task that is Ready to Run, will be the Task that Must be Running.
  • 16. Priority based Preemptive Task Scheduling Every Task in a software application is assigned a priority. Higher Priority = Higher Need for Quick Response. Follows nested preemption
  • 17. Nested Preemption Timeline for Priority-based Preemptive Scheduling
  • 18. Task Switch (1) Each time the priority-based preemptive scheduler is alerted by an External world trigger / Software trigger it shall go through the following steps that constitute a Task Switch:  Determine whether the currently running task should continue to run.  Determine which task should run next.  Save the environment of the task that was stopped (so it can continue later).  Set up the running environment of the task that will run next.  Allow the selected task to run.
  • 19. Task Switch (2) A Non Real time operating system might do task switching only at timer tick times. Even with preemptive schedulers a large array of tasks is searched before a task switch. A Real time OS shall use Incrementally arranged tables to save on time.
  • 20. Intertask Communication & Synchronization These services makes it possible to pass information from one task to another without information ever being damaged. Makes it possible for tasks to coordinate & productively cooperate with each other.
  • 21. Inter-Task communication & Synchronization The most important communication b/w tasks in an OS is the passing of data from one task to another. If messages are sent more quickly than they can be handled, the OS provides message queues for holding the messages until they can be processed. Message Producer Task Message Receiver Task
  • 22. Message passing in RTOS In RTOS, the OS copies a pointer to the message, delivers the pointer to the message-receiver task, and then deletes the copy of the pointer with message-sender task. Message Sender Task RAM Message Receiver Task RTOS msg_ptr msg_ptr Message Message
  • 23. Dynamic Memory Allocation in RTOS RTOS does it by a mechanism known as Pools. Pools memory allocation mechanism allows application software to allocate chunks of memory of 4 to 8 different buffer sizes per pool. Pools avoid external memory fragmentation, by not permitting a buffer that is returned to the pool to be broken into smaller buffers in the future. When a buffer is returned the pool, it is put onto a free buffer list of buffers of its own size that are available for future re-use at their original buffer size
  • 24. Device i/o and Time Management An RTOS kernel is often equipped with a device I/O management service to provide a uniform framework and supervision facility for an embedded system to organize and access large numbers of diverse hardware device drivers. In embedded systems, system and user tasks are often scheduled to perform after a specified duration. To provide such scheduling, there is a need for a periodical interrupt to keep track of time delays and timeout. Most RTOSs today offer both “relative timers” that work in units of ticks, and “absolute timers” that work with calendar date and time. For each kind of timer, RTOSs provide a “task delay” service, and also a “task alert” service based on the signaling mechanism (e.g. event flags). Another timer service provided is in meeting task deadline by cooperating with task schedulers to determine whether tasks have met or missed their real-time deadlines.
  • 25. Peripheral devices and protocols • Interfacing Serial/parallel ports, USB, I2C, PCMCIA, IDE • Communication Serial, Ethernet, Low bandwidth radio, IrDA, 802.11b based devices • User Interface LCD, Keyboard, Touch sensors, Sound, Digital pads, Webcams • Sensors A variety of sensors using fire, temperature, pressure, water level, seismic, sound, vision
  • 26. Example of Rtos •Wind River Systems VxWorks pSOS •QNX Software Systems QNX •Mentor Graphics VRTX •Palm Computing PalmOS •Mobile OS SymbianOS Linux based •Embedded Debian Project convert Debian to an embedded OS •ETLinux for PC104 SBC’s •uCLinux for microprocessors that don’t have MM •uLinux (muLinux) distro fits on a single floppy