Course Time Table:
Classes in Slot 2:
Monday 9.30-10.25, Tuesday 10.35-11.30, Thursday 11.35-12.30 (
Place:
LCC-12 (First Floor, new classroom complex) )
Office Hours: Wednesday 1.00-2.00 pm, Thursday 9.30-10.25 am. (
Place:
Room F-3 (First Floor, CSE building) )
Associated lab CS 377:
Wednesday 2.00 - 5.00 in Old Software Lab (Ground floor, Math+CSE bldg)
Teaching Assistants: Akanksha (akankshapatel@cse), Darshan (darshank@cse), Pararth (pararth@cse), Rahul (varshneya@cse), Senthilkumaran(kumaran@cse)
Text book:
D. M. Dhamdhere : Operating Systems---A concept-based approach,
Third Edition,
Tata McrGraw Hill, 2012.
Syllabus of the course
Introduction to Operating Systems. Interaction between the OS, computer system and user programs.
Process management---Creation and scheduling of processes, Process synchronization, Message Passing, Deadlocks.
Memory management---relocation and execution of programs, sharing of programs, Virtual memory management.
File systems---file organization, directory structures, file system reliability.Disk scheduling.
Security and Protection.
Typical credit distribution:
Quizzes (10%), Home Assignment (10%), Mid-sem (30%), End-sem (50%).
(Minor redistribution may be made depending on nature of home assignment.)
Honesty policy:
Highest standards of academic honesty would be enforced.
Students must not discuss
or copy in any evaluation unit---home assignment, quiz, exams, lab assignment, etc.
Even looking in the direction of someone's answerpaper during a written
quiz or exam would be
considered dishonest and would be dealt with accordingly.
Plan/log of lectures:
Lecture 1 (7 Jan 2013):
Introduction to the course.
Introduction to critical thinking skills.
Slides
Lecture 2 (8 Jan 2013):
Power of abstraction as a focusing tool.
Goal of an OS---effective utilization of a computer. Features of a computing environment.
Slides
Lecture 3 (10 Jan 2013):
Overhead of OS operation.
Fundamental tasks of an OS: 1. Program management and scheduling.
2. Resource management policies---partitioning of resources and pool-based allocation. Virtual resources.
3. Security and Protection.
Lecture 4 (14 Jan 2013):
Fundamental OS tasks (contd.): Security and Protection.
Fundamentals of OS operation---events and interrupts.
Lecture 5 (15 Jan 2013):
Overview of the course:
Fundamental topics---how the OS controls operation of the computer, and how programs
are managed, memory allocation and file systems.
Advanced topics---process synchronization and deadlocks, file system
efficiency and reliability, structure of an OS.
Fundamentals of computer architecture. User accessible registers and the PSW.
Lecture 6 (17 Jan 2013):
Privileged mode of the CPU. State of the CPU.
Memory hierarchy. Performance issues in memory hierarchies.
I/O organization. Operation of the DMA.
The interrupt action. Interrupt processing by OS.
Lecture 7 (21 January 2013):
Masking of interrupts. Interrupt servicing. System calls.
Complete view of OS operation.
Lecture 8 (22 January 2013):
Operating system features for different computing environments---Performance measures in non-interactive and interactive environments.
Batch processing systems. Multiprogramming systems---architectural support.
Quiz 1
Lecture 9 (24 January 2013):
Multiprogramming operating systems---program mix and program priorities.
Lecture 10 (28 January 2013):
Program priorities in Multiprogramming---the timing chart. Throughput and
the degree of multiprogramming.
Time sharing systems. Real time systems.
Lecture 11 (29 January 2013):
Introduction to processes.
The process concept. Process states and state transitions.
Lecture 12 (31 January 2013):
Process states (Contd.) Swapping states.
Process management: Process control block and process environment.
Switching between processes.
Lecture 13 (4 February 2013):
Process states and event management.
Process interactions---data sharing, control synchronization.
Introduction to threads---concept and benefits.