|
via Udemy |
Go to Course: https://www.udemy.com/course/operating-system-concepts-2023/
Updates:All lectures' slides are uploaded. (September 21, 2023)Several supplementary lectures' slides are uploaded. (September 21, 2023)Several assignments with step-by-step animated solutions are uploaded. (September 20, 2023)This course teaches the students standard operating systems structures. The students are exposed to topics such as concurrency and real-time considerations. The course discusses how common operating systems such as Unix and Windows are designed and implemented. This course spans the following topics: processes, threads, inter-process communication, synchronization (critical regions, semaphores, mutex, deadlocks), scheduling, memory management, i/o systems, and file systems.This course covers the following topics in detail: Operating system definition, simple batch systems, multiprogramming, time-sharing, personal computer systems, parallel systems, introduction to process, process scheduling, operations on processes, cooperating processes, interprocess communications, interrupts, process synchronization, critical-section problem, atomic instructions, semaphores, synchronization problems, CPU scheduling, scheduling criteria and algorithms, multiple processes and real-time scheduling, algorithm evaluation, deadlocks, characterization and handling of deadlocks, deadlock prevention avoidance and detection, deadlock recovery, memory management and virtual memory, address spaces, swapping, memory allocation, paging, segmentation.After completing this course, the studentBe able to explain what an operating system and the role is it different parts of the system play.Be able to explain the structure of operating systems, applications, and the relationship between them.Be able to explain and make use of the services provided by operating systemsExposure to details of major OS conceptsWrite programs (Implement) various parts of operating systems.Section 1: IntroductionLecture 1 Introduction to Operating SystemsSection 2: Fundamentals of Computers and Operating SystemsLecture 2 Computer System StructuresLecture 3 Operating System StructuresSection 3: Processes and CPU SchedulingLecture 4 ProcessesLecture 5 Processes - long and short schedulers, context switch, process creation and termLecture 6 Round Robin Algorithm with ExamplesLecture 7 Cooperative ProcessesLecture 8 CPU SchedulingLecture 9 First Come First Served (FCFS) and Shortest Job First (SJF)Lecture 10 Round Robin CPU SchedulingLecture 11 Round Robin ExamplesLecture 12 Priority SchedulingLecture 13 Priority Scheduling ExamplesSection 4: Process SynchronizationLecture 14 Process Synchronization - Peterson and Bakery AlgorithmsLecture 15 Synchronization HardwareLecture 16 SemaphoresLecture 17 Classical problems of synchronizationSection 5: Memory ManagementLecture 18 Memory Management Part1Lecture 19 SwappingLecture 20 Memory Management - PagingLecture 21 Page Replacement AlgorithmsSection 6: DeadlocksLecture 22 Deadlocks - Resource Allocation GraphLecture 23 Deadlocks Avoidance AlgorithmsLecture 24 Safety Algorithm ExampleLecture 25 Deadlock Detection Algorithm ExampleLecture 26 Deadlock-Quiz-solution