1

Operating Systems. Instructor: Prof. Sorav Bansal, Department of Computer Science, IIT Delhi.

FREE
This course includes
Hours of videos

1111 years

Units & Quizzes

40

Unlimited Lifetime access
Access on mobile app
Certificate of Completion

The course will provide an introduction to Operating Systems (OS), their design and implementation. We will discuss the goals of an OS, and some successful and not-so-successful OS designs. We will also discuss the following OS services in detail: thread scheduling, security, virtual memory, file system. We will understand the OS concepts practically by directly studying the source code of a small but realistic OS. (from nptel.ac.in)

Course Currilcum

  • Introduction to UNIX System Calls Unlimited
  • Lecture 02 – Introduction to UNIX System Calls (cont.) Unlimited
  • Lecture 03 – Threads, Address Spaces, Filesystem Devices Unlimited
  • Lecture 04 – PC Architecture Unlimited
  • Lecture 05 – x86 Instruction Set, GCC Calling Conventions Unlimited
  • Lecture 06 – Physical Memory Map, I/O, Segmentation Unlimited
  • Lecture 07 – Segmentation, Trap Handling Unlimited
  • Lecture 08 – Traps, Trap Handlers Unlimited
  • Lecture 09 – Kernel Data Structures, Memory Management Unlimited
  • Lecture 10 – Segmentation Review, Instruction to Paging Unlimited
  • Lecture 11 – Paging Unlimited
  • Lecture 12 – Process Address Spaces using Paging Unlimited
  • Lecture 13 – Translation Lookaside Buffer, Large Pages, Boot Sector Unlimited
  • Lecture 14 – Loading the Kernel, Initializing the Page Table Unlimited
  • Lecture 15 – Setting up Page Tables for User Processes Unlimited
  • Lecture 16 – Processes in Action Unlimited
  • Lecture 17 – Process Structure, Context Switching Unlimited
  • Lecture 18 – Process Kernel Stack, Scheduler, Fork, Context Switch, Process Control Block Unlimited
  • Lecture 19 – Creating the First Process Unlimited
  • Lecture 20 – Handling User Pointers, Concurrency Unlimited
  • Lecture 21 – Locking Unlimited
  • Lecture 22 – Fine-grained Locking and its Challenges Unlimited
  • Lecture 23 – Locking Variations Unlimited
  • Lecture 24 – Condition Variables Unlimited
  • Lecture 25 – Multiple Producer, Multiple Consumer Queue; Semaphores; Monitors Unlimited
  • Lecture 26 – Transactions and Lock-free Primitives, Read/Write Locks Unlimited
  • Lecture 27 – Synchronization in xv6: Acquire/Release, Sleep/Wakeup, Exit/Wait Unlimited
  • Lecture 28 – More Synchronization in xv6: Kill, IDE Device Driver; Introduction to Demand Paging Unlimited
  • Lecture 29 – Demand Paging; Introduction to Page Replacement Unlimited
  • Lecture 30 – Page Replacement, Thrashing Unlimited
  • Lecture 31 – Storage Devices, Filesystem Interfaces Unlimited
  • Lecture 32 – Filesystem Implementation Unlimited
  • Lecture 33 – Filesystem Operation Unlimited
  • Lecture 34 – Cash Recovery and Logging Unlimited
  • Lecture 35 – Logging in Linux Ext3 Filesystem Unlimited
  • Lecture 36 – Protection and Security Unlimited
  • Lecture 37 – Scheduling Policies Unlimited
  • Lecture 38 – Lock-free Multiprocessor Coordination, Read-Copy-Update Unlimited
  • Lecture 39 – Microkernel, Exokernel, Multikernel Unlimited
  • Lecture 40 – Virtualization, Cloud Computing, Technology Trends Unlimited