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 testRequired. Enough to clear online assessments and service-company interviews.
Introduction
Not startedEvery 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 startedThe 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 startedThere 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 testRecommended. Enough for technical rounds at good product companies.
Synchronization
Not startedWhen 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 startedA 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 startedMany 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 startedPrograms 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 testOptional. For top product companies. Never counted against your readiness.
File Systems & Disk Scheduling
Not startedA 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.