You are on page 1of 6

Operating Systems

Syllabus

OPERATING SYSTEMS Aim: On completing this course the students should have acquired the following capabilities: 1. An appreciation of the role of an operating system. 2. Become aware of the issues in the management of resources like processor, memory and input-output. 3. Should be able to select appropriate productivity enhancing tools or utilities for specific needs like filters or version control. 4. Obtain some insight into the design of an operating system. Module 1: Introduction to OS (3) Operating systems: Application scenarios, kind of resource support needed by applications, what is an Operating System and what support is provided to run an application, hardware and software layers, 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 and file Module 2: File Systems and Management (4.5) File systems: What is a file, user view of files, file types and file operations, file types in Unix 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, mapping file blocks on the disk platter, cylinder, disk access control and scheduling Module 3: Process Management (6) Processor resource management: Explanation of processor as a resource, definition of a process, processor utilization, multi-processing and time sharing, response time, process state, process state transitions, process scheduling, short-term and long term schedules, non-pre-emptive and pre-emptive scheduling policies, time slice, policies like FCFS, SJF etc. Gantt charts and parameters to compare policy performance, context switching of process state information. Kernel architecture: User and kernel mode of operation, System calls, process states, kernel operations, design of a scheduler. Module 4: Memory Management (6) Motivation for memory management, when and where primary and secondary memory management is needed, compiled code and memory relocation, linking and loading, processes and primary memory management, 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

P.C.P.Bhat/Bangalore

V1/1-8-04/1

Operating Systems

Syllabus

Module 5: Input Output Management (4.5) 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. Module 6: Resource Sharing and Management (3) Shared resources, resource allocation and scheduling, resource graph models, deadlocks, deadlock detection, deadlock avoidance, deadlock prevention algorithms, mutual exclusion, semaphores, wait and signal procedures. Module 7: Interprocess communication (3) 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 distribute computing environment. Module 8: Real time Systems and Microkernels (3) Characteristics of real-time operating systems, classification of real-time systems, architectures of real-time systems, micro-kernels, scheduling in RTOS, rate monotonic scheduling, priority inversion, RTOS for hand-held devices. Module 9: OS and Security (3) Security breaches, types of attacks, attack prevention methods, security policy and access control, OS design considerations for security, access, policy and access control, OS design considerations for security, access control lists and OS support, internet and general network security. Module 10: OS primer (1.5) Basic file creation, editing and storage, accessing and organizing files, editor tools and file management operations. Module 11: Search, sort tools (1.5) Basic string search commands, find commands, commands to sort with their options. Module 12: AWK tool (1.5) AWK tool, AWK syntax, AWK grammar, examples for processing. Module 13: Shell scripts (1.5) Productivity tools, different shells, shell scripts Module 15: Make tool (1.5) When to use Make, how to use Make, macros abstractions and shortcuts.

P.C.P.Bhat/Bangalore

V1/1-8-04/2

Operating Systems

Syllabus

Module 16: Other useful tool (1.5) Tar and other utilities, file compression tools, image and multi-media file formats, profiling tools. Module 17: Version control tool (1.5) Need for version control, sccs, cvs and other version control tools. Module 18: Window metaphor and GUI (1.5) Need for a desktop metaphor, window systems and associated controls, graphical interface (GUI), Module 19: System administration (1.5) Administration tasks, user account management, start and shutdown procedures, setting up operational environment for a new user.

P.C.P.Bhat/Bangalore

V1/1-8-04/3

Operating Systems

Syllabus

