COURS SYSTEMES D EXPLOITATION
27 pages
Français

COURS SYSTEMES D'EXPLOITATION

-

Le téléchargement nécessite un accès à la bibliothèque YouScribe
Tout savoir sur nos offres
27 pages
Français
Le téléchargement nécessite un accès à la bibliothèque YouScribe
Tout savoir sur nos offres

Description

  • mémoire - matière potentielle : centrale
  • mémoire
  • mémoire - matière potentielle : principale
INTRODUCTION AUX SYSTÈMES D'EXPLOITATION
  • fichiers logiques
  • architectures clients-serveurs de fichiers
  • taille du tampon
  • ordinateur par les profanes
  • attente active
  • ordinateur
  • ordinateurs
  • processus
  • utilisateurs
  • utilisateur
  • ressource
  • ressources
  • système
  • systèmes

Sujets

Informations

Publié par
Nombre de lectures 40
Langue Français

Extrait






INTRODUCTION AUX
SYSTÈMES D’EXPLOITATION









El Mehdi HAIRIBI
Introduction
Le terme système d'exploitation désigne un ensemble de programmes qui
réalisent l'interface entre le matériel et l'utilisateur de l'ordinateur. Les buts et les
types de SE sont très différents d'une machine à l'autre, mais il y en a toujours un
pour permettre d'exploiter correctement et plus ou moins confortablement un
ordinateur.
Dès les débuts de l'informatique les SE sont fortement liés à l'architecture et
aux caractères physiques des composants matériels. Le développement des SE a
connu différentes étapes dans son évolution:
Au départ il s'agissait d'optimiser l'utilisation de l'UC et des périphériques
car on avait affaire alors à des machines très grosses et très coûteuses.
Un autre aspect est apparu alors : l'interface logicielle avec l'utilisateur. Les
machines devenant de plus en plus complexes, il était nécessaire d'introduire des
fonctions facilitant le travail de l'utilisateur. Par exemple organiser les accès disques
pour travailler sur des fichiers logiques sans se préoccuper de leur organisation
physique.
Enfin l'utilisation de plus en plus répandue de l'ordinateur par les profanes a
obligé les SE à être de plus en plus conviviaux (WINDOWS, MAC, ...)
Utilisateur 1 Utilisateur 2 Utilisateur n
Compilateur assembleur éditeur de textes ... SGBD
Programmes d'application
système d'exploitation
Matériel
fig 1: Vue abstraite des composants d'un SE
On peut diviser les systèmes d’exploitation classiques en quatre parties
principales :
http://tanwir.free.fr
El Mehdi HAIRIBI
1. les processus, qui correspondent à l’exécution des programmes. Ces processus
pouvant s’exécuter simultanément dans un système multitâche. Le système a pour
fonction de les créer, de les gérer, de les synchroniser, ainsi que de leur permettre
de communiquer entre eux;
2. la gestion de la mémoire, qui permet de transférer les programmes et les
données nécessaires à la création des processus, d’un support secondaire, par
exemple un disque, vers un support central, où a lieu l’exécution des processus. Le
système devra garder la trace des parties utilisées et libres de la mémoire ainsi que
gérer les transferts entre les mémoires principale et secondaire;
3. le système de fichiers, qui offre à l’utilisateur une vision homogène et structurée
des données et des ressources : disques, mémoires, périphériques. Le système
gère la création des fichiers, leur destruction, leur correspondance avec les
dispositifs physiques, ainsi qu’un certain nombre d’autres caractéristiques, telles
que la protection.
4. les entrées-sorties, qui correspondent aux mécanismes qu’utilisent les processus
pour communiquer avec l’extérieur. Ces entrées-sorties font largement appel aux
couches les plus proches du matériel, et dont le système tente de masquer les
particularités aux utilisateurs.
Les systèmes d’exploitation modernes intègrent par ailleurs d’autres
caractéristiques. Ces dernières concernent notamment deux évolutions majeures des
systèmes informatiques.
- l’interconnexion des différentes machines et des différents systèmes par des
réseaux locaux ou étendus. Les réseaux permettent de mettre en œuvre une
nouvelle architecture informatique fondés sur des clients et des serveurs. Les
systèmes répartis trouvent des applications à des architectures clients-serveurs
de fichiers ou d'applications, tels que des bases de données.
- La seconde est la disparition des écrans de textes et leur remplacement par des
dispositifs à fenêtres multiples disposant de propriétés graphiques.
http://tanwir.free.fr

