Operating system

Operating system

An operating system (OS) is system software responsible for managing computer hardware and software resources, providing core services for application programs, and acting as an intermediary between user-level software and the underlying hardware. Operating systems coordinate tasks such as memory allocation, process scheduling, input/output operations and resource protection. They run on a wide range of devices including mobile phones, personal computers, servers, embedded systems and supercomputers.
Modern operating systems enable time-sharing, allowing multiple applications and users to share system resources efficiently. They also offer interfaces—both programmatic and user-facing—that simplify access to hardware and abstract technical complexity. Many OSs incorporate accounting or monitoring features that track resource use for diagnostics or administrative management.
As of recent global usage statistics, Android holds the largest overall market share, followed by Microsoft Windows, iOS/iPadOS, macOS and Linux. Mobile operating systems (Android, iOS and iPadOS) dominate in portable devices, while desktop and server environments typically use Windows, macOS and various Linux distributions.

Definition and Purpose

Although difficult to define precisely, an operating system is often described as an abstraction layer that manages hardware and system resources on behalf of users and applications. The OS includes the kernel, the core component that remains running at all times and handles essential tasks such as memory management, scheduling and device control. Additional system software may accompany the kernel, along with application programs that run on top of it.
Operating systems fulfil three principal functions:

  • Resource allocation: distributing CPU time, memory space and peripheral access among applications. Multiple programs must co-exist without any one consuming all available resources.
  • Protection and isolation: ensuring that applications cannot interfere with one another’s memory or operations, while still enabling controlled inter-process communication.
  • Common services: offering standardised interfaces for network access, file systems, device control and system utilities. These interfaces promote portability by allowing the same application to run on different hardware platforms with minimal modification.

OS services vary widely across systems, and much of an operating system’s codebase consists of these higher-level service layers rather than the kernel itself.

Types of Operating Systems

Multicomputer Operating Systems

Multicomputer or clustered systems comprise multiple CPUs with distributed memory. Unlike multiprocessor systems, these CPUs do not share physical memory. They form the basis of contemporary cloud computing architectures. Efficient message passing, reduction of packet copying, multi-queue scheduling and techniques such as remote direct memory access (RDMA) are integral to their operation. Many multicomputer OSs support remote procedure calls and distributed shared memory via virtualisation.

Distributed Systems

Distributed systems connect multiple networked computers that may each run their own OS and file system. They are geographically dispersed and often rely on middleware to provide consistency across nodes. Middleware performs OS-like tasks but is not itself an operating system.

Embedded Operating Systems

Embedded operating systems are designed for embedded systems, including consumer appliances, industrial devices and Internet-of-things components. These systems typically do not support user-installed software and may operate with extremely limited memory. Some embedded OSs fit into under 10 kilobytes, with smart card OSs being even smaller. Examples include Embedded Linux, QNX, VxWorks, RIOT and TinyOS.

Real-Time Operating Systems

A real-time operating system (RTOS) guarantees that events are processed by specific deadlines.

  • Hard real-time systems—used in avionics, defence and manufacturing—require strict timing guarantees and often minimise protection layers to reduce latency.
  • Soft real-time systems tolerate occasional missed deadlines and include many multimedia systems and smartphone environments.
Hypervisors

A hypervisor is an OS that runs and manages virtual machines (VMs). Each VM behaves as though it has dedicated hardware. Hypervisors allow systems to pause, save, resume and migrate VMs, facilitating research, testing and workload portability.

Library Operating Systems

A library OS (or libOS) modularises operating system services into libraries linked directly with an application to form a unikernel. Unikernels are single-address-space machine images containing only the functions required by one program. They eliminate kernel–user mode switches and instead invoke OS services as library calls. This reduces overhead and enhances performance, particularly in embedded and real-time contexts.

History

Early computers in the 1940s and 1950s had no operating systems. Programmers configured machines manually using plugboards or entered instructions via punched cards. The introduction of the transistor in the mid-1950s enabled more advanced mainframe computers, operated by teams who scheduled programs and managed system tasks manually.
Early mainframe OSs included the Fortran Monitor System and IBSYS. In the 1960s, IBM’s System/360 introduced a family of compatible computers running a unified OS, OS/360, featuring early support for multiprogramming. OS/360 required memory partitioning and safeguards to protect jobs from interfering with each other’s memory.
Around the same time, the use of teleprinters allowed multiple simultaneous users. The MULTICS project sought to enable hundreds of remote users to access a single system; although not widely deployed, it pioneered concepts foundational to cloud computing. UNIX, developed from MULTICS ideas but simplified for single-user operation, spread widely due to accessibility of its source code. UNIX and its descendants remain influential across modern operating systems.

Originally written on December 31, 2016 and last modified on November 25, 2025.

Leave a Reply

Your email address will not be published. Required fields are marked *