Difference between revisions of "Operating system"
(→Real-Time: expanding RTOS section slightly) |
m (→Structure) |
||
| (12 intermediate revisions by 3 users not shown) | |||
| Line 1: | Line 1: | ||
| − | An ''' | + | An '''Operating System (OS)''' is a set of software that allows [[computer]]s to perform basic tasks for people. The most common desktop operating systems today are [[Microsoft Windows]], [[Apple Inc.|Apple's]] [[Mac OS]], and [[GNU/Linux]]. For mobile devices such as [[Smartphone]]s, [[Google]]'s [[Google Android|Android]] (a Linux derivative), and Apple's [[iOS]] are most common. The vast majority of web servers utilize Linux. Low-powered IoT devices typically run Linux, Android (a Linux derivative), or a basic RTOS such as [[VxWorks]]. |
== Structure == | == Structure == | ||
An operating system is defined into a few basic parts: | An operating system is defined into a few basic parts: | ||
| − | * The | + | * The low-level system (such as [[BIOS]], UEFI, coreboot, or Libreboot) which manages all hardware. Often a computer has a BIOS or UEFI integrated within its hardware, though some operating systems such as [[Linux]] are independent of these proprietary systems.<ref>http://www.linux.com/base/ldp/howto/Linux-Init-HOWTO-5.html</ref> |
* The '''[[Operation system kernel|Kernel]]''', which handles all software related operations and acts as an interpreter between applications and the hardware. | * The '''[[Operation system kernel|Kernel]]''', which handles all software related operations and acts as an interpreter between applications and the hardware. | ||
| − | * The [[Computer shell|shell]] or User Interface - Software that draws forms, toolbars, menus, main task bar, typing commands for the computer to execute, etc. Shells typically provide a primitive programming capability, called scripting, such as DOS command scripts, JCL, DCL, and Windows script. | + | * The [[Computer shell|shell]] or User Interface - Software that draws forms, toolbars, menus, main task bar, typing commands for the computer to execute, etc. Shells typically provide a primitive programming capability, called scripting, such as DOS command scripts, JCL, DCL, and Windows script. Most operating systems designed for consumer use on desktop and mobile platforms, will include a graphical user interface, which presents the user with a point-and-click interface. |
* System programs that come packaged with the operating system, such as browsers, file backup/restore, sorting utilities, login/logout programs, etc. | * System programs that come packaged with the operating system, such as browsers, file backup/restore, sorting utilities, login/logout programs, etc. | ||
| Line 13: | Line 13: | ||
===Real-Time=== | ===Real-Time=== | ||
| − | Real-Time operating systems (RTOS) are designed to have minimal overhead so that they can respond immediately to events.<ref>http://ecomputernotes.com/fundamental/disk-operating-system/real-time-operating-systems</ref> As such, they tend to have no file system, or a simple file system optimized for speed. Real-time operating systems are used by embedded controllers in many devices, including industrial equipment, kitchen appliances, and automobiles. These controllers need to recognize task priority, and perform their primary function without delay when called upon. For example, the airbags in cars are controlled by an RTOS; every millisecond is critical in the processing speed for safety devices such as | + | Real-Time operating systems (RTOS) are designed to have minimal overhead so that they can respond immediately to events.<ref>http://ecomputernotes.com/fundamental/disk-operating-system/real-time-operating-systems</ref> As such, they tend to have no file system, or a simple file system optimized for speed. Real-time operating systems are used by embedded controllers in many devices, including industrial equipment, kitchen appliances, and automobiles. These controllers need to recognize task priority, and perform their primary function without delay when called upon. For example, the airbags in cars are controlled by an RTOS; every millisecond is critical in the processing speed for safety devices such as these.<ref>https://www.robomart.com/blog/real-time-operating-system-rtos/</ref><br /> |
| − | + | An RTOS that ran on the popular [[PDP-11]] minicomputers was RT-11. Today, [[VxWorks]] is the most popular RTOS. | |
== Features == | == Features == | ||
| Line 20: | Line 20: | ||
* Hardware Abstraction, which allows programs to make use of hardware without having to know about the specifics of any given hardware device. It is responsible for displaying the graphics on screen and outputting sound to the speakers, controlling input from the mouse and keyboard, and allowing [[hardware]] to work properly. Usually this is implemented in the [[BIOS]] or a separate HAL (Hardware Abstraction Layer). | * Hardware Abstraction, which allows programs to make use of hardware without having to know about the specifics of any given hardware device. It is responsible for displaying the graphics on screen and outputting sound to the speakers, controlling input from the mouse and keyboard, and allowing [[hardware]] to work properly. Usually this is implemented in the [[BIOS]] or a separate HAL (Hardware Abstraction Layer). | ||
* Load programs from secondary stores into memory and execute them. | * Load programs from secondary stores into memory and execute them. | ||
| − | * File | + | * [[File System]]s, which handle storing and retrieving files stored on hard disks, USB drives, magnetic tapes, and CDROM/DVDROMs. |
* Security. Prevent unauthorized access to system resources. | * Security. Prevent unauthorized access to system resources. | ||
* Multiprocessing. Allow multiple programs to run simultaneously and share system resources. | * Multiprocessing. Allow multiple programs to run simultaneously and share system resources. | ||
* Networking. Allows interfacing with other computers on a [[network]]. | * Networking. Allows interfacing with other computers on a [[network]]. | ||
* User interfaces, such as a [[Graphical user interface (computers)|Graphical User Interface]] (GUI), and system programs that provide users way of accessing hardware, files, programs, processes, and networks. | * User interfaces, such as a [[Graphical user interface (computers)|Graphical User Interface]] (GUI), and system programs that provide users way of accessing hardware, files, programs, processes, and networks. | ||
| + | |||
| + | ==Popular or Historic Operating Systems== | ||
| + | * [[Google Android]] | ||
| + | * [[iOS]] for [[iPhone]]/[[iPad]] | ||
| + | * [[Mac OS]] for Mac | ||
| + | * [[Microsoft Windows]] | ||
| + | * [[Linux]] / [[Unix]] / [[BSD]] | ||
| + | * [[VxWorks]] | ||
| + | * [[MS DOS]] | ||
==See also== | ==See also== | ||
| − | |||
* [[Apple Computer]] | * [[Apple Computer]] | ||
| − | |||
* [[Computer crime|Computer Crime]] and [[Cyberwarfare]] | * [[Computer crime|Computer Crime]] and [[Cyberwarfare]] | ||
* [[Encryption]] | * [[Encryption]] | ||
Latest revision as of 07:10, January 22, 2026
An Operating System (OS) is a set of software that allows computers to perform basic tasks for people. The most common desktop operating systems today are Microsoft Windows, Apple's Mac OS, and GNU/Linux. For mobile devices such as Smartphones, Google's Android (a Linux derivative), and Apple's iOS are most common. The vast majority of web servers utilize Linux. Low-powered IoT devices typically run Linux, Android (a Linux derivative), or a basic RTOS such as VxWorks.
Contents
Structure
An operating system is defined into a few basic parts:
- The low-level system (such as BIOS, UEFI, coreboot, or Libreboot) which manages all hardware. Often a computer has a BIOS or UEFI integrated within its hardware, though some operating systems such as Linux are independent of these proprietary systems.[1]
- The Kernel, which handles all software related operations and acts as an interpreter between applications and the hardware.
- The shell or User Interface - Software that draws forms, toolbars, menus, main task bar, typing commands for the computer to execute, etc. Shells typically provide a primitive programming capability, called scripting, such as DOS command scripts, JCL, DCL, and Windows script. Most operating systems designed for consumer use on desktop and mobile platforms, will include a graphical user interface, which presents the user with a point-and-click interface.
- System programs that come packaged with the operating system, such as browsers, file backup/restore, sorting utilities, login/logout programs, etc.
Classifications
General-purpose
General-purpose operating systems are designed to be flexible in what applications they can run, provide an interface, support multitasking, offer feature-laden file systems, and most of them support multiple users. These are the operating systems with which most people are familiar.
Real-Time
Real-Time operating systems (RTOS) are designed to have minimal overhead so that they can respond immediately to events.[2] As such, they tend to have no file system, or a simple file system optimized for speed. Real-time operating systems are used by embedded controllers in many devices, including industrial equipment, kitchen appliances, and automobiles. These controllers need to recognize task priority, and perform their primary function without delay when called upon. For example, the airbags in cars are controlled by an RTOS; every millisecond is critical in the processing speed for safety devices such as these.[3]
An RTOS that ran on the popular PDP-11 minicomputers was RT-11. Today, VxWorks is the most popular RTOS.
Features
General-purpose operating systems typically offer the following features:
- Hardware Abstraction, which allows programs to make use of hardware without having to know about the specifics of any given hardware device. It is responsible for displaying the graphics on screen and outputting sound to the speakers, controlling input from the mouse and keyboard, and allowing hardware to work properly. Usually this is implemented in the BIOS or a separate HAL (Hardware Abstraction Layer).
- Load programs from secondary stores into memory and execute them.
- File Systems, which handle storing and retrieving files stored on hard disks, USB drives, magnetic tapes, and CDROM/DVDROMs.
- Security. Prevent unauthorized access to system resources.
- Multiprocessing. Allow multiple programs to run simultaneously and share system resources.
- Networking. Allows interfacing with other computers on a network.
- User interfaces, such as a Graphical User Interface (GUI), and system programs that provide users way of accessing hardware, files, programs, processes, and networks.
Popular or Historic Operating Systems
- Google Android
- iOS for iPhone/iPad
- Mac OS for Mac
- Microsoft Windows
- Linux / Unix / BSD
- VxWorks
- MS DOS