El Mehdi HAIRIBI
Bibliographie
• Tanembaum A., Modern Operating Systems, Prentice–Hall, 1992. traduit en
français :Les systèmes d'exploitation , InterEditions, 1993, …..
Distributed Computer Systems, Prentice Hall, 1994,
ndOperating Systems, 2 ed., Prentice-Hall, 1997,
th• Silberschatz and P. Galvin, Operating System Concepts, 4 ed., Addison
Wesley, 1994. Traduit en français chez Addison-Welsey sous le titre Principes des
systèmes d’exploitation, 1994.
• S. Krakowiack : Principes des systèmes d'exploitation des ordinateurs, Dunod,
1987. Référence en systèmes d’exploitation.
• Beauquier, Berard : Les systèmes d'exploitation , InterEditions, 1991
Sur les noyaux de systèmes d’exploitation commerciaux
• H.M Deitel et M.S. Kogan, La conception d’OS/2, Addison-Wesley, 1992.
• Helen Custer, Au cœur de Windows NT, Microsoft Press, 1993.
Sur la programmation des systèmes d’exploitation
Le man d’Unix est la meilleure référence pour le programmeur. Il n’y a rien
d’équivalent sur papier.
e• J.M. Rifflet, La programmation sous Unix, 3 éd., McGraw-Hill, 1993, est une
bonne référence et un ouvrage assez complet.
Sur l’utilisation du système Unix
• R.S. Bourne, Le système Unix, InterEditions,
• B. Kernighan et R. Pike, L’environnement Unix, InterEditions,
• J.L. Nebut, Unix pour l’utilisateur : Commandes et langages de commandes,
Technip, 1990.


http://tanwir.free.fr
El Mehdi HAIRIBI
1 - Les processus
1. Notion de processus
Les processus correspondent à l’exécution de tâches : les programmes des
utilisateurs, les entrées-sorties,… par le système. Un système d’exploitation doit en
général traiter plusieurs tâches en même temps. Comme il n’a, la plupart du temps,
qu’un processeur, il résout ce problème grâce à un pseudo-parallélisme. Il traite une
tâche à la fois, s’interrompt et passe à la suivante. La commutation des tâches étant
très rapide, l’ordinateur donne l’illusion d’effectuer un traitement simultané.

P2
P1
système
T

Figure 1 Le multi-tâche
Les processus des utilisateurs sont lancés par un interprète de commande. Ils
peuvent eux-mêmes lancer ensuite d’autres processus. On appelle le processus
créateur, le père, et les processus créés, les fils. Les processus peuvent donc se
structurer sous la forme d’une arborescence. Au lancement du système, il n’existe
qu’un seul processus, qui est l’ancêtre de tout les autres.
Les processus sont composés d’un espace de travail en mémoire formé de 3
segments : la pile, les données et le code et d’un contexte.
http://tanwir.free.fr

El Mehdi HAIRIBI
La commutation des tâches, le passage d’une tâche à une autre, est réalisée par un
ordonnanceur au niveau le plus bas du système. Cet ordonnanceur est activé par des
interruptions d’horloge, de disque ou de terminaux.
Un processus peut être actif en mémoire centrale ( Élu ) ou suspendu en attente
d’exécution (Prêt). Il peut aussi être Bloqué, en attente de ressource, par exemple au
cours d’une lecture de disque. Le diagramme simplifié des états d’un processus est
donc :

PrêtÉlu
Bloqué

Figure 2 Les états d’un processus.
Le processus passe de l’état élu à l’état prêt et réciproquement au cours d’une
intervention de l’ordonnanceur.
2. Synchronisation De Processus : Exclusion
a. L’attente active sur un verrou
La façon la plus ancienne de réaliser l’exclusion mutuelle sous Unix est d’effectuer
un verrouillage sur une variable partagée. Cette opération de verrouillage doit être
indivisible (atomique). Lorsque le verrou est posé sur la variable, les processus
exécutent une attente active. Lorsqu’il se lève, un processus, et un seul, pose un
nouveau verrou sur la variable et rentre dans la section critique. Il sait qu’il aura
l’exclusivité d’une ressource, un fichier par exemple :
http://tanwir.free.fr
El Mehdi HAIRIBI

Processus 1 Processus 2
while (pos_ver(var) == échec) while (pos_ver(var) == échec)
rien; rien;
section_critique(); section_critique();
lève_ver(var); lève_ver(var);
Tableau 1 Attente active sur un verrou.
b. Les sémaphores
Le concept de sémaphore permet une solution élégante à la plupart des problèmes
d’exclusion. Ce concept nécessite la mise en œuvre d’une variable, le sémaphore, et
de deux opérations atomiques associées P et V. Soit séma la variable, elle caractérise

  • Univers Univers
  • Ebooks Ebooks
  • Livres audio Livres audio
  • Presse Presse
  • Podcasts Podcasts
  • BD BD
  • Documents Documents