Overview
ABSTRACT
A computer operating system is software that makes using the computer easier. It interacts directly with the hardware, and does two things: it provides the user with a more convenient interface than that of the underlying machine, and manages the hardware and software resources of the set-up. The basic technique is virtualization: each resource has a corresponding virtual counterpart that provides an ideal image, easier to use, of that resource. This paper presents the organization and working principles of an operating system and the management of the main resources: activities, storage, and data. It gives some indications on how operating systems are evolving and on their future applications.
Read this article from a comprehensive knowledge base, updated and supplemented with articles reviewed by scientific committees.
Read the articleAUTHOR
-
Sacha KRAKOWIAK: Professor Emeritus, Joseph Fourier University, Grenoble
INTRODUCTION
The operating system of a computer, or of a set of computers connected in a network, is a set of programs that perform two main functions:
allocate hardware and software resources to meet the needs of application programs ;
present applications with an interface better suited to their needs than that provided by the hardware, while concealing the complexity of the underlying infrastructure.
It is more accurate to speak of a set of interfaces: users and applications can interact with different layers of the operating system. At the highest level, the interface takes the form of a symbolic or graphical command language; the interpreter of this language is usually outside the operating system itself, and can therefore be replaced or modified. At a lower level is the main interface, made up of a set of "system calls", which enable applications to access the services provided by the system. Finally, some operating systems (microkernel, component-based) have a modular structure that allows access to several different levels of functions, more or less similar to the physical machine.
The evolution of operating systems is governed by both hardware architectures and application requirements. The highlights of the 2000s can be summarized as follows:
gradual transition from "proprietary" systems (associated with a particular machine architecture, providing a specific interface) to "open" systems (portable on a wide range of machines and featuring standardized interfaces, to facilitate the transport and interconnection of applications); this evolution is linked to the growing spread of free software (GNU project, Free Software Foundation), a prominent example of which is the Linux system;
the transition from centralized to distributed computing, in which the operating system takes into account the distribution of hardware resources, data and applications, while concealing this distribution from users;
rapid development of embedded systems, embedded in a variety of objects and environments (vehicles, production sites, smart cards, medical equipment, various sensors), communicating with the physical world, and subject to tight constraints in terms of reaction time, hardware resources and energy consumption. The interconnection of these systems has given rise to the "Internet of Things" and its many potential applications;
the widespread use of new mobile devices such as smartphones and tablets, which are driving new uses and applications in a wide range of fields;
development of virtualization techniques,...
Exclusive to subscribers. 97% yet to be discovered!
Already subscribed? Log in!
KEYWORDS
virtualization | virtual memory | process | virtual machine | operating system | file system
Operating systems: principles and functions
Article included in this offer
"Software technologies and System architectures"
(
227 articles
)
Updated and enriched with articles validated by our scientific committees
A set of exclusive tools to complement the resources
Bibliography
Exclusive to subscribers. 97% yet to be discovered!
Already subscribed? Log in!