Operating System for Computational Devices Syllabus

 Operating System for Computational Devices
1. Introduction and Overview of OS  
……


Operating systems: Definition, objective and function of OS, the history and evolution of OS, characteristics 
of modern OS, application scenarios, organization of a computer system, operational view of a computing 
system with resources like processor, memory, input and output, issues in resource management, a bare-
bone operating system, introduction to the issues in communication with devices, kernel and shell of an 
operating system, processes, file and system calls, layered Vs monolithic OS. Kernel architecture: User and 
kernel mode of operation, System calls, process states, kernel operations, design of a scheduler.  

2. File Systems and Management  

File systems: What is a file, user view of files, file types and file operations, file types in Unix/Linux and 
Microsoft, file operation commands, file access rights, file storage management, Inode or FAT structure, file 
control blocks, root file system, directory and file paths, blocks, impact of block size selection, contiguous 
allocation, chained and indexed allocations, Impact of allocation policy on fragmentation, anatomy of disk 
address translation, mapping file blocks on the disk platter, cylinder, file related system services, disk access 
control and scheduling  

3. Process Management  

Process, threads, task, Implicit and explicit tasking, processor utilization, multi-processing and time sharing, 
response time., process relationship, process state, process state transitions, process scheduling, short-term 
and long term schedules, non-pre-emptive and pre-emptive scheduling policies, time slice, CPU scheduling 
policies like FCFS, SJF etc. Gantt charts and parameters to compare policy performance, context switching 
of process state information.  

4. Memory Management  

Motivation, when and where primary and secondary memory management is needed, compiled code and 
memory relocation, linking and loading, processes and primary memory management, static and dynamic 
partitioned using MFT and MVT algorithms, memory allocation policies, critique of various policies like first 
fit,  best  fit,  internal  and  external  fragmentation,  secondary  memory  management,  fixed  and  variable 
partitions, virtual memory concept, paging and page replacement policies, page faults, thrashing, hardware 
support for paging, segmentation, segmentation with paging  

5. Input Output Management  

Issues  in  human  centric,  device  centric  and  computer  centric  IO  management,  input  output  modes, 
programmed  IO,  polling,  interrupt  mode  of  IO,  various  types  of  interrupts,  interrupt  servicing,  priority 
interrupts, interrupt vectors, direct memory access (DMA) mode of transfer, setting up DMAs, device drivers, 
interrupt handling using device drivers, buffer management, device scheduling, disk scheduling algorithms 
and policies.  

6. Resource Sharing and Management  

Shared  resources,  resource  allocation  and  scheduling,  resource  graph  models,  deadlocks,  deadlock 
detection,  deadlock  recovery,  deadlock  avoidance,  deadlock  prevention  algorithms,  mutual  exclusion, 
semaphores, wait and signal procedures.

7. Interprocess Communication 
Spawning a new process, parent and child processes, assigning a task to child processes, need for
communication between processes, modes of communication, pipes, shared files, shared memory, message
based IPC, signals as IPC, the distributed computing environment. 
8. Real Time Operating Systems 
Introduction to Real time systems and Real Time Operating Systems, characteristics of real-time operating
systems, classification of real time operating systems, services, goals, structure, features of RTOS,
architectures of real-time operating systems, micro kernels and monolithic kernels, tasks in RTOS,
performance measures, estimating program runtimes, task assignment, scheduling in RTOS, rate monotonic
scheduling, priority inversion, task management, race condition, inter-task communication, applications of
real time systems, overview and comparison of various RTOS – LIKE Vx works, QNX, RT Linux, Monta Vista,
Nucleus Window CE, Symbian, Psos, Introduction to Mobile and Embedded Operating Systems, RTOS for
hand-held devices.
References 
1.  Applied Operating System Concepts, 1st ed. Silberschatz, Galvin and Gagne, John Wiley Publishers. 
2.  Operating System Concepts, 2nd
 Edition, Milenekovic, McGraw Hill. 
3.  An introduction to Operating System, Dietel, Addision Wesley. 
4.  Modern Operating Systems, Tanenbaum., PHI 
5.  Operating System, 4th
 Edition, William Stallings, Pearson, 
6.  Real Time Operating System, Barr M. 
7.  Real-Time Systems, Jane Liu, Pearson Ed. Asia 
8.  Real -Time Systems, Krishna and Shin, McGraw Hill International.