Real Time Operating Systems
description
Transcript of Real Time Operating Systems
![Page 1: Real Time Operating Systems](https://reader030.fdocuments.us/reader030/viewer/2022020320/568143ff550346895db091e0/html5/thumbnails/1.jpg)
Real Time Operating Systems
Group A5
Amit Sharma
Ali Abbas
Dhaval Sanghvi
![Page 2: Real Time Operating Systems](https://reader030.fdocuments.us/reader030/viewer/2022020320/568143ff550346895db091e0/html5/thumbnails/2.jpg)
Strategy for today’s presentation
• Short (10 minutes)
• Outline– What is a RTOS– Types of RTOS– RTOS general structure– VxWorks in particular
![Page 3: Real Time Operating Systems](https://reader030.fdocuments.us/reader030/viewer/2022020320/568143ff550346895db091e0/html5/thumbnails/3.jpg)
Operating System Services
![Page 4: Real Time Operating Systems](https://reader030.fdocuments.us/reader030/viewer/2022020320/568143ff550346895db091e0/html5/thumbnails/4.jpg)
Operating System Hierarchy
![Page 5: Real Time Operating Systems](https://reader030.fdocuments.us/reader030/viewer/2022020320/568143ff550346895db091e0/html5/thumbnails/5.jpg)
RTOS Definition
• Must adhere to strict set of policies and rules with the most distinguishable feature that it is deterministic.
• Deterministic is a guarantee that a software system will execute within a specified time constraint.
![Page 6: Real Time Operating Systems](https://reader030.fdocuments.us/reader030/viewer/2022020320/568143ff550346895db091e0/html5/thumbnails/6.jpg)
More definitions
• Real-time computing is computing where system correctness depends not only on the correctness of the logical result of the computation but also on the result delivery time.
• A real-time system responds in a (timely) predictable way to unpredictable external stimuli arrivals.
![Page 7: Real Time Operating Systems](https://reader030.fdocuments.us/reader030/viewer/2022020320/568143ff550346895db091e0/html5/thumbnails/7.jpg)
How do GPOS and RTOS differ?
• GPOS: emphasize fairness and high resource utilization.
• RTOS: demand timeliness and predictability. – Multitasking– Inter-task Communication– Interrupt and Event Handling– Timers and Clocks
![Page 8: Real Time Operating Systems](https://reader030.fdocuments.us/reader030/viewer/2022020320/568143ff550346895db091e0/html5/thumbnails/8.jpg)
What a RTOS is not
• Real time computing is equivalent to fast computing (avg. # of transactions).
• Real time systems operate in a static environment
• Real time programming involves assembly coding, priority interrupt programming, writing device drivers
![Page 9: Real Time Operating Systems](https://reader030.fdocuments.us/reader030/viewer/2022020320/568143ff550346895db091e0/html5/thumbnails/9.jpg)
Preemptive Vs non preemptive scheduling
• Preemptive scheduling– Task execution is preempted and later resumed– Why? To execute a higher priority task
– Priorities can be fixed or dynamic
• Non preemptive scheduling– once a task is started, it completes execution– less overhead due to less context switches
![Page 10: Real Time Operating Systems](https://reader030.fdocuments.us/reader030/viewer/2022020320/568143ff550346895db091e0/html5/thumbnails/10.jpg)
Multitasking
• Multitasking is not perfect– High priority tasks hog resources and
starve low priority tasks– Low priority tasks share a resource with
high priority tasks and block high priority task
• How does a RTOS deal with some of these issues– Priority Inheritance
![Page 11: Real Time Operating Systems](https://reader030.fdocuments.us/reader030/viewer/2022020320/568143ff550346895db091e0/html5/thumbnails/11.jpg)
Types of RTOS
• Hard Real- Time – complete a critical task within a guaranteed
amount of time– catastrophe. Example?
• Soft Real-Time– Deadlines may be missed occasionally– not safety critical. Example?
![Page 12: Real Time Operating Systems](https://reader030.fdocuments.us/reader030/viewer/2022020320/568143ff550346895db091e0/html5/thumbnails/12.jpg)
Development process• Use the host to
– edit, compile, and build application programs
– configure the target
• At the target embedded system, use tools to – load, execute, debug, and monitor
(performance and timing)
![Page 13: Real Time Operating Systems](https://reader030.fdocuments.us/reader030/viewer/2022020320/568143ff550346895db091e0/html5/thumbnails/13.jpg)
Some popular RTOS
• LynxOS: LynuxWorks Inc.San Jose
• Chimera: Carnegie Mellon UniversityPittsburgh
• VxWorks: Wind River Systems Inc. Alameda, Calif.
• Maruti: University of Maryland College Park, Md.
![Page 14: Real Time Operating Systems](https://reader030.fdocuments.us/reader030/viewer/2022020320/568143ff550346895db091e0/html5/thumbnails/14.jpg)
VxWorks• A product of Wind River• Most popular RTOS for embedded systems• Current version in market is VxWorks 5.4• 1800 API’s• ‘wind’ microkernel
– advanced networking support
– powerful file system
– I/O management, and C++
![Page 15: Real Time Operating Systems](https://reader030.fdocuments.us/reader030/viewer/2022020320/568143ff550346895db091e0/html5/thumbnails/15.jpg)
![Page 16: Real Time Operating Systems](https://reader030.fdocuments.us/reader030/viewer/2022020320/568143ff550346895db091e0/html5/thumbnails/16.jpg)
microkernel• Supports
– fast multitasking
– interrupt support, and both preemptive and round-robin scheduling
– provides efficient intertask communication mechanisms
• message queues and pipes
• sockets and remote procedure calls
• signals
![Page 17: Real Time Operating Systems](https://reader030.fdocuments.us/reader030/viewer/2022020320/568143ff550346895db091e0/html5/thumbnails/17.jpg)
microkernel
• Several types of semaphores– binary, – counting– mutual exclusion with priority inheritance
• 256 priorities
• POSIX compliant
![Page 18: Real Time Operating Systems](https://reader030.fdocuments.us/reader030/viewer/2022020320/568143ff550346895db091e0/html5/thumbnails/18.jpg)
Microkernel features (cont.)• High scalability
• Incremental linking and loading of components
• Fast, efficient interrupt and exception handling
• Optimized floating-point support
• Dynamic memory management
• System clock and timing facilities
![Page 19: Real Time Operating Systems](https://reader030.fdocuments.us/reader030/viewer/2022020320/568143ff550346895db091e0/html5/thumbnails/19.jpg)
A note on POSIX
• Portable Operating System Interface• set of standards under ISO/ IEEE
charter• POSIX standard 1003.1b, (formerly
called 1003.4) for RTOS• makes it easier to move applications
from one operating system to another.
![Page 20: Real Time Operating Systems](https://reader030.fdocuments.us/reader030/viewer/2022020320/568143ff550346895db091e0/html5/thumbnails/20.jpg)
Networking facilities• first real-time operating system to integrate
industry-standard TCP/IP networking facilities
• Environments: ATM, SMDS, frame relay, ISDN, SS7, X.25, IPX/SPX, AppleTalk
![Page 21: Real Time Operating Systems](https://reader030.fdocuments.us/reader030/viewer/2022020320/568143ff550346895db091e0/html5/thumbnails/21.jpg)
Networking facilities (cont.)• VxWorks TCP/IP stack, which supports the
latest Berkeley networking features, including:
IP, IGMP, CIDR, TCP, UDP, ARP
RIP v.1/v.2
Standard Berkeley sockets and zbufs (a.k.a., zero-copy sockets)
NFS client and server, ONC RPC
Point-to-point protocol (PPP)
BOOTP, DNS, DHCP, TFTP
FTP, rlogin, telnet, rsh
![Page 22: Real Time Operating Systems](https://reader030.fdocuments.us/reader030/viewer/2022020320/568143ff550346895db091e0/html5/thumbnails/22.jpg)
Fast, flexible I/O and local file system
• POSIX asynchronous I/O and directory handling
• SCSI support
• MS-DOS compatible file system
• TrueFFS flash file system
• ISO 9660 CD-ROM file system
![Page 23: Real Time Operating Systems](https://reader030.fdocuments.us/reader030/viewer/2022020320/568143ff550346895db091e0/html5/thumbnails/23.jpg)
Supported targets• 80x86 and Pentium
• MIPS
• SPARC
• NEC V8xx
• M32 R/D
• RAD6000
• TriCore
– (and more..)
![Page 24: Real Time Operating Systems](https://reader030.fdocuments.us/reader030/viewer/2022020320/568143ff550346895db091e0/html5/thumbnails/24.jpg)
Tornado• An IDE for VxWorks• From Wind River• Latest version is Tornado 2.2• Run time component is VxWorks• integrated simulator, project facility,
compiler, debugger, system browser, and many other tools to improve software development
![Page 25: Real Time Operating Systems](https://reader030.fdocuments.us/reader030/viewer/2022020320/568143ff550346895db091e0/html5/thumbnails/25.jpg)
Applications of VxWorks
• Mars Pathfinder mission.
• Nortel: Magellan Passport Enterprise Network Switch
• Computer Industry: Networking Switches, Routers, RAID Data Storage
• Transportation Industry: ABS, Realtime Suspension, Traffic Control Systems
![Page 26: Real Time Operating Systems](https://reader030.fdocuments.us/reader030/viewer/2022020320/568143ff550346895db091e0/html5/thumbnails/26.jpg)
References
– VxWorks programmers guide– Real Time Systems. Jane W.S. Liu. Prentice
Hall – "Dynamic Scheduling of Hard Real Time
Applications in Open Systems Environment" Z. Deng, Jane W.S. Liu and J. Sun. 17th IEEE Real Time Systems Symposium.
– comp.os.vxworks Frequently Asked Questions [http://www.landfield.com]