NOC:Introduction to Operating Systems


Lecture 1 - Intro to the Course


Lecture 2 - Introduction to OS


Lecture 3 - PC Hardware


Lecture 4 - From Programs to Processes


Lecture 5 - Sharing the CPU


Lecture 6 - Introduction


Lecture 7 - Virtual Memory


Lecture 8 - MMU Mapping


Lecture 9 - Segmentation


Lecture 10 - Memory Management in xv6


Lecture 11 - PC Booting


Lecture 12 - Week 3 Introduction


Lecture 13 - Create Execute and Exit from Processes


Lecture 14 - System Calls for Process Management


Lecture 15 - Interrupts


Lecture 16 - Interrupt Handling


Lecture 17 - Software Interrupts and System calls


Lecture 18 - CPU Context switching


Lecture 19 - CPU Scheduling


Lecture 20 - Priority Based Scheduling Algorithms


Lecture 21 - Multi-Processor Scheduling


Lecture 22 - Scheduling in Linux


Lecture 23 - Completely Fair Scheduling


Lecture 24 - Inter Process Communication


Lecture 25 - Synchronization


Lecture 26 - Software solutions for critical sections


Lecture 27 - Bakery Algorithm


Lecture 28 - Hardware Locks


Lecture 29 - Mutexes


Lecture 30 - Semaphores


Lecture 31 - Dining Philosophers Problem


Lecture 32 - Deadlocks


Lecture 33 - Dealing with Deadlocks


Lecture 34 - Threads - Part 1


Lecture 35 - Threads - Part 2


Lecture 36 - Operating system security


Lecture 37 - Information Flow policies


Lecture 38 - Buffer Overflows


Lecture 39 - Preventing Buffer Overflow Attacks