An operating system (OS), in its most general sense, is software that allows a user to run other applications on a computing device. While it is possible for a software application to interface directly with hardware, the vast majority of applications are written for an OS, which allows them to take advantage of common libraries and not worry about specific hardware details.
The operating system manages a computer’s hardware resources, including:
Input devices such as a keyboard and mouse
Output devices such as display monitors, printers and scanners
Network devices such as modems, routers and network connections
Storage devices such as internal and external drives
The OS also provides services to facilitate the efficient execution and management of, and memory allocations for, any additional installed software application programs.
Some operating systems were developed in the 1950s, when computers could only execute one program at a time. Later in the decade, computers included many software programs, sometimes called libraries, which were linked together to create the beginning of today’s operating systems.
The OS consists of many components and features. Which features are defined as part of the OS vary with each OS. However, the three most easily defined components are:
Kernel: This provides basic-level control over all of the computer hardware devices. Main roles include reading data from memory and writing data to memory, processing execution orders, determining how data is received and sent by devices such as the monitor, keyboard and mouse, and determining how to interpret data received from networks.
User Interface: This component allows interaction with the user, which may occur through graphical icons and a desktop or through a command line.
Application Programming Interfaces: This component allows application developers to write modular code.
Examples for OSs include Android, iOS, Mac OS X, Microsoft Windows and Linux.