Question

What is an operating system actually doing?

Vault Verified
Curated Intelligence
Definitive Source
Answer

An operating system sits between your hardware and your applications, managing resources so that programs do not have to know about the specific machine they run on — and so that they cannot interfere with each other.

Its main jobs:

Process scheduling. Your computer runs far more programs than it has processor cores. The scheduler rapidly switches between them — thousands of times per second — creating the illusion that everything runs simultaneously. It decides what runs next based on priority, fairness and whether a process is waiting for something.

Memory management. Each process is given a virtual address space that looks like a private, contiguous block of memory. The OS and the processor's memory management unit translate those virtual addresses to physical ones. This achieves two things: processes cannot read each other's memory, and the system can use more memory than physically exists by paging inactive data to disk.

Hardware abstraction through drivers. An application writes to a file without knowing whether the storage is an SSD, a hard drive or a network share. Drivers translate generic requests into device-specific commands, which is why software written years ago still works on new hardware.

The file system, organising bytes on storage into named files and directories, with permissions.

Access control and isolation. Enforcing which user and which process may do what — the basis of all security on the machine.

Input and output, buffering and queueing transfers so a slow device does not stall everything.

Inter-process communication, letting programs exchange data safely.

The kernel is the core. It runs in privileged mode with full hardware access; applications run in user mode with restrictions, and request privileged operations through system calls. That boundary is the single most important structural feature, and crossing it safely is what makes a system stable and secure.

Everything else — desktop, shell, file manager, package manager — is software running on top, which is why the same kernel supports very different-looking systems.

Related Questions