Professional Documents
Culture Documents
Course Title L T P C
Code
2161EC121 REAL TIME OPERATING SYSTEM 4 0 0 4
a) Course Category
Program Core
b) Preamble
This course introduces the concept and development procedures of real-time operating
system for a selected embedded architecture.
c) Prerequisite
Nil
d) Related Courses
Nil
e) Course Outcome
Upon the successful completion of the course, student will be able to:
Knowledge Level
(Based on revised
CO Nos. Course Outcomes
Bloom’s
Taxonomy)
f) Course Content
UNIT I RTOS INTRODUCTION 12
Introduction to Operating System: Functions, Structure – Need for RTOS – RTOS Characteristics –
Kernel components – reentrant functions – foreground/background systems –interrupt
mechanism – bootloader – RTOS based system development process – RTOS porting.
Introduction to ARM Controllers – ARM7 Programming.
UNIT II TASK MANAGEMENT FUNCTIONS 12
Task structure – task types: kernel task, application task – task states – task priorities – context
switching – implementation on ARM7 Controllers: task structure, stack, context switch functions,
task wait list, setting/changing task priority, system task, task creation/deletion, delaying a task.
Task scheduling algorithms: preemptive, nonpreemptive, fixed priority, dynamic priority – RTOS
initialization – implementation on ARM7 Controllers: scheduler initialization, scheduler
suspend/resume, round robin scheduler, preemptive, nonpreemptive, Earliest Deadline First
scheduler, Rate Monotonic Scheduler.
Need for communication – Inter task communication objects: mailbox, message queue – mailbox
management functions – message queue management functions – implementation on ARM7
Controllers: memory partitions, mailbox waiting list, mailbox creation/deletion, waiting for
message, sending a message, reading a message, obtaining status of mailbox.
Total 60 Hours
g) Learning Resources
Textbooks
1. J.J.Labrosse, “MicroC/OS-II: The Real Time Kernel”, Taylor & Francis, 2002.
2. A.N.Sloss, D.Symes and C.Wright, “ARM System Developer’s Guide – Designing and
Optimizing System Software”, Elsevier, 2014.
References
1. B.W.Kernighan and D.Ritchie, “C Programming Language”, Prentice Hall, 1998.
2. J.J.Labrosse, “Embedded Systems Building Blocks: Complete and Ready-to-use Modules in C”,
Taylor & Francis, 2000.