Plan Historique des systèmes
53 pages
Français

Plan Historique des systèmes

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

Description

TP, Supérieur, TP
  • mémoire - matière potentielle : principale
  • mémoire - matière potentielle : volatile
  • cours - matière potentielle : parallélisme
  • mémoire - matière potentielle : morte
  • mémoire - matière potentielle : centrale
  • mémoire
  • mémoire - matière potentielle : centrale depuis le disque
  • mémoire - matière potentielle : principale vers les registres
  • mémoire - matière potentielle : centrale aux différents programmes
Cours « Cours Parallélisme I » – P-F. Bonnefoi – — 29 novembre 2011 — 1 1 Par allé lism e I — P-F . Bo nne foi Parallélisme I Pierre-François Bonnefoi Version 2011-2012 2 Par allé lism e I — P-F . Bo nne foi Contenu et objectifs Volume Horaire : —  Cours : 9h, soient 6 séances ; —  TD : 6h, soient 4 séances ; —  TP : 15h, soient 10 séances.
  • simplification de la machine physique
  • — 
  • mémoire centrale
  • opérations des appels système
  • unix
  • instruction
  • instructions
  • systèmes d'exploitation
  • systèmes d'exploitations
  • système d'exploitation
  • processus
  • programmes
  • programme
  • foi

Sujets

Informations

Publié par
Nombre de lectures 52
Langue Français
Poids de l'ouvrage 3 Mo

Exrait

Contenu et objectifs
Volume Horaire :

—  Cours : 9h, soient 6 séances ;
—  TD : 6h, soient 4 séances ;
—  TP : 15h, soient 10 séances.

Objectifs :

—  Rappels sur Unix et l’architecture des ordinateurs ;
—  Notion de Processus ;
—  Notion de Threads ; Parallélisme I —  Section critique/Exclusion mutuelle ;
—  Sémaphores ; —  Utilisation des IPC, « Inter-Process Communication » ;
² Signaux, ou signals ; ² Tubes, ou pipes ;
² Boîte aux lettres, ou Message Queue ; Pierre-François Bonnefoi
² Mémoire partagée, ou Shared Memory.
—  Programmation des Threads Posix.

Évaluation :

—  Examen écrit ;
—  Réalisation d’un projet
Version 2011-2012
1 2
Historique des systèmes Plan

1958 : invention du circuit intégré
ü Un peu d’histoire, ou la genèse d’Unix ;
ü Rappels sur l’architecture d’un ordinateur ;
üM  ode noyau/utilisateur et appels Systèmes ;
ü Rôle du Système d’Exploitation ;
ü Programme vs Processus
Robert NOYCE Jack KILBY
3 4
Cours « Cours Parallélisme I » – P-F. Bonnefoi – http://libpfb.so/ — 29 novembre 2011 — 1
Parallélisme I — P-F. Bonnefoi Parallélisme I — P-F. Bonnefoi
Parallélisme I — P-F. Bonnefoi Parallélisme I — P-F. Bonnefoi Historique des systèmes Historique des systèmes
Compatible Time Sharing System MULTIplexed Information and Computing Service
La réalisation de ce projet s'est avéré plus difficile que prévu : le système MULTICS fut mis en
production au MIT après de nombreuses difficultés techniques et l'abandon des partenaires
En novembre 1961, Fernando Corbato et industriels.
Robert Fano du MIT font la démonstration
La réalisation de ce projet a
de CTSS (Compatible Time Sharing suscité une abondante
littérature qui a influencé System) le premier système d'exploitation
la réalisation les autres
systèmes d'exploitation ... multi-utilisateurs. Lors de cette
démonstration, 3 utilisateurs se sont
connectés simultanément sur un ordinateur
pour y travailler comme si chacun disposait
de sa propre machine.
5 6
Historique : UNIX Historique : UNIX
UNplexed Information and Computing Service UNplexed Information and Computing Service
Les premiers travaux furent effectués sans financement mais les premiers succès permirent à Ken Thompson (qui a travaillé sur MULTICS) et Dennis Ritchie écrivent en assembleur un
Thompson et Ritchie d'obtenir un PDP-11 pour continuer leurs travaux. système d'exploitation pour un PDP-7 en s'inspirant du système MULTICS. Le système fut
d'abord baptisé UNICS par Brian Kernighan, en opposition à MULTICS puis UNIX.
7 8
Cours « Cours Parallélisme I » – P-F. Bonnefoi – http://libpfb.so/ — 29 novembre 2011 — 2
Parallélisme I — P-F. Bonnefoi Parallélisme I — P-F. Bonnefoi
Parallélisme I — P-F. Bonnefoi Parallélisme I — P-F. Bonnefoi Unix : les fondamentaux Historique : UNIX
Unix est un système supportant
UNIX
q Plusieurs utilisateurs ; La première version du système UNIX fut officiellement opérationnel en 1970.

