Objectives
The aim of lecture topics of this course is to introduce basic concepts in operating systems, and how different choices in Operating System design and implementation have effects on applications, and user environments.
[Lectures] [Lecture Notes] [Exercises]
BS level course: topical lectures (video Urdu/Englsih), exercises(English) and lecture notes(Englih). Better to first read notes of a lecture and then view lecture.
Have already taken operating system course ?
You may like to refresh concepts of a specific topic of operating system course:
Try to solve questions in Exercises of a specific lecture topic, if done easily, Good skip lecture topic.
otherwise read lecture notes, or view lecture of the topic.
Lectures
- Operating System - An overview - Operating System types with historical perspective
- Memory Management Basics - Memory Addressing - Logical to Physical Address Transaltion
- Memory Management - Fixed/Variable partitions Allocation
- Paging - non-contiguous allocation and Address Translation
- Segmentation; Paged segmentation; Multilevel paging
- Virtual Memory - Demand paging. Virtual to Physical Address Translation
- Page Replacement Algorithms
- Process and Threads
- Processor Scheduling Policies
- Virtual Round Robin, Multilevel Feedback Queues
- Process coordination - Critical Section Problem - Software Solution
- Hardware based Solutions of Critical Section Problem
- Semaphores for Mutual Exclusion & Synchronization - N-Process Mutual Excluion
- Use of Semaphores for Producer-Consumer Problem
- Use of Semaphores for Reader/Writer Problems - Reader's Priority
- Use of Semaphores for Reader/Writer Problems - Writer's Priority
- Use of Semaphores for Dining-Philosophers-Problem
- Inter-Process Communication - Message Passing to solve Synchronization Issues
- Deadlocks Conditions - Prevention and Avoidance
- Deadlocks - Illustartion of Avoidance and Detection Algorithms and Recovery
- Information-Storage-Management-Disk Scheduling
- File System - File Organization, Access Methods, Disk Space Allocation
- File System - Functions, Implementation, Protection
Lecture Notes
- Operating System - An overview - Operating System types with historical perspective
- Memory Management Basics - Memory Addressing - Logical to Physical Address Transaltion
- Memory Management - Fixed/Variable partitions Allocation
- Paging - non-contiguous allocation and Address Translation
- Segmentation; Paged segmentation; Multilevel paging
- Virtual Memory - Demand paging. Virtual to Physical Address Translation
- Page Replacement Algorithms
- Processor Scheduling Policies
- Hardware based Solutions of Critical Section Problem
- Semaphores for Mutual Exclusion & Synchronization - N-Process Mutual Excluion
- Use of Semaphores for Reader/Writer Problems - Writer's Priority
- Use of Semaphores for Dining-Philosophers-Problem
- Inter-Process Communication - Message Passing to solve Synchronization Issues
- Deadlocks Conditions - Prevention and Avoidance
- Information-Storage-Management-Disk Scheduling
- File System - File Organization, Access Methods, Disk Space Allocation
Exercises
- Memory Management - Fixed/Variable partitions Allocation
- Paging - non-contiguous allocation and Address Translation
- Segmentation; Paged segmentation; Multilevel paging
- Page Replacement Algorithms
- Processor Scheduling Policies
- Process coordination - Critical Section Problem - Software Solution
- Semaphores for Mutual Exclusion & Synchronization - N-Process Mutual Excluion
Recommended Readings
- A. Silberschatz et al, Operating System Concepts, 9/e, Wiley, 2013
- W. Stallings, Operating Systems: Internal and Design Principles, 7/e, Prentice Hall, 2012
Acknowledgements
While teaching operating systems course at Quaid-i-Azam University, I enhanced my understating of operating systems from two main text books used for the course 'Operating System Concepts' by A. Silberschatz et al' and 'Operating Systems: Internal and Design Principles' by W. Stallings. Lecture notes are also prepared from these books listed as recommended readings for this course.
Exercises for lecture topics are mostly from course quizzes and exam papers at Quaid-i-Azam University, I am grateful to all students who solved those questions in exams and during lectures ask questions to clarify concepts of different topics.
For lecture presentations some images and animation ideas are taken from OS lecture presentations available at web.
I am grateful to Dr. Rabeeh Ayaz Abbasi (CS-department, Quaid-i-Azam University) for creating "CS-Concepts-hub" site repository and "Operating-System-Concepts" course repository and pages at github.com