VE4008 Real Time Operating Systems Syllabus:

VE4008 Real Time Operating Systems Syllabus – Anna University PG Syllabus Regulation 2021

COURSE OBJECTIVES:

 To learn about significance and usage of Real Time Operating System
 To learn about different scheduling strategies and optimization principles
 To learn about the resource allocation or sharing process involved in RTOS
 To study about the different firmware and tools related to RTOS development
 To design and develop an innovative real time embedded system

UNIT I REAL TIME EMBEDDED SYSTEMS

Introduction – History of Real Time Systems And Embedded Systems – Real Time Services and Standards – System Resources – Analysis – Service Utility – Scheduling Classes – Cyclic Executive – Scheduler Concepts- Real Time Operating System – Thread Safe Reentrant Functions

UNIT II RESOURCES AND SERVICES

Processing – Resources – Memory –Multi resource Services : Blocking, Deadlock, Livelock, Critical Sections To Protect Shared Resources, Priority Inversion, Power Management And Processor Clock Modulation – Soft Real Time Services : Missed Deadlines, Quality of Service, Alternatives To Rate Monotonic Policy, Mixed Hard and Soft Real Time Services

UNIT III REAL TIME EMBEDDED COMPONENTS

Hardware Components – Firmware Components – RTOS System Software – Software Application Components – Traditional Hard Real Time Operating Systems : Asymmetric Multicore Processing And Symmetric Multi-Core Processing – Processor Core Affinity – SMP Support Models – RTOS Hypervisors – Open Source Real Time Operating Systems

UNIT IV INTEGRATING EMBEDDED LINUX

Integrating Embedded Linux Into Real Time Systems – Debugging Components – Performance Tuning – High Availability And Reliability Design – Hierarchical Approaches for Fail-Safe Design.

UNIT V CASE STUDIES

System Life Cycle – Continuous Media Applications – Video and Audio Processing – Robotic Applications – Computer Vision Applications

TOTAL: 45 PERIODS

PRACTICAL EXERCISES: 30 PERIODS

Laboratory Exercises On Task Scheduling
1. Implement a Linux process that is executed at the default priority for a user-level application and waits on a binary semaphore to be given by another application. Run this process and verify its state using the ps command to list its process descriptor. Now, run a separate process to give the semaphore causing the first process to continue execution and exit. Verify completion.
2. Create An Application That Creates Two Tasks That Wait On a Timer Whilst the Main Task Loops.
3. Develop an Applications Using Linux
4. Design of Plant Control System

TOTAL:45+30=75 PERIODS

COURSE OUTCOMES:

On successful completion of this course, students will be able to
CO1: complete understanding of scheduling algorithm and process
CO2: better understanding on firmware and tools related to the development of RTOS
CO3: to be able to design and develop an embedded system with RTOS functionality
CO4: to be able to design and develop the systems in Linux environments
CO5: to be able to develop large real-time embedded systems

REFERENCES:

1. Sam Siewert, John Pratt, “Real-Time Embedded Components and Systems With Linux And Rtos”, Mercury Learning And Information Llc, 2016.
2. Jonathan W. Valvano, “Embedded Systems: Real Time Operating Systems for ARM Cortex-M Microcontrollers”, Createspace Independent Publishing Platform, Fourth Edition, 2017.
3. Giorgio C. Buttazzo, “Hard Real-Time Computing Systems – Predictable Scheduling Algorithms And Applications”, Springer Science+Buisness Media, LLC, Third Edition, 2011.
4. Albert M. K. Cheng, “Real-Time Systems – Scheduling, Analysis And Verification”, a John Wiley & Sons Inc Publication, 2002.
5. Wang K.C., “Embedded And Real Time Operating System”, Springer, 2017