En 1973, le système fut ré-écris en langage C (ce langage fut mis au point entre 1969 et 1973 q Plusieurs programmes :
par Kernighan et Richtie), ce qui lui permet d'être facilement porté vers d'autres machines.
q Partage du temps d’utilisation ; AT&T proposa cette version 2 du système UNIX (avec le code source) aux universités et aux
entreprises car un décret de 1956 interdisait à AT&T de commercialiser autre chose que des
équipements téléphoniques et télégraphiques. qP  rotection de la mémoire ;
qP  artage des ressources ;
qA  ccès à distance.
q Problèmes :
q Équité ;
q Gestion du matériel ;
q Droits d’accès…
9 10
Représentation simplifiée d’un ordinateur Représentation fonctionnelle
Un ordinateur peut être représenté symboliquement de la façon Le microprocesseur
suivante : Le microprocesseur est lui-même composé de nombreux
q Un processeur (ou microprocesseur) qui effectue les calculs, éléments, dont les principaux :
q Une unité de mémoire volatile qui permet de stocker les données
q Des périphériques qui permettent d'effectuer des entrées / sorties o L  es registres
sur des supports non volatiles comme un disque dur, un bande
magnétique ou un CD-ROM.
o  L'unité arithmétique et logique

Ces composants dialoguent entre eux par l'intermédiaire d'un bus de
o  L'unité de gestion de la mémoire communication.
o L  e cache primaire
o L  e coprocesseur
o  Le bus interne
11 12

Cours « Cours Parallélisme I » – P-F. Bonnefoi – http://libpfb.so/ — 29 novembre 2011 — 3
Parallélisme I — P-F. Bonnefoi Parallélisme I — P-F. Bonnefoi
Parallélisme I — P-F. Bonnefoi Parallélisme I — P-F. Bonnefoi Représentation fonctionnelle Représentation fonctionnelle
On ajoute dans cette représentation fonctionnelle, une horloge, Les composants indispensables :
des contrôleurs de périphériques, une unité de mémoire
principale, une unité de mémoire cache et de plusieurs bus de o L  a mémoire principale
communication.
o  La mémoire cache
o L  es contrôleurs de périphériques
o  Les bus de communication

o U  n processeur permettant un mode noyau/utilisateur
o  Les interruptions

13 14
Mode noyau et mode utilisateur Mode noyau et mode utilisateur
Les processeurs récents ont au moins deux modes de Les programmes sont exécuté en mode utilisateur.
fonctionnement :
Ce mécanisme les oblige à faire appel au système
q un mode noyau (ou système ou superviseur) d'exploitation pour certaines opérations à risque qui nécessite
de passer en mode noyau.
q un mode utilisateur.
On appelle ces opérations des appels système (exemple :
Ces deux modes sont utilisés pour permettre au système opérations de gestion de fichier pour modification des données)
d'exploitation de contrôler les accès aux ressources de la
machine. Ce mécanisme représente une protection fondamentale, située
au cœur du système.
En mode noyau, le processeur peut exécuter toutes les
instructions disponibles du système. Tous les accès aux ressources et aux données sont ainsi
nécessairement contrôlés par le système d'exploitation.
En revanche, lorsque le processeur est en mode utilisateur,
certaines instructions lui sont interdites, pour des raisons de
sécurité du système.
15 16
Cours « Cours Parallélisme I » – P-F. Bonnefoi – http://libpfb.so/ — 29 novembre 2011 — 4
Parallélisme I — P-F. Bonnefoi Parallélisme I — P-F. Bonnefoi
Parallélisme I — P-F. Bonnefoi Parallélisme I — P-F. Bonnefoi Le jeu d’instruction Le jeu d’instruction
L’appel système sollicite une routine système composée
La traduction de chaque instruction en action «électrique » d’instructions.
s’effectue par une simple table de correspondance et une
Le jeu d'instructions du processeur constitue l'ultime frontière instruction n’est qu’une représentation symbolique de
entre le logiciel et le matériel. C’est le langage dans lequel les l’application de tensions sur des contacteurs.
compilateurs doivent transformer les codes sources de plus haut
niveau.
Les jeux d'instructions dépendent du processeur et varient
énormément d'un type d'ordinateur à un autre.

