Operating System

Processes, scheduling, memory and deadlocks, with the numericals companies ask.

About Operating System

An operating system (OS) is the software that manages a computer's hardware and lets programs share it: Linux, Windows and macOS are examples. It decides which process runs on the CPU, how memory is split between programs, and how files are stored.

The core ideas are processes and threads, CPU scheduling, synchronization, deadlocks, memory management and file systems.

Why it matters for placements

OS is one of the three core CS subjects asked in almost every fresher technical round, often with numericals on scheduling and page replacement.

What you'll learn

8 topics · 27 lessons, each with practice

  • Explain the difference between a process and a thread, and context switching
  • Solve FCFS, SJF, priority and Round Robin scheduling numericals
  • Use mutexes and semaphores, and explain classic synchronization problems
  • Detect and avoid deadlocks, including the Banker's algorithm
  • Explain paging, virtual memory and page replacement with worked examples

Foundation Foundation

Take Foundation test

Required. Enough to clear online assessments and service-company interviews.

Introduction

Not started

Every program you write runs on top of an operating system, and it decides what your code is allowed to touch. This topic gives you the vocabulary (kernel, modes, system calls) that every later OS question builds on. "What is an OS?" and "What is a system call?" are common opening questions in fresher interviews.

Processes & Threads

Not started

The OS runs many programs at once by treating each as a process it can pause and resume. This topic explains how that works and when threads are a cheaper way to do several things at once. Process vs thread is one of the most asked OS questions in placement interviews.

CPU Scheduling

Not started

There are usually more ready processes than CPUs, so the OS must keep choosing who runs next. Scheduling algorithms trade fairness, response time and throughput against each other. Gantt chart numericals on waiting and turnaround time are among the most common OS questions in online tests.

Interview Ready Interview Ready

Take Interview Ready test

Recommended. Enough for technical rounds at good product companies.

Synchronization

Not started

When processes or threads share data, the result can depend on who runs first, and bugs appear only sometimes. Synchronization tools like locks and semaphores make shared access safe and ordered. Interviewers love this topic because the classic problems test whether you can spot races and deadlocks in real code.

Deadlocks

Not started

A deadlock freezes a set of processes forever, each holding something another one needs. This topic shows when deadlock is possible and how an OS prevents, avoids or detects it. Expect the four conditions in theory rounds and Banker's algorithm numericals in online tests.

Memory Management

Not started

Many processes share one physical RAM, and each must think it has its own clean address space. Memory management maps the addresses a program uses to real memory while wasting as little as possible. Address translation and fragmentation questions show up in almost every OS test.

Virtual Memory

Not started

Programs often need more memory than is free, and most of their pages sit unused anyway. Virtual memory keeps only the needed pages in RAM and fetches the rest from disk on demand. Page replacement traces and effective access time numericals are favourites in placement tests.

Advanced Advanced

Take Advanced test

Optional. For top product companies. Never counted against your readiness.

File Systems & Disk Scheduling

Not started

A disk is just numbered blocks, and the file system decides which blocks make up each file. Disk scheduling then orders read requests so the head moves as little as possible. Both turn up as numericals in tougher OS rounds and GATE-style tests.