NPTEL : Operating Systems (Computer Science and Engineering)

Co-ordinators : Prof. Sorav Bansal


Lecture 1 - Introduction to UNIX System Calls - Part 1

Lecture 2 - Introduction to UNIX System Calls - Part 2

Lecture 3 - Threads, Address Spaces, Filesystem Devices

Lecture 4 - PC Architecture

Lecture 5 - x86 Instruction Set, GCC Calling Conventions

Lecture 6 - Physical Memory Map, I/O, Segmentation

Lecture 7 - Segmentation, Trap Handling

Lecture 8 - Traps, Trap Handlers

Lecture 9 - Kernel Data Structures, Memory Management

Lecture 10 - Segmentation Review, Introduction to Paging

Lecture 11 - Paging

Lecture 12 - Process Address Spaces Using Paging

Lecture 13 - Translation Lookaside Buffer, Large Pages, Boot Sector

Lecture 14 - Loading the kernel, Initializing the Page table

Lecture 15 - Setting up page tables for user processes

Lecture 16 - Processes in action

Lecture 17 - Process structure, Context Switching

Lecture 18 - Process Kernel stack, Scheduler, Fork,Context-Switch, Process Control Block, Trap Entry and Return

Lecture 19 - Creating the first process

Lecture 20 - Handling User Pointers, Concurrency

Lecture 21 - Locking

Lecture 22 - Fine-grained Locking and its challenges

Lecture 23 - Locking variations

Lecture 24 - Condition variables

Lecture 25 - Multiple producer, multiple consumer queue; semaphores; monitors

Lecture 26 - Transcations and lock-free primitives read/write locks

Lecture 27 - Synchronization in xv6: acquire/release, sleep/wakeup, exit/wait

Lecture 28 - More synchronization in xv6: kill, IDE device driver; introducion to Demand Paging

Lecture 29 - Demand Paging; Introduction to Page Replacement

Lecture 30 - Page Replacement, Thrashing

Lecture 31 - Storage Devices, Filesystem Intrerfaces

Lecture 32 - File System Implementation

Lecture 33 - File System Operation

Lecture 34 - Cash Recovery and Logging

Lecture 35 - Logging in Linux ext3 filesystem

Lecture 36 - Protection and Security

Lecture 37 - Scheduling Policies

Lecture 38 - Lock-free multiprocessor coordination, Read-Copy-Update

Lecture 39 - Microkernel, Exokernel, Multikernel

Lecture 40 - Virtualization, Cloud Computing, Technology Trends