Operating System Concepts

CPU Scheduling, Memory Management and Deadlocks

Ratings 4.51 / 5.00
Operating System Concepts

What You Will Learn!

  • You will become familiar with the core concepts of Operating Systems
  • Understand how Operating Systems work
  • Understand how a process is created
  • Understand the various scheduling algorithms we have in Operating Systems
  • Understand memory allocation strategies used by operating systems

Description

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 student

  • Be 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 systems

  • Exposure to details of major OS concepts

  • Write programs (Implement) various parts of operating systems.

Section 1: Introduction

  • Lecture 1 Introduction to Operating Systems

Section 2: Fundamentals of Computers and Operating Systems

  • Lecture 2 Computer System Structures

  • Lecture 3 Operating System Structures

Section 3: Processes and CPU Scheduling

  • Lecture 4 Processes

  • Lecture 5 Processes - long and short schedulers, context switch, process creation and term

  • Lecture 6 Round Robin Algorithm with Examples

  • Lecture 7 Cooperative Processes

  • Lecture 8 CPU Scheduling

  • Lecture 9 First Come First Served (FCFS) and Shortest Job First (SJF)

  • Lecture 10 Round Robin CPU Scheduling

  • Lecture 11 Round Robin Examples

  • Lecture 12 Priority Scheduling

  • Lecture 13 Priority Scheduling Examples

Section 4: Process Synchronization

  • Lecture 14 Process Synchronization - Peterson and Bakery Algorithms

  • Lecture 15 Synchronization Hardware

  • Lecture 16 Semaphores

  • Lecture 17 Classical problems of synchronization


Section 5: Memory Management

  • Lecture 18 Memory Management Part1

  • Lecture 19 Swapping

  • Lecture 20 Memory Management - Paging

  • Lecture 21 Page Replacement Algorithms


Section 6: Deadlocks

  • Lecture 22 Deadlocks - Resource Allocation Graph

  • Lecture 23 Deadlocks Avoidance Algorithms

  • Lecture 24 Safety Algorithm Example

  • Lecture 25 Deadlock Detection Algorithm Example

  • Lecture 26 Deadlock-Quiz-solution

Who Should Attend!

  • Computer Engineering and Computer Science Students
  • Anybody who wants to pursue a career in Computer Science
  • If you are preparing for exams like GATE , PGEE , BITS HD , ISRO ,..etc

TAKE THIS COURSE

Tags

Subscribers

63

Lectures

26

TAKE THIS COURSE