Introduction to operating systems (OS): Introduction to OS, Functions of OS, General purpose operating systems functionalities, system calls, architecture, OS for single processor and multiprocessor systems, User mode and Kernel mode operations, Kernel services.
Task timer and memory management: Tasks, task states and transitions, task attributes, types, task control block, task creation, deletion, and task priorities. Introduction to real-time scheduling, Kernel, Scheduler, Dispatcher, and preemption-context switching. Task scheduling, uniprocessor and multiprocessor scheduling algorithms.Inter task communication and synchronization: Common resource sharing problem, critical section, Lock/Unlock, Semaphores, Mutex, Mailbox, Queue, Pipes, Deadlock, methods for handling deadlocks, deadlock prevention, avoidance and recovery solutions.
Timer and memory management. Exception, interrupt handling. Priority inversion problem and solution. Introduction to device IO management-device driver, Familiarization of FreeRTOS – architecture, porting. Introduction to Embedded Linux.Real time applications.