Lecture Plan Modules 1. Introduction to Operating Systems Learning Units 1. Typical application scenarios and role of OS in resource management, operational view of a computer system and a bare-bone OS 2. Issues in resource management, OS shell and rationale for a OS kernel, the concept of support tools utilities to enhance user productivity 3. Concept of a file, user and system view of the files, file operations and elementary file commands. 4. File hierarchies and directories, file paths, more on file operations and command, access permissions, file control blocks and inode and FAT structures. 5. File organizations and allocation, internal and external fragmentation, physical lay out of files on disks. 6. Processor resource management: Explanation of processor as a resource, definition of a process, processor utilization, multi-processing and time-sharing, response times. 7. Process state, process state transitions, process scheduling, short-term and long-term schedules, nonpre-emptive and pre-emptive scheduling policies. 8. Scheduling policies like FCFS, SJF etc. Gantt charts and parameters to compare policy performance, context switching of process state information 9. Kernel Architecture: User and kernel mode of operation, System calls, process states, kernel operations, design of a scheduler 10. Motivation for memory management, when and where primary and secondary memory management is needed, compiled code and memory relocation, linking and loading, 11. Processes and primary memory management, memory allocation policies, critique of various policies like first fit, best fit, internal and external fragmentation 12. Secondary memory management, fixed and variable partitions, virtual memory concept, paging and page replacement policies 13. Page faults, thrashing, and hardware support for paging, TLB scheme segmentation, segmentation with paging. 14. Issues in human centric, device centric and computer centric IO management, input output modes, programmed IO, polling. Hours 1.5 Total Hours 3

1.5

2. File management

1.5 1.5

4.5

1.5 1.5 6

3. Process Management

1.5

1.5

1.5

4. Memory management

1.5

1.5

1.5

1.5 1.5 4.5

5. Input Output management

P.C.P.Bhat/Bangalore

V1/1-8-04/4

Operating Systems

Syllabus

15. interrupt mode of IO, various types of interrupts, 1.5 interrupt servicing, priority interrupts, interrupt vectors, direct memory access (DMA) mode of transfer, setting up DMAs 16. Device drivers, interrupt handling using device drivers, 1.5 buffer management, device scheduling, disk scheduling algorithms and policies 6. Resource sharing and 17. Shared resources, resource allocation and 1.5 management Scheduling, resource graph models. 18. Deadlocks, deadlock detection, deadlock avoidance, 1.5 prevention algorithms, mutual exclusion, semaphores, signal procedures. 7. Interprocess communicati 19. Spawning a new process, parent and child processes, 1.5 assigning a task to child processes, need for communication between processes 20. Modes of communication, pipes, shared 1.5 files shared memory, message based IPC, signals as IPC, the distributed computing environment. 8. Real-time Systems and 21. Characteristics of real-time operating systems, 1.5 Micro-kernels classification of real-time systems, architectures of real-time systems, micro-kernels devices State 22. Scheduling in RTOS, rate monotonic 1.5 scheduling, priority inversion, RTOS for Hand-held Devices. 9. OS and Security 23. Security breaches, types of attacks, attack prevention 1.5 security policy and Access control OS design conside security. 24. Access control lists and OS support, internet and genera security 10. OS primer 25. Basic file creation, editing and storage, 1.5 accessing and organizing files, editor tools and file management operations 11. Search, Sort tools 26. Basic string search commands, find commands, 1.5 commands to sort with their options. 12. AWK tool 27. AWK tool, AWK syntax, AWK grammar, examples for 1.5 processing 13. Shell scripts 28. Productivity tools, different shells, shell scripts 1.5 14. Make tool 29. When to use Make, how to use Make, macros 1.5 abstractions and short cuts 15. Other useful tools 30. Tar and other utilities, file compression tools, image and 1.5 multi-media file formats, profiling tools. 16. Version control tools 31. Need for version control, sccs, cvs and other version 1.5 control tools.

1.5

1.5 1.5 1.5 1.5 1.5 1.5

P.C.P.Bhat/Bangalore

V1/1-8-04/5

Operating Systems

Syllabus

17. Window metaphor 32. Need for a desk top metaphor, window 1.5 and GUI systems and associated controls, graphical interface (GUI) 18. System Administration 33. Administration tasks, user account management, 1.5 shutdown procedures, setting up operational environment for a new user.

1.5 1.5

P.C.P.Bhat/Bangalore

V1/1-8-04/6