Présentation
RÉSUMÉ
Le système d'exploitation d'un ordinateur est un logiciel qui vise à faciliter l'emploi de cet ordinateur par ses utilisateurs. En contact direct avec le matériel, il remplit deux fonctions: présenter à l'utilisateur une interface plus commode que celle de la machine sous-jacente gérer les ressources matérielles et logicielles de l'installation. La technique utilisée est la virtualisation: à chaque ressource correspond une ressource virtuelle qui en fournit une image idéale, plus facile à utiliser. Cet article présente les principes d'organisation et de fonctionnement des systèmes d'exploitation et la gestion des différentes ressources: activités, mémoire, information, et donne quelques indications sur l'évolution de ces systèmes et sur leurs futures applications.
Lire cet article issu d'une ressource documentaire complète, actualisée et validée par des comités scientifiques.
Lire l’articleABSTRACT
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.
Auteur(s)
-
Sacha KRAKOWIAK : Professeur à l'université Joseph Fourier, Grenoble
INTRODUCTION
Le système d'exploitation d'un ordinateur, ou d'un ensemble d'ordinateurs connectés en réseau, est un ensemble de programmes qui remplissent deux grandes fonctions :
-
allouer les ressources matérielles et logicielles pour satisfaire les besoins des programmes d'application ;
-
présenter aux applications une interface mieux adaptée à leurs besoins que celle fournie par le matériel, en dissimulant la complexité de l'infrastructure sous-jacente.
Il est plus exact de parler d'un ensemble d'interfaces. En effet, les utilisateurs et les applications peuvent généralement interagir avec différentes couches du système d'exploitation. Au niveau le plus haut, l'interface se présente comme un langage de commande symbolique ou graphique. L'interprète de ce langage est, en général, en dehors du système d'exploitation proprement dit, et peut donc être remplacé ou modifié. À un niveau plus bas se situe l'interface principale, constituée d'un ensemble d'« appels systèmes », qui permettent d'utiliser les différentes entités définies par le système : processus, fichiers, messages, etc. Cette interface est utilisée par les applications, soit directement, soit, le plus souvent, au travers de bibliothèques spécialisées, associées à un langage de programmation. Enfin, certains systèmes d'exploitation (à micro-noyau, à composants) ont une structure modulaire qui permet d'accéder à plusieurs niveaux différents de fonctions, plus ou moins proches de la machine physique.
L'évolution des systèmes d'exploitation est gouvernée, à la fois, par l'évolution des architectures matérielles et par celle des besoins des applications. Les faits marquants des années 2000 peuvent être résumés comme suit :
-
transition progressive des systèmes dits « propriétaires » (associés à une architecture particulière de machines, fournissant une interface spécifique) vers des systèmes « ouverts » (portables sur une gamme étendue de machines et présentant des interfaces normalisées, pour faciliter le transport et l'interconnexion des applications). Cette évolution est liée à la diffusion croissante du logiciel libre, dont un exemple marquant est le système Linux ;
-
passage d'une informatique centralisée à une informatique distribuée, dans laquelle le système d'exploitation prend en compte la répartition des ressources matérielles, des données et des applications, tout en dissimulant cette répartition aux utilisateurs ;
-
globalisation des échanges, par l'interconnexion généralisée des réseaux et l'informatique « nomade » (connexion d'ordinateurs mobiles), forte interaction de l'informatique et des télécommunications, développement des applications coopératives et des communications multimédias ;
-
développement rapide des systèmes embarqués, inclus dans des objets ou environnements divers (téléphones, véhicules, sites de production), communiquant avec le monde physique et soumis à des contraintes fortes de temps de réaction, de ressources matérielles et de consommation d'énergie.
MOTS-CLÉS
virtualisation mémoire virtuelle processus machine virtuelle système d'exploitation fichiers
KEYWORDS
virtualization | virtual memory | process | virtual machine | operating system | file system
VERSIONS
- Version courante de août 2015 par Sacha KRAKOWIAK
DOI (Digital Object Identifier)
Cet article fait partie de l’offre
Technologies logicielles Architectures des systèmes
(239 articles en ce moment)
Cette offre vous donne accès à :
Une base complète d’articles
Actualisée et enrichie d’articles validés par nos comités scientifiques
Des services
Un ensemble d'outils exclusifs en complément des ressources
Un Parcours Pratique
Opérationnel et didactique, pour garantir l'acquisition des compétences transverses
Doc & Quiz
Des articles interactifs avec des quiz, pour une lecture constructive
Présentation
4. Allocation de ressources
On appelle ressource tout objet nécessaire à l'exécution d'un processus. Les ressources gérées par le système d'exploitation sont les processeurs, les mémoires principale et secondaire, les organes d'entrée-sortie et les canaux de communication.
Après avoir défini les objectifs d'une politique d'allocation, nous examinons successivement les problèmes posés par l'allocation des principales ressources.
4.1 Objectifs d'une politique d'allocation
Une politique d'allocation de ressources doit assurer aux applications utilisant le système une qualité de service conforme au cahier des charges. La définition des facteurs de qualité de service dépend de la classe de ressources considérée : temps d'attente (moyenne et variance), temps total de traitement, débit des travaux, taux de couverture de la demande, coût supplémentaire de gestion, etc.
Pour atteindre cet objectif, le système doit satisfaire de manière équitable les demandes des processus, en évitant les phénomènes indésirables que sont l'interblocage, la privation et l'écroulement.
Une allocation est équitable lorsque deux processus de même priorité reçoivent, en moyenne, un traitement équivalent, et lorsque la qualité de service obtenue par un processus est une fonction croissante de sa priorité.
-
L'interblocage (deadlock ) est une situation dans laquelle deux ou plusieurs processus sont bloqués indéfiniment, chacun attendant la libération de ressources allouées à un autre processus du groupe.
Par exemple, la séquence ci-après peut conduire à l'interblocage (les ressources ici allouées sont les verrous qui contrôlent l'accès aux fichiers) :
L'interblocage aurait été évité si les processus avaient verrouillé les fichiers dans le même ordre.
Plus généralement, une méthode de prévention de l'interblocage consiste à répartir les ressources, en classes ordonnées, et à allouer les ressources à chaque processus, dans l'ordre des classes.
Lorsque l'interblocage est un...
Cet article fait partie de l’offre
Technologies logicielles Architectures des systèmes
(239 articles en ce moment)
Cette offre vous donne accès à :
Une base complète d’articles
Actualisée et enrichie d’articles validés par nos comités scientifiques
Des services
Un ensemble d'outils exclusifs en complément des ressources
Un Parcours Pratique
Opérationnel et didactique, pour garantir l'acquisition des compétences transverses
Doc & Quiz
Des articles interactifs avec des quiz, pour une lecture constructive
Allocation de ressources
Cet article fait partie de l’offre
Technologies logicielles Architectures des systèmes
(239 articles en ce moment)
Cette offre vous donne accès à :
Une base complète d’articles
Actualisée et enrichie d’articles validés par nos comités scientifiques
Des services
Un ensemble d'outils exclusifs en complément des ressources
Un Parcours Pratique
Opérationnel et didactique, pour garantir l'acquisition des compétences transverses
Doc & Quiz
Des articles interactifs avec des quiz, pour une lecture constructive