Operating System
Operating System
As a core subject of Computer Engineering/Information Technology, this course enables to understand importance of Operating System, its functionalities to manage resources of Computer and Peripherals, program development and its execution. Student will be made aware of Process Management, Memory Management, File Management and I/O Management in detail, which will be useful to them for Large Application Development in engineering field with emphasis given to Linux type of Open Source Operating System.
Introduction:
Basics of Operating Systems: Definition – Generations of
Operating systems – Types of Operating Systems, OS Service, System
Calls, OS structure: Layered, Monolithic, Microkernel Operating
Systems – Concept of Virtual Machine
Process Management
Processes: Definition , Process Relationship , Process states , Process
State transitions , Process Control Block ,Context switching – Threads
– Concept of multithreads , Benefits of threads – Types of threads
Process Scheduling: Definition , Scheduling objectives ,Types of Schedulers ,Scheduling criteria : CPU utilization, Throughput, Turnaround Time, Waiting Time, Response Time (Definition only) , Scheduling algorithms : Pre emptive and Non , pre emptive , FCFS – SJF – RR , Multiprocessor scheduling : Types , Performance evaluation of the scheduling.
Process Scheduling: Definition , Scheduling objectives ,Types of Schedulers ,Scheduling criteria : CPU utilization, Throughput, Turnaround Time, Waiting Time, Response Time (Definition only) , Scheduling algorithms : Pre emptive and Non , pre emptive , FCFS – SJF – RR , Multiprocessor scheduling : Types , Performance evaluation of the scheduling.
Interprocess Communication :
Race Conditions, Critical Section, Mutual Exclusion, Hardware
Solution, Strict Alternation , Peterson’s Solution, The Producer
Consumer Problem, Semaphores, Event Counters, Monitors, Message
Passing, Classical IPC Problems: Reader’s & Writer Problem, Dinning
Philosopher Problem etc., Scheduling , Scheduling Algorithms.
Deadlocks:
Definition,Deadlock characteristics , Deadlock Prevention ,
Deadlock Avoidance :banker’s algorithm, Deadlock detection and
Recovery.
Memory Management
Basic Memory Management: Definition ,Logical and Physical
address map , Memory allocation : Contiguous Memory allocation –
Fixed and variable partition – Internal and External fragmentation and
Compaction , Paging : Principle of operation – Page allocation –
Hardware support for paging –,Protection and sharing – Disadvantages
of paging.
Virtual Memory: Basics of Virtual Memory – Hardware and control structures – Locality of reference, Page fault , Working Set , Dirty page/Dirty bit – Demand paging ( Concepts only) – Page Replacement policies : Optimal (OPT) , First in First Out (FIFO), Second Chance (SC), Not recently used (NRU) and Least Recently used (LRU)
Virtual Memory: Basics of Virtual Memory – Hardware and control structures – Locality of reference, Page fault , Working Set , Dirty page/Dirty bit – Demand paging ( Concepts only) – Page Replacement policies : Optimal (OPT) , First in First Out (FIFO), Second Chance (SC), Not recently used (NRU) and Least Recently used (LRU)
I/O Management
Principles of I/O Hardware: I/O devices, Device controllers , Direct
memory access Principles of I/O Software: Goals of Interrupt handlers
, Device drivers , Device independent I/O software , Secondary-Storage
Structure: Disk structure ,Disk scheduling algorithm
Structure: Disk structure ,Disk scheduling algorithm
File Management
File concept, Aaccess methods, File types, File operation, Directory
structure, File System structure, Allocation methods (contiguous,linked,
indexed), Free-space management (bit vector, linked list, grouping),
directory implementation (linear list, hash table),efficiency &
performance.
Security & Protection
Security Environment, Design Principles Of Security, User
Authentication,
Protection Mechanism : Protection Domain, Access Control List
Unix/Linux Operating System
Development Of Unix/Linux, Role & Function Of Kernel, System
Calls, Elementary Linux command & Shell Programming, Directory
Structure, System Administration
Case study: Linux, Windows Operating System
Case study: Linux, Windows Operating System