LearnViz CompSci
Home / Learn / Operating Systems

πŸ–₯️ Operating Systems

Processes, memory, files, scheduling. 51 topics, from beginner to advanced.

An operating system manages the hardware of a computer and gives programs a safe, consistent environment. This area explains processes and threads, CPU scheduling, virtual memory, file systems and device input and output. These mechanisms are why many programs can run at once without interfering with each other.

Who this area is for

Students of systems programming, backend developers who debug performance issues, and anyone who wants to know what happens when they start a program.

Real-world use cases

Topics in Operating Systems

Beginner (17)

Intermediate (17)

Advanced (17)

How to study Operating Systems

Follow one process through its life: creation, scheduling, memory access, file input and output, and exit. On a Linux machine, watch real processes with top or ps while you read each topic. Draw the scheduling and paging examples by hand to check your understanding.

Frequently asked questions

What is the difference between a process and a thread?
A process has its own address space and resources. Threads inside one process share memory, which makes them lighter to create but requires careful synchronization.
What is virtual memory?
Virtual memory gives each process the illusion of its own large, private address space. The OS maps those addresses to physical memory and can move less-used pages to disk.
Why do operating systems use system calls?
System calls are the controlled entry points that let user programs request privileged services such as reading a file or creating a process. They protect the kernel from faulty or malicious code.
Why does an operating system need scheduling?
A computer has far more tasks than CPU cores, so the scheduler decides which task runs next. Good scheduling keeps the system responsive and shares the CPU fairly.
Is Linux or Windows a better subject for studying operating systems?
Linux is the common choice for study because its source code is open and its tools are scriptable. The concepts in this area apply to Windows, macOS and mobile systems too.

Open the interactive Operating Systems area Take the Operating Systems quiz

Other areas