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.
Sanjay Sinalkar is a founder of learnnowit.com as an the educational experimental website.He is passionate about blogging and Internet Technology.He love to explore new technologies and love to do coding.