Présentation
En anglaisRÉSUMÉ
Masquer l'hétérogénéité est un des grands challenges de l'informatique moderne : le nombre de configuration matériel est colossal et il est impossible de développer une application pour chacune de ces configurations spécifiques. La virtualisation logicielle apporte une réponse à ce problème en uniformisant l'accès au matériel, que ce soit l'accès au périphérique ou au processeur central. Deux domaines de l'informatique s'occupent de virtualisation : le domaine des systèmes d'exploitation s'occupe de masquer l'hétérogénéité des périphériques uniquement et le domaine des machines virtuelles s'occupe de masquer l'hétérogénéité des processeurs centraux.
Lire cet article issu d'une ressource documentaire complète, actualisée et validée par des comités scientifiques.
Lire l’articleABSTRACT
Hiding heterogeneity is one of the major challenges of modern computing technology; the number of software configurations is huge and it is impossible to develop an application for each of these specific configurations. Software virtualization provides an answer to this issue by uniformizing the access to the material, be it the access to the peripheral device or the central processor. Two computing technology sectors deal with virtualization; the operating system sector is in charge of hiding the heterogeneity of peripheral devices only and the virtual machine sector the heterogeneity of central processors.
Auteur(s)
-
Bertil FOLLIOT : Professeur des universités en informatique à l'université Pierre et Marie Curie, Paris VI
-
Gaël THOMAS : Maître de conférence en informatique à l'université Pierre et Marie Curie, Paris VI
INTRODUCTION
Masquer l'hétérogénéité est un des grands challenges de l'informatique moderne : le nombre de configuration matériel est colossal et il est impossible de développer une application pour chacune de ces configurations spécifiques. La virtualisation logicielle apporte une réponse à ce problème en uniformisant l'accès au matériel, que ce soit l'accès au périphérique ou au processeur central. Deux domaines de l'informatique s'occupent de virtualisation : le domaine des systèmes d'exploitation s'occupe de masquer l'hétérogénéité des périphériques uniquement et le domaine des machines virtuelles s'occupe de masquer l'hétérogénéité des processeurs centraux.
DOI (Digital Object Identifier)
Cet article fait partie de l’offre
Technologies logicielles Architectures des systèmes
(238 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
2. Système d'exploitation
Le rôle d'un système d'exploitation est de virtualiser les périphériques et la mémoire d'une machine. Le but est d'offrir un accès uniforme aux ressources matérielles. Un système d'exploitation n'a pas pour rôle de virtualiser le processeur lui-même car son but est de maintenir de bonnes performances. En effet, exécuter nativement une application sur un processeur est toujours plus rapide que d'interpréter ou de re-compiler le code machine à l'exécution. De plus, les langages évolués masquent partiellement les différentes architectures de processeurs. Par exemple, un programme écrit en C peut être compilé pour différents processeurs, à condition qu'il existe un compilateur pour le processeur. Ainsi, le même programme en C pourra être compilé pour un processeur Pentium 32 bits ou AMD 32 bits, mais aussi pour un processeur PowerPC, Sparc, AMD 64 bits ou M68K. En revanche, l'accès au processeur est virtualisé par un système d'exploitation de façon à pouvoir simuler l'exécution de plusieurs applications indépendantes en même temps sur le même processeur.
Il existe un nombre colossal de périphériques et, pour chaque périphérique, différentes façons de s'y adresser. Les systèmes de fichier fournissent un bon exemple. Accéder à un fichier demande de connaître la nature du système de fichier (HFS, NTFS, ext3, reiserfs ou autre), mais aussi la façon de gérer les partitions sur le disque (MacOS et Windows gèrent différemment leurs tables des partitions) et enfin la façon de communiquer avec le contrôleur du disque (IDE, SCSI ou autre). Le système d'exploitation va donc fournir une vue virtuelle d'un système de fichier basée sur les notions de « fichier », de « répertoire » et de « chemin ». Un programme va alors pouvoir ouvrir un fichier indépendamment du système de fichier utilisé.
Les cinq grandes classes d'éléments virtualisés par les systèmes d'exploitation sont :
-
l'accès au processeur pour émuler plusieurs processeurs. Il ne faut pas confondre cette virtualisation avec celle du processeur lui-même ;
-
les erreurs d'exécution signalées par le processeur ;
-
la mémoire pour donner un grand espace d'adressage à chaque processus et isoler les processus les uns des autres ;
-
les périphériques en mode caractère, c'est-à-dire les périphériques...
Cet article fait partie de l’offre
Technologies logicielles Architectures des systèmes
(238 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
Système d'exploitation
BIBLIOGRAPHIE
-
(1) - TANENBAUM (A.) - Systèmes d’exploitation, Pearson Education France - 2e éd. (ISBN 2-7440-7002-5) (2003).
-
(2) - BOVET (D.P.), CESATI (M.) - Understanding the Linux Kernel, November - Third Ed. (ISBN 10 : 0-596-00565-2 | ISBN 13 : 9780596005658) (2005).
-
(3) - BACH (M.J.) - Design of the UNIX Operating System, Prentice Hall Software Series - (ISBN-10 : 0132017997 | ISBN-13 : 978-0132017992) (1986).
-
(4) - McKUSICK (M.K.), NEVILLE-NEIL (G.V.) - The Design and Implementation of the FreeBSD Operating System, Addison-Wesley Professional - First Ed. (ISBN-10 : 0201702452 | ISBN-13 : 978-0201702453) (2004).
-
(5) - LINDHOLM (T.), YELLIN (F.) - The Java (TM) Virtual Machine Specification, Prentice Hall - Second Ed. (ISBN-10 : 0201432943 | ISBN-13 : 978-0201432947) (1999).
-
(6) - LATTNER (C.), ADVE (V.) - LLVM :...
DANS NOS BASES DOCUMENTAIRES
ANNEXES
Base documentaire Technologies logicielles – Architectures des systèmes
DOUIN (J.-M.) - Machine virtuelle Java - [H 1 588] (2000).
SOULEMA (P.) - Système d'exploitation Unix - [H 1 528] (1997).
HERTZOG (R.) - Linux, noyau et système d'exploitation libre - [H 1 540] (2008).
KRAKOWIAK (S.) - Système d'exploitation : principes et fonctions - [H 1 510] (2008).
LORHO (B.) - Compilateurs - [H 3 168] (1996).
DUPOUY (B.) - Assembleur et éditeur de liens - [H 3 178] (2002).
HAUT DE PAGECet article fait partie de l’offre
Technologies logicielles Architectures des systèmes
(238 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