Le nombre d'instructions disponibles et le travail effectué par
ces instructions sont difficilement comparables.
17 18
Le jeu d’instruction Le partage de la machine physique
Les instructions sont généralement classées en 5 catégories :
o a  rithmétique et logique (addition, soustraction, et, ou)
o  transfert de données (de la mémoire principale vers les
registres et réciproquement)
o  contrôle (appel de procédure, branchement, saut)
o s  ystème (trappe, appel au système d'exploitation)
o  flottant (opérations flottantes).
19 20
Cours « Cours Parallélisme I » – P-F. Bonnefoi – http://libpfb.so/ — 29 novembre 2011 — 5
Parallélisme I — P-F. Bonnefoi Parallélisme I — P-F. Bonnefoi
Parallélisme I — P-F. Bonnefoi Parallélisme I — P-F. Bonnefoi Le partage de la machine physique Périphériques et concurrence
La programmation concurrente est liée à la naissance des SE et à
La gestion du partage de la machine physique et des ressources l'invention des contrôleurs de périphériques (device controllers) :
matérielles doit permettre de répondre aux questions suivantes :
—  ils fonctionnent indépendamment du processeur central ;

—  ils permettent d'effectuer des opérations d'E/S en concurrence d'un
q P  artage du processeur unique : parmi tous les programmes chargés en programme exécuté par le processeur central.
mémoire centrale, lequel doit s'exécuter ? Le contrôleur communique avec le processeur central par
l'intermédiaire d'une interruption, un signal matériel qui le déroute
q P  artage de la mémoire centrale : comment allouer la mémoire centrale de l'exécution de la séquence d'instructions courante pour exécuter une
aux différents programmes. séquence d'instructions différente.
Comment assurer la protection entre plusieurs programmes
utilisateurs ? Problème ?
Comment protéger le système d'exploitation des programmes
l'intégration de contrôleur de périphérique pose le problème que
utilisateurs ?
certaines parties d'un programme peuvent s'exécuter dans un ordre
Par protection, on entend ici veiller à ce qu'un programme donné imprévisible !
n'accède pas à une plage mémoire allouée à un autre programme. Si un programme est en train de modifier la valeur d'une variable, une
interruption peut arriver et peut conduire à ce qu'une autre partie du
q pa  rtage des périphériques
programme essaie de changer la valeur de cette même variable !
21 22

La simplification de la machine physique Rôle du système d’exploitation
Simplification de la machine physique Le système d'exploitation offre à l'utilisateur une interface destinée à
masquer les caractéristiques matérielles.

Cette interface est composée d'un ensemble de primitives qui gèrent elles-
mêmes les caractéristiques matérielles sous-jacentes et offrent un service à
l'utilisateur.

Un utilisateur souhaitant réaliser une opération d'entrées sorties fait appel à
une primitive unique ECRIRE sans se soucier du type de gestion associée au
périphérique. C'est la primitive qui prendra en charge la spécificité du
périphérique.

L'ensemble des primitives offertes par le système d'exploitation crée une
machine virtuelle au dessus de la machine physique plus simple d'emploi et
plus conviviale.

On distingue deux types de primitives : les appels systèmes et les
23 24
commandes.
Cours « Cours Parallélisme I » – P-F. Bonnefoi – http://libpfb.so/ — 29 novembre 2011 — 6
Parallélisme I — P-F. Bonnefoi Parallélisme I — P-F. Bonnefoi
Parallélisme I — P-F. Bonnefoi Parallélisme I — P-F. Bonnefoi La simplification de la machine physique La simplification de la machine physique
un programme utilisateur doit faire explicitement appel aux
services du système d'exploitation pour accéder à certaines
ressources.
À ces fins, le système d'exploitation propose une interface de
programmation composée d’un ensemble de fonctions et de
procédures d’appel.
Le système d’exploitation permet ainsi aux programmes
d'accéder à un certain nombre de fonctionnalités qu'il exécutera
pour l'utilisateur.
Ainsi, les appels système constitue l'interface proposée par le
système d'exploitation pour accéder aux différentes ressources et
données de la machine.
25 26
La simplification de la machine physique La simplification de la machine physique
Le système d'exploitation se présente donc comme une couche logicielle
placée entre la machine matérielle et les applications.

q Il s'interface avec la couche matérielle, notamment par le biais du
mécanisme des interruptions.

q Il s'interface avec les applications par le biais des primitives qu'il
offre : appels système et commandes.

Le système d'exploitation peut être découpé en plusieurs grandes
fonctions.
27 28
27 28
Cours « Cours Parallélisme I » – P-F. Bonnefoi – http://libpfb.so/ — 29 novembre 2011 — 7
Parallélisme I — P-F. Bonnefoi Parallélisme I — P-F. Bonnefoi
Parallélisme I — P-F. Bonnefoi Parallélisme I — P-F. Bonnefoi Fonctions d’un système d’exploitation Fonctions d’un système d’exploitation
29 30
29 30
Fonctions d’un système d’exploitation Fonctions d’un système d’exploitation
31 32
31 32
Cours « Cours Parallélisme I » – P-F. Bonnefoi – http://libpfb.so/ — 29 novembre 2011 — 8
Parallélisme I — P-F. Bonnefoi Parallélisme I — P-F. Bonnefoi
Parallélisme I — P-F. Bonnefoi Parallélisme I — P-F. Bonnefoi Fonctions d’un système d’exploitation Fonctions d’un système d’exploitation
33 34
33 34
Chargement du système d’exploitation Installation des interruptions
Lors du chargement du système d’exploitation
Le système d'exploitation est un programme conservé sur le disque.

Lors du démarrage de la machine, le processeur commence à exécuter
un code stocké en mémoire morte non volatile : le bootstrap qui se
décompose en deux parties :

q  exécution du POST : il s'agit du test de tous les composants de la
machine
q  installation de la table des vecteurs d'interruptions en mémoire
centrale

Puis chargement des fichiers du système d'exploitation en mémoire
centrale depuis le disque.
35 36
Cours « Cours Parallélisme I » – P-F. Bonnefoi – http://libpfb.so/ — 29 novembre 2011 — 9
Parallélisme I — P-F. Bonnefoi Parallélisme I — P-F. Bonnefoi
Parallélisme I — P-F. Bonnefoi Parallélisme I — P-F. Bonnefoi Programme vs Processus Programme
La chaîne de production de programme transforme un programme écrit dans un Programme :
langage de haut niveau en un programme dit exécutable, écrit en langage machine. C’est une entité purement statique associée à la suite des
Ce programme exécutable à l'issue de l'édition des liens est stocké sur le disque.
instructions qui la composent. A l'issue du chargement, il est placé en mémoire centrale pour pouvoir être exécuté.
Processus
C'est une entité purement dynamique associée à la suite des
actions réalisées par un programme.

o  La notion de processus introduit implicitement le concept et le
fonctionnement des systèmes multiprogrammé.
o  Un processus est une abstraction de données définies par 2 parties : un état et
un comportement.
37 38
Exécution du programme dans la machine Exécution du programme dans la machine
Le programme à exécuter est placé en mémoire centrale à partir de
l'emplacement d'adresse 102.

Le processeur a commencé l'exécution du programme : la première instruction de
celui-ci a été chargée dans le registre instruction (RI) et le Compteur Ordinal
(CO) contient l'adresse de la prochaine instruction à exécuter soit 103.

Lorsque l'instruction courante aura été exécutée, le processeur chargera dans le
registre RI l'instruction pointée par le CO, soit add Imm R1 5 et le compteur
ordinal prendra la valeur 104.

L'exécution de l'instruction add Imm R1 5 va modifier le contenu du registre
PSW (registre d’état) puisque c'est une instruction arithmétique : les flags de
signe, de nullité etc. sont mis à jour.

39 40
Cours « Cours Parallélisme I » – P-F. Bonnefoi – http://libpfb.so/ — 29 novembre 2011 — 10
Parallélisme I — P-F. Bonnefoi Parallélisme I — P-F. Bonnefoi
Parallélisme I — P-F. Bonnefoi Parallélisme I — P-F. Bonnefoi

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