81
ECOLE SUPERIEURE ET D'APPLICATION DES TRANSMISSIONS _______ Cours par correspondance préparatoire à l'EA2/FS BSTAT Domaine SIC Généralités sur les systèmes d’exploitation (chapitre 1 à 7 ) DIRECTION GENERALE DE LA FORMATION _______ COURS PAR CORRESPONDANCE Site du Cours Par Correspondance www.esat.terre.defense.gouv.fr/services/cpc/default.htm page 1

Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

  • Upload
    vothien

  • View
    222

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

ECOLE SUPERIEURE ET D'APPLICATION DES TRANSMISSIONS _______

Cours par correspondance préparatoire à l'EA2/FS BSTAT Domaine SIC Généralités sur les systèmes d’exploitation (chapitre 1 à 7 )

DIRECTION GENERALE DE LA FORMATION _______

COURS PAR CORRESPONDANCE

Site du Cours Par Correspondance www.esat.terre.defense.gouv.fr/services/cpc/default.htm

page 1

Page 2: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

TABLE DES MATIERES

CHAPITRE 1 - GENERALITES ......................................................................................................3

1. introduction ...............................................................................................................................4

1. constitutiond'un système informatique ....................................................................................5

2. le traitement de l'information...................................................................................................6

3. l’information, premier besoin d’un ordinateur .......................................................................8

4. annexe......................................................................................................................................11

CHAPITRE 2 - REPRESENTATION DE L'INFORMATION.....................................................14

5. les systèmes de numération.....................................................................................................15

6. correspondances décimal, binaire, octal, hexadécimal .........................................................16

7. calculs ......................................................................................................................................20

8. autre intérêt de la numération : les tables de codage ............................................................20

CHAPITRE 3 - L'ARCHITECTURE D'UN ORDINATEUR........................................................23

9. description des organes principaux........................................................................................24

10. l’unité de commande...............................................................................................................26

11. le fonctionnement de l’UAL ...................................................................................................28

12. synthèse....................................................................................................................................30

CHAPITRE 4 - LE FONCTIONNEMENT D'UN ORDINATEUR ..............................................31

13. le cycle de base d’une instruction arithmétique.....................................................................32

14. complément sur le fonctionnement ........................................................................................40

CHAPITRE 5 LES PERIPHERIQUES..........................................................................................48

15. les périphériques d’entrée-sortie ............................................................................................49

16. les périphériques de stockage .................................................................................................52

17. les supports optiques : principes de fonctionnement .............................................................57

CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ....................................................................59

18. généralités................................................................................................................................60

19. fonctionnalités de base d’un système d’exploitation .............................................................61

20. les différentes couches d’un système d’exploitation..............................................................62

21. le BIOS (Basic Input Output System) ....................................................................................64

22. classification des systèmes d’exploitation ..............................................................................65

CHAPITRE 7 - LA GESTION DES ENTREES ET SORTIES ET INTERRUPTIONS...............69

23. les entrées-sorties ....................................................................................................................70

24. complément sur les entrées-sorties .........................................................................................74

25. les interruptions.......................................................................................................................76

page 2

Page 3: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

GENERALITES SUR LES

SYSTEMES D'EXPLOITATION

CHAPITRE 1

page 3

Page 4: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

GENERALITES 1- INTRODUCTION L'informatique est née au début du vingtième siècle (correspond à la création de la société IBM). On a construit une machine capable d'effectuer plusieurs opérations sans intervention humaine. Le premier véritable ordinateur est créé en 1942 à Berlin : il s'agit du Z3. En 1946 on construit l'E.N.I.A.C. qui suit le modèle d'ordinateur inventé par Mr. Von Neumann, considéré comme le fondateur de l'informatique moderne. Il comporte 800 km de fils, 18000 lampes, 50000 commutateurs, pèse 30 tonnes et consomme 150 kW. Depuis cette date, des développements très rapides ont eu lieu, et deux domaines sont apparus : le matériel et le logiciel (hardware et software). Les deux domaines ont progressé ensemble et on distingue à ce jour quatre à cinq générations d'ordinateurs.

HISTORIQUEHISTORIQUE19451945

19601960

19701970

19801980

19901990

20002000

11ererOrdinateurOrdinateur

11ereeregénérationgénération

tubes électroniquestubes électroniques

22emeemegénérationgénération

transistorstransistors

33emeemegénérationgénération

minimini--ordinateursordinateurs

ProcesseursProcesseursmicromicro--ordinateursordinateurs

Réseau

Graphisme

Traitementpar lots

Tempspartagé

Convivialitéet

Transparence

En 1960, apparaissait un type nouveau de machines : les ordinateurs de gestion. Ces machines ne faisaient plus seulement des calculs, elles allaient révolutionner le monde de l’entreprise et de l’administration en apportant des outils entièrement nouveaux. L’introduction d’un ordinateur aujourd’hui ne permet pas seulement de travailler plus vite, mais de travailler, de s’organiser autrement. L’informatique fait partie de la vie quotidienne de chacun, que ce soit dans ses activités privées ou ses activités professionnelles. La RATP se sert de nombreux ordinateurs pour des applications très diverses : l’information magnétique sur la bande du ticket est lue puis transmise à un ordinateur qui la vérifie et ouvre le portillon. Les rames sont pilotées par des ordinateurs qui freinent en fonction des feux et qui gardent une vitesse constante aux rames. Les systèmes de réservation de la SNCF ou dans les avions se font à l’aide de nombreux ordinateurs. L’administration des impôts et de la sécurité sociale ne peuvent plus se passer de l’informatique. Les machines à laver sont pilotées par un micro processeur, en bref, on en trouve partout (voitures, montres, etc...). Et ce n’est rien quand on songe maintenant à la place prépondérante qu’a pris la Bureautique dans toutes sortes de métier, toutes ces utilisations n’ayant qu’un seul but : simplifier et alléger les tâches administratives. Ce cours a pour but de poser les premiers jalons permettant de comprendre les principes fondamentaux qui régissent le fonctionnement des ordinateurs. Son but n’est pas seulement de décrire les aspects matériels

page 4

Page 5: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

de l’informatique, mais, à travers leur présentation, de montrer comment les matériels fonctionnent et pourquoi le système d'exploitation est indispensable aux utilisateurs d'un ordinateur.

1. CONSTITUTION D’UN SYSTEME INFORMATIQUE D'après John Von Neumann, un système informatique comporte toujours les caractéristiques suivantes : - au moins une unité de traitement qui réalise des opérations sur les données (processeur), - au moins une unité de stockage qui mémorise l'information, - au moins une unité d'entrée, - au moins une unité de sortie.

MODELE DE VON NEUMANNMODELE DE VON NEUMANN

Unité d'entréeUnité d'entrée

Unité de stockageUnité de stockage

Unité de traitementUnité de traitement Unité de sortieUnité de sortie

Si l’on prend l'exemple d'un P.C., on peut définir ce qui suit :

EXEMPLE D'UN PCEXEMPLE D'UN PC

UnitéUnitécentralecentraleMicroprocesseurMicroprocesseur MémoireMémoire

Supports de stockageSupports de stockage

DisquetteDisquette DisqueDisquedurdur

Périphériques de sortiePériphériques de sortie

EcranEcran ImprimanteImprimante

Périphériques d'entréePériphériques d'entrée

ClavierClavier SourisSouris

page 5

Page 6: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

Exemple de configuration d'un ordinateur :

- unité de traitement : microprocesseur - supports de stockage : disque dur, disquettes - unités d'entrée : clavier, souris, scanner - unités de sortie : écran, imprimante, haut-parleur

2. LE TRAITEMENT DE L’INFORMATION Il est difficile de représenter l’informatique sans situer par un exemple, son domaine d’application, son intérêt, sa raison d’être. Une entreprise commercialise des produits, la secrétaire de cette entreprise doit posséder un fichier d’adresse des clients, ce fichier d’adresse comprend les informations suivantes :

- le nom de la société, - le prénom et le nom du directeur, - son numéro de téléphone, - son adresse.

L’utilisation qui en est faite est semblable à celle d’un particulier manipulant son propre carnet d’adresses :

- création d’un nouvel ensemble d’informations pour un nouveau client. - modification d’une ou l’autre des informations concernant un client. - annulation de l’ensemble des informations pour un client donné. - recherche des informations correspondant à un client en particulier par le nom de société, par le nom du directeur, par adresse.

A ce stade, nous faisons déjà un peu d’informatique puisque notre propos est d’étudier un traitement d’information : celui qui concerne la gestion d’un fichier d’adresses. En effet, l’informatique est la science du traitement rationnel de l’information par des machines automatiques. Le mot INFORMATIQUE vient du néologisme conçu en 1962 issu de INFORMAT(ion) (automat)IQUE. Pour pouvoir traiter l’information il faut dans un premier lieu la définir quant à son contenu et quant à sa forme. Donnons-nous une représentation, pour une personne de l’ensemble des informations contenues dans le fichier d’adresse : NOM SOCIETE NOM DIRECTEUR - PRENOM DIRECTEUR TEL ADRESSE Par exemple :

DISTRIBUFILM DUBOIS JEAN 02 99 30 25 01 33 RUE DES OISEAUX 35000 RENNES

On peut donc dire que l’information se caractérise par : - son contenu, c’est à dire le message qu’elle représente, - sa forme, autrement dit la représentation choisie pour la formuler, - et le support sur lequel elle figure.

page 6

Page 7: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

2.1 LA NOTION D’ALGORITHME

Isolons une des applications intéressant l’entreprise : une recherche par nom pour extraire la fiche d’une personne et la copier sur une feuille. On peut la décomposer comme suit :

NOTIONNOTIOND'ALGORITHMED'ALGORITHME

PRENDRE LA CARTE DEVISITE

PRENDRE LE FICHIERD'ADRESSE

LIRE LE NOM (nom) SURLA CARTE

PRENDRE LA PREMIERE FICHENON LUE DU FICHIER

D'ADRESSE

LIRE LE NOM (NOM) DELA FICHE DU FICHIER

D'ADRESSE

DEBUT

nom=

NOM

OUINON PRENDRE UNE FEUILLEBLANCHE

RECOPIER LA FICHESUR LA FEUILLE

FIN

Nous venons de voir que l’informatique repose sur le concept d’algorithme. Celui-ci ne peut être abordé de façon intuitive par la seule connaissance d’un langage de programmation. Il est indispensable d’avoir recours à une méthode pour apprendre à décomposer des problèmes et savoir formuler correctement les questions qui se posent dans une analyse. De manière générale, un algorithme décrit le travail à effectuer pour parvenir à un résultat à partir d’une question posée. Le seul langage exécutable directement par un ordinateur est le langage machine interne. Il est spécifique de chaque ordinateur. Il s’écrit avec un alphabet constitué des deux seuls symboles 0 et 1 (alphabet binaire) et ne fait que des opérations élémentaires arithmétiques et logiques ; en conséquence, il est difficilement utilisable par l’homme. Pour pouvoir écrire plus facilement des programmes, des langages évolués proche du langage humain ont été conçus. Cette notion sera approfondie par la suite.

2.2 LA DEMARCHE POUR CONSTRUIRE UN ALGORITHME

L’essentiel est de savoir de quoi on part, à quel résultat on veut aboutir avec l’algorithme que l’on cherche à construire, et avec quels moyens on veut aboutir. Il faut essayer d’exposer, de la façon la plus claire possible, le problème à résoudre. L’ordinateur sait réaliser un certain nombre de tâches qui sont écrites avec le langage de programmation utilisé. L’algorithme doit donc être une succession de ces tâches. Une fois le problème exposé dans son ensemble, on essaiera de le décomposer en sous problèmes moins complexes à résoudre et, suivant la complexité du problème, il sera peut être nécessaire de recommencer un certain nombre de fois ce processus. Exemple : revenons à notre algorithme précédent, celui ci se termine par la tâche «RECOPIER LA FICHE SUR LA FEUILLE ». En fait cette tâche se décompose elle-même en sous-tâches compréhensibles par l’exécutant (son langage machine ) :

page 7

Page 8: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

DEBUTRECOPIERRECOPIERLA FICHELA FICHE

SUR SUR LA FEUILLELA FEUILLE

RECOPIE LE NOM SOCIETEDE LA FICHE SUR LA FEUILLE

RECOPIE LE NOMDE LA FICHE SUR LA FEUILLE

RECOPIE LE PRENOMDE LA FICHE SUR LA FEUILLE

RECOPIE LE TEL.DE LA FICHE SUR LA FEUILLE

RECOPIE L'ADRESSEDE LA FICHE SUR LA FEUILLE

FIN

3. L’INFORMATION, PREMIER BESOIN D’UN ORDINATEUR Les algorithmes constituent le fondement de l’informatique, toutefois, il faut aussi expliquer pourquoi et comment ils permettent à un système informatique de fonctionner. Il faut donc présenter les matériels qui permettent d’automatiser un processus. Nous verrons par la suite que les matériels utilisés en informatique ont des fonctions naturelles très proche de l’homme. En outre, nous étudierons de façon sommaire comment l’information est représentée dans un ordinateur.

3.1 LES ENTREES-SORTIES

Il faut d’abord alimenter le travail de l’ordinateur. Dans l’exemple précédent, la secrétaire lit d’abord la carte de visite : elle doit acquérir l’information nécessaire à son travail. C’est une opération d’entrée. A l’inverse, quand elle dépose la feuille qu’elle a remplie, elle restitue l’information. Elle effectue une opération de sortie. Ces opérations se font à l’aide de matériels que l’on appelle périphériques. Nous décrirons plus loin les différents périphériques qui permettent de réaliser la liaison entre l’homme et la machine. On peut d’ores et déjà définir deux grandes catégories de périphériques : - les premiers permettent simplement d’effectuer des opérations d’entrée/sortie comme celles décrites précédemment, - les seconds jouent, en plus du rôle d’entrée / sortie, le rôle de mémoire de masse. En effet, ils peuvent supporter de grandes masses d’informations généralement organisées sous forme de fichiers. Le bac dans lequel se trouvent les fiches des clients joue le rôle de la mémoire de masse. Ce fichier constitue une partie du capital en informations de l’entreprise.

3.2 LE TRAITEMENT ET LA MEMOIRE

Pour réaliser le travail demandé, la secrétaire dispose de plusieurs éléments. Elle a devant elle :

- la carte de visite, - la première fiche non lue extraite du fichier, - une feuille blanche, - les instructions de travail correspondant à l’algorithme.

page 8

Page 9: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

Ces quatre blocs d’information reposent sur un même support, le papier. Ils constituent la mémoire de travail immédiate. Dans un ordinateur, la mémoire centrale joue ce rôle. Comme cet exemple le montre, la mémoire centrale contient, à un moment donné, les entrées (carte de visite et fiche ), les sorties (la feuille blanche ) et le programme (suite des instructions à exécuter ). Définition : La mémoire est un dispositif capable de stocker des informations accessibles n'importe quand par la machine. Analogie à l’être humain : la semaine du 1er Transmetteur MARTIN. Le lundi 1er avril, le 1er Transmetteur Martin reçoit de son chef 20 petites missions à accomplir avant la fin de la semaine. Lorsqu’il reçoit ses ordres, Martin, homme organisé, sort son calepin et note les 20 missions ainsi que le détail des tâches à accomplir pour chaque mission. Pour ne pas s’encombrer l’esprit avec toutes les missions et pour ne pas en oublier, il les note. Traduction : Martin utilise sa mémoire auxiliaire, son calepin. Il est 8h00, Martin décide d’accomplir la première mission. Il lit son calepin et mémorise l’ensemble des tâches à exécuter pour la mener à bien. « Première mission : laver la voiture du Général » = percevoir les clés au Service Général, aller sur l’aire de lavage, percevoir les produits d’entretien,..., réintégrer les clés au Service Général. Traduction : Martin “charge” dans sa mémoire immédiate, c’est à dire sa mémoire centrale, les opérations à effectuer pour cette mission. Il est 10h00, Martin a terminé sa mission. Il va utiliser sa mémoire immédiate qui le renseigne sur le résultat final de sa mission. Il ouvre son calepin, note «terminé » en face de la première mission. De plus, il inscrit une remarque «pare-brise fissuré », fait dont il rendra compte le plus vite possible à son chef. Ensuite, il mémorise les détails de la deuxième mission et oublie ceux de la première qui sont devenus caduques. Traduction : Martin stocke dans sa mémoire auxiliaire les résultats de sa première mission (accomplie, mais pare-brise fissuré ), vide sa mémoire centrale des détails de la première mission et de son résultat et reprend avec la deuxième mission... Remarque : les missions sont les programmes, on parle couramment du programme de la journée. Toutefois, le fait de posséder les informations ne suffit pas. Il faut pouvoir réaliser des opérations de recopie, de comparaison et de calcul. Les deux dernières opérations sont réalisées dans un ordinateur par l'Unité Arithmétique et Logique (UAL). Entre la mémoire centrale et L’UAL se trouvent les organes de commande, ils permettent au programme résidant en mémoire centrale de s’exécuter tel qu’il a été écrit. Dans la partie du cours sur le fonctionnement détaillé de l’ordinateur nous expliquerons les missions de chacun de ces organes. Les périphériques, l’UAL, la mémoire centrale et les organes de commandes sont reliés par des bus. Ce sont des lignes de communication permettant le transfert d’informations d’un organe à un autre. On utilise le terme d’unité centrale pour regrouper l’UAL, la mémoire centrale et les organes de commande.

3.3 LES INSTRUCTIONS

Dans cette présentation, outre les matériels et les organes dont les fonctions viennent d’être précisées, plusieurs types d’opérations ont été utilisés. Elles correspondent à des instructions que la machine est capable d’exécuter :

- les instructions d’entrée / sortie - les instructions de transfert (recopie) - les instructions de calcul arithmétique (addition, multiplication ....)

page 9

Page 10: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

- les instructions de calcul logique (comparaisons et opérations logiques)

Tout traitement automatique d’informations requiert des organes remplissant les fonctions décrites ci-dessus. Nous pouvons maintenant établir un premier plan de notre ordinateur :

STRUCTURE SOMMAIRE D'UN ORDINATEURSTRUCTURE SOMMAIRE D'UN ORDINATEUR

Périphérique

1

Périphérique

2

Périphérique

3

UAL

ORGANES

DE

COMMANDE

MEMOIREMEMOIRE

CENTRALECENTRALE

PériphériquesPériphériques Unité CentraleUnité CentraleBUSBUS

Dans la suite du cours, le fonctionnement d’un ordinateur sera présenté à l’aide d’une machine fictive permettant d’étudier les principes de fonctionnement de la plupart des machines actuelles. Ensuite, les principaux périphériques seront décrits. Auparavant, il y a lieu de connaître comment l’information est représentée à l’intérieur d’une machine, que ce soit un périphérique ou un ordinateur.

page 10

Page 11: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

4. ANNEXE

PETIT HISTORIQUE DE L’INFORMATIQUE

1642 : Blaise PASCAL a 19 ans et construit la première machine à calculer entièrement mécanique, à base d'engrenages et actionnée à la main, destinée à aider son père, alors intendant des finances en haute Normandie. Elle réalise l'addition et la soustraction. C'est en l'honneur de Blaise PASCAL que Niklaus WIRTH a appelé Pascal un langage de programmation qu'il a inventé. 1672 : LIEBNIZ ajoute la multiplication et la division à la machine de Pascal. 1834 : Charles BABBAGE construit une machine destinée à établir les tables numériques pour la navigation maritime, elle gravait ses résultats sur un plateau en cuivre à l'aide d'un timbre en acier. La machine analytique (anglais), évolution de la machine à différences, comprend : - le magasin ( mémoire, 1000 mots de 50 chiffres ), - le moulin ( Unité de calcul, 4 opérations et branchements ), - l'entrée ( lecture des cartes perforées ), - la sortie ( perforation ou impression ). Elle est entièrement mécanique et les instructions (programme) sont lues sur des cartes perforées ( la technologie est peu fiable et il n’y a pas de mise au point définitive). Adda Augusta LOVELACE, fille du poète LORD BYRON et collaboratrice de BABBAGE, écrit le premier programme informatique. 1936 : Konrad ZUSE fabrique le Z1 qui est le premier calculateur à relais (allemand) qui sera détruit au cours de la guerre. 1944 : AIKEN construit le premier calculateur américain : le Mark 1. 1944 : Le COLOSSUS est le premier calculateur électronique (Anglais), il est utilisé pour casser les codes de communication des sous-marins allemands. 1946 : ECKERT et MAUCHLEY construisent l' ENIAC 1 pour répondre au besoins des militaires qui avaient besoin de tables de calculs pour les tirs d’artillerie, longues à fabriquer et pleines d’erreurs. C’est le début de l'histoire des calculateurs modernes (Université de Pennsylvanie). 1948 : John Bardeen, Walter Brattain et William Shockley inventent le transistor au Bell Labs ( Prix Nobel de physique en 1956 ). 1949 : Maurice WILKES réalise l' EDSAC qui est le premier calculateur à programme enregistré (Université de Cambrige). 1951 : réalisation du Whirlwind par le Massachusset Institute of Technology (MIT). C’est le premier calculateur temps réel. Le premier mini-ordinateur est commercialisé. Jay FORESTER invente les mémoires à tores magnétiques. 1952 : John VON NEUMANN construit l' IAS Von Neumann peut être qualifié de génie au même titre que Léonard de Vinci. Sa proposition, utilisée pour la construction de l’EDSAC et de l’IAS, fixe l’architecture moderne des ordinateurs. Cette proposition présente une machine en 5 parties : - la mémoire centrale comprend 4096 mots de 40 bits, - deux instructions à 20 bits, un entier signé sur 39 bits, - les instructions à 8 bits pour le type et à 20 bits pour l’adresse,

page 11

Page 12: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

- une UAL à un registre interne : l’accumulateur, - une unité de commande, - des dispositifs d’entrée / sortie. 1956 : le mot ORDINATEUR est inventé par Jacques PERRET. Bull fabrique le GAMMA ET. 1960 : DEC commercialise le PDP-1 : premier mini-ordinateur vendu à 50 exemplaires, 120 000$, 4096 mots de 18 bits, cycle de 5 micro secondes, écran de 512 par 512 et premier jeu vidéo. l'IBM 7090 seulement deux fois plus puissant valait des millions de $. 1961 : IBM lance le 1401, une petite machine de gestion. 1962 : IBM lance le 7094, une grosse machine scientifique. 1963 : Burroughs commercialise le B5000, le premier ordinateur conçu pour un langage (Algol 60, ancêtre du Pascal) 1964 : CDC réalise le 6600, 10 fois plus rapide que l’IBM 7094, hautement parallèle, il peut traiter simultanément 10 instructions. 1965 : DEC réalise le PDP-8 avec des mots de 12 bits et bus unique, 16 000$. C’est le premier mini vendu à 5000 exemplaires. 1964 65 : IBM est n°1 mondial de l’informatique. Il doit rajeunir son parc de 1401 et de 7094 qui sont des machines incompatibles par un gamme : les produits System/360. Les 360 sont capables d’émuler les 1401 pour les plus petits et les 7094 pour les plus gros. Première introduction de la multiprogrammation. 1970 : DEC commercialise le PDP-11 qui va devenir le mini des années 1970. Naissance du transactionnel. 1971 : Intel commercialise le 4004, premier microprocesseur 4/4 bits, 1 Ko RAM. Motorola commercialise le 6502, 8/8 bits, 16 Ko Ram. 1972 : le 8008 d'Intel, 8/8 bits, 16 Ko Ram. 1973 : le 6809 de Motorola, 16/8bits. 1974 : Intel réalise le 8080, c’est la première UC sur puce. Sortie du CRAY-1, premier super ordinateur de Seymour CRAY, concepteur du CDC 6600 et de son successeur 7600, a fondé sa propre société Cray Research pour construire les Cray-1 et Cray-2. 1976 : APPLE vend 200 exemplaires de son APPLE 1. 1977 : Départ de la micro-informatique familiale : Apple, Tandy, Commodore, etc ... 1978 : DEC commercialise le VAX, premier supermini 32 bits. Le 8086 d'Intel, première UC 16 bits sur une puce. 1979 : Le 68000 de Motorola 32/16 bits, 16 Mo Ram. 1980 : Interface Homme-Machine, naissance des stations de travail. Naissance du concept de feuille de calcul (Visicalc). 1981 : le 8088 d'Intel, premier processeur de l'IBM P.C. et naissance de la micro-informatique professionnelle. 1982 : le 80186 d'Intel, 16/16 bits, 1 Mo Ram. Le 68008 de Motorola, 32/8 bits, 4 Mo Ram (bas de gamme). Le 80286 d'Intel, 16/16 bits, 16 Mo Ram. 1983 : Lotus 123, premier tableur graphique. Dbase 1 de Ashton-Tate, première base de données pour micro.

page 12

Page 13: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

1984 : le 68020 de Motorola, 32/32 bits, 4 Go Ram. Apple commercialise le MACINTOSH (basé sur le 68000). Première interface graphique pour micro-ordinateurs (GEM d’Atari). 1985 : le 80386 d'Intel, 32/32 bits, 70 To, UC 32 bits. 1987 : le 68030 de Motorola, 32/32 bits, 4 Go, MMU intégrée. IBM commercialise le PS/2 avec OS/2. WINDOWS de MicroSoft supplante GEM d’ATARI. SCO (Santa Cruz Operation) commercialise Xenix, un Unix pour processeur Intel. 1988 : Presentation Manager pour OS/2 d’IBM. Sortie de Windows 3. 1989 : le 80486 d'Intel, 32/32 bits, 70 To, plus rapide que 80386. Le 68040 de Motorola 32/32 bits, 4 Go, plus rapide que 68030. 1991 : Apple OS7, le multitâche pour MACINTOSH. UNIX system V 4.0. 1992 : Windows NT. 1994 : Windows 3.11. Pentium d'Intel. 1995 : Windows 95. 1996 : Windows NT 4.

page 13

Page 14: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

GENERALITES SUR LES

SYSTEMES D'EXPLOITATION

CHAPITRE 2

page 14

Page 15: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

REPRESENTATION DE L’INFORMATION Afin de donner des notions simples en matière de représentation de l’information, seuls seront abordés ici les grands principes. Ainsi, les nombres négatifs ou décimaux, les opérations autres que l’addition ne seront pas traités. Toute l’information traitée par les machines dont on dispose actuellement est codée sous forme binaire. L’information est traitée par quantité de taille fixe, appelée MOTS. Ces mots se composent d’un certain nombre de chiffres binaires ( des 0 et des 1 ) appelés BITS (contraction de BInary digiT). Le nombre de Bits qui composent les mots est variable selon les types de machines. On appelle OCTET un ensemble de 8 chiffres binaires. C’est souvent la plus petite quantité d’information que l’on puisse manipuler. C’est pourquoi on mesure couramment la longueur des mots en octets. Par exemple, un mot de 16 bits est composé de 2 octets. De plus, on a l’habitude de numéroter les bits d’un mot de droite à gauche en commençant par 0 : 0 0 0 0 1 0 1 0 7 6 5 4 3 2 1 0 Dans cet exemple, le contenu du mot représente le nombre entier 10 en système binaire.

5. LES SYSTEMES DE NUMERATION

5.1 LE SYSTEME GENERAL

Le nombre X se décompose dans la base B comme ceci : X= AN*BN + AN-1*BN-1 +.......+ A1*B1 + A0*B0

où : - AN, AN-1, ...., A1, A0 sont les coefficients, - BN, BN-1 , ...., B1, B0 sont les puissances de la base B

5.2 LE SYSTEME DECIMAL

Le système décimal utilise 10 chiffres (0 à 9). On peut décomposer le nombre 1997 comme suit : 1997 = 1*1000 + 9*100 + 9*10 + 7*1 Soit en ramenant en puissances de 10 : 1997 = 1*103 + 9*102 + 9*101 + 7*100

Dans ce cas, les coefficients sont : 1, 9, 9, 7 et les puissances de 10 sont : 103, 102, 101 et 100.

5.3 LE SYSTEME BINAIRE

Le système binaire, base 2, n’utilise que les deux chiffres 0 et 1, ceci va correspondre au nombre d’états utilisés généralement sur un calculateur. Tout nombre binaire est une composition de puissance de 2. Par exemple, on peut écrire pour le nombre 22 :

page 15

Page 16: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

22 = 16 + 4 + 2 Soit, en appliquant la définition du système général : 22 = 1*16 + 0*8 + 1*4 + 1*2 + 0*1 Ce qui, ramené en puissances de 2, donne : 22 = 1*24 + 0*23 + 1*22 + 1*21 + 0*20

De même, pour le nombre 51, on peut écrire : 51 = 1*25 + 1*24 + 0*23 + 0*22 + 1*21 + 1*20 = 110011 en base 2. On notera : 51(10)=110011(2) 51(10)= 1 1 0 0 1 1(2) 5 4 3 2 1 0 (position du bit ou puissance de la base) Quelques puissances de 2 :

20 1 21 2 22 4 23 8 24 16 25 32 26 64 27 128 28 256 29 512 210 1024

5.4 LE SYSTEME OCTAL, LE SYSTEME HEXADECIMAL

Si la représentation binaire est très commode pour le calculateur, il n’en est pas de même pour l’utilisateur qui préfère en particulier une écriture plus condensée. En octal, on disposera de 8 chiffres pour représenter les nombres (0,1,2,3,4,5,6,7). En hexadécimal on disposera de 16 chiffres ou symboles (0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F)

6. CORRESPONDANCES DECIMAL, BINAIRE, OCTAL, HEXADECIMAL Dans un souci de concision et de convivialité, il est d’usage de remplacer les 8 bits par un nombre hexadécimal prenant 4 fois moins de place lorsqu’on lit le contenu de la mémoire à l’écran ou via une imprimante. Il est donc indispensable de savoir compter en binaire comme en hexadécimal et même parfois en octal.

page 16

Page 17: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

Hexa (base 16) Décimal (base 10) Octal (base 8) Binaire (base 2) 0 0 0 0 1 1 1 1 2 2 2 10 3 3 3 11 4 4 4 100 5 5 5 101 6 6 6 110 7 7 7 111 8 8 10 1000 9 9 11 1001 A 10 12 1010 B 11 13 1011 C 12 14 1100 D 13 15 1101 E 14 16 1110 F 15 17 1111

10 16 20 10000

6.1 CORRESPONDANCE DECIMAL - BINAIRE

6.1.1 DU BINAIRE AU DECIMAL

Tout nombre binaire est une composition de puissance de 2 : 11 = 1*21 + 1*20. Il suffit de faire le calcul induit pour trouver un nombre décimal. On utilise la formule du système général : X= AN*BN + AN-1*BN-1 +.......+ A1*B1 + A0*B0

Soit avec le nombre 1111011 en base 2 : X = 1 1 1 1 0 1 1 6 5 4 3 2 1 0 (position du bit ou puissance de la base) X = 1*26 + 1*25 + 1*24 + 1*23 + 0*22 + 1*21 + 1*20

X = 64 + 32 + 16 + 8 + 0 + 2 + 1 X = 123 1111011(2) = 123(10)

6.1.2 DU DECIMAL AU BINAIRE

L’opération inverse est suggérée. Il suffit de décomposer un nombre décimal en puissance de 2 pour trouver un nombre binaire. 51(10) = 1*25 + 1*24 + 0*23 + 0*22 + 1*21 + 1*20 = 110011(2)

page 17

Page 18: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

Encore plus facilement, le passage de la base 10 à la base 2 se fait aussi par divisions successives par 2 et l’on relève le résultat en partant du résultat de la dernière division. 51 2 1 25 2 1 12 2 0 6 2 0 3 2 1 1

51(10) = 110011(2)

6.2 CORRESPONDANCE DECIMAL - OCTAL

6.2.1 DE L’OCTAL AU DECIMAL

On applique la formule du système général : X= AN*8N + AN-1*8N-1 +.......+ A1*81 + A0*80

Ce qui donne, par exemple, pour le nombre 3712 en base 8 : 3712(8) = 3*83 + 7*82 + 1*81 + 2*80

= 3*512 + 7*64 + 1*8 + 2*1 = 1536 + 448 + 8 + 2 = 1994(10)

6.2.2 DU DECIMAL A L’OCTAL

On opère à l’identique de la base 2, en effectuant des divisions successives par 8 (par la base) : 1994 8 39 249 8 74 09 31 8 2 1 7 3

1994(10) = 3712(8)

6.3 CORRESPONDANCE DECIMAL - HEXADECIMAL

6.3.1 DE L’HEXADECIMAL AU DECIMAL

On applique la formule du système général : X= AN*16N + AN-1*16N-1 +.......+ A1*161 + A0*160

Ce qui donne, par exemple, pour le nombre 7CA en base 16 :

page 18

Page 19: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

7CA(16) = 7*162 + C*161 + A*160

= 7*256 + 12*16 + 10*1 = 1792 + 192 + 10 = 1994(10

6.3.2 DU DECIMAL A L’HEXADECIMAL

On effectue des divisions successives par 16 : 1994 16 39 124 16 74 12 7 10 A C 7

1994(10) = 7CA(16)

6.4 CORRESPONDANCE BINAIRE - OCTAL

6.4.1 DU BINAIRE A L’OCTAL

On regroupe les bits trois par trois : 1 011 101 (binaire) 1 3 5 (octal)

1011101(2) = 135(8)

6.4.2 DE L’OCTAL AU BINAIRE

On éclate chaque valeur sur trois bits : 1 7 0 4 (octal) 001 111 000 100 (binaire)

1704(8) = 1111000100(2)

6.5 CORRESPONDANCE BINAIRE - HEXADECIMAL

6.5.1 DU BINAIRE A L’HEXADECIMAL

On regroupe les bits quatre par quatre : 10 0110 1101 (binaire) 2 6 D (hexadécimal)

1001101101(2) = 26D(16)

page 19

Page 20: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

6.5.2 DE L’HEXADECIMAL AU BINAIRE

On éclate chaque valeur sur quatre bits : 2 C 1 (hexadécimal) 0010 1100 0001 (binaire)

2C1(16) = 1011000001(2)

7. CALCULS

7.1 ADDITION BINAIRE

Règles : 0+0=0 0+1=1 1+0=1 1+1=0 avec 1 en retenue Exemple : 11 retenues 11010 + 11100 110110 Le principe est identique pour toutes les bases, toutefois, il y a lieu de s’assurer que tous les opérandes sont dans la même base.

7.2 ADDITION DE DEUX NOMBRES HEXADECIMAUX

31 F 5 1 +41 5 6 A + 81 4 B B Détail de l’addition : 1 + A (base 16) = 1 + 10 (base 10) = 11 (base 10) = B (base 16) 5 + 6 (base 16) = 5 + 6 (base 10) = 11 (base 10) = B (base 16) F + 5 (base 16) = 15 + 5 (base 10) = 16 + 4 (base 10) je pose 4 et je retiens la base : 1 3 + 1 + 4 (base 16) = 8 (base 16)

8. AUTRE INTERET DE LA NUMERATION : LES TABLES DE CODAGE

page 20

Page 21: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

TABLE ASCII La table suivante correspond à la table ASCII standard codée sur 7 bits (de 0 à 127) :

La table précédente enrichie des 128 codes suivants (de 128 à 255) constitue la table ASCII étendue codée sur 8 bits :

Extrait de table ASCIIExtrait de table ASCII

0 1 ... 3 40000 0001 0011 0100

0 NUL DLE ... 0 @0000

1 SOH DC1 ... 1 A0001

... ... ... ... ... ...4 EOT DC4 4 D

0100 ... ... ... ... ...B VT ESC ; K

1011

Lettre A (majuscule) : 41(hexa) ==> code ASCII : 0100 0001

4 1

4 1

page 21

Page 22: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

Observation : Ce codage respecte l’ordre de l’alphabet : Les lettres A à Z sont représentées par les codes 065(10) à 090(10) Les lettres a à z sont représentées par les codes 097(10) à 122(10) Avantages :

- l’ASCII facilite les opérations de tri (classement d’une liste de noms par ordre alphabétique) : A < B < ….<Z et a < b <….<z - La transformation « majuscule – minuscule » s’effectue par simple déplacement :

« minuscule » = « majuscule » + valeur constante « a » = « A » + 32(10) « a » = « A » + 20(16)

page 22

Page 23: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

GENERALITES SUR LES

SYSTEMES D'EXPLOITATION

CHAPITRE 3

page 23

Page 24: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

L’ARCHITECTURE D’UN ORDINATEUR

9. DESCRIPTION DES ORGANES PRINCIPAUX Comme nous l’avons vu en fin de chapitre un, il y a trois organes essentiels dans l’unité centrale : l’unité arithmétique et logique, la mémoire centrale, les organes de commande. Ces organes sont reliés par un ou plusieurs bus.

ORGANES PRINCIPAUXORGANES PRINCIPAUXOMicroprocesseurMicroprocesseur RGANEU S

MEMOIREMEMOIREA D

E

L CENTRALECENTRALECOMMANDE

9.1 LA MEMOIRE CENTRALE

La mémoire centrale est, en général, constituée d’un ensemble fini de mots de longueur fixe. La taille d’un mot est définie par le constructeur en fonction des caractéristiques qu’il souhaite donner à la machine. Les micro ordinateurs actuels travaillent sur des mots de huit, seize, trente deux voire soixante quatre bits. Il faut que la mémoire centrale soit à accès direct, c’est à dire qu’il soit possible d’accéder à un mot en donnant son emplacement. De ce fait, les mots sont repérés par leur numéro d’ordre que l’on appelle adresse (@). Le premier mot a pour adresse 0, le second 1 et ainsi de suite. Le nombre de mots de la mémoire centrale définit sa capacité (taille).

Unité CentraleUnité CentraleBUS BUS

page 24

Page 25: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

LA MEMOIRE CENTRALELA MEMOIRE CENTRALE

Ensemble Ensemble fini fini de de motsmots de longueurde longueur fixefixe

00 11011100101011001101110010101100

11 10010010101111001001001010111100

22 11010100101011111101010010101111

33 11011101111111001101110111111100

44 11010010111011001101001011101100

55 10011100101011011001110010101101

66 11011111001011011101111100101101

ADRESSESADRESSES MOTSMOTSdede

16 bits16 bits

Les mémoires peuvent être de grandes dimensions. On utilise, pour caractériser leurs tailles ou capacités, les unités suivantes :

- Le bit est l’unité de stockage élémentaire (0 ou 1). Un bit correspond à un transistor capable de distinguer deux états. Un bit code deux informations, l’une correspond à 0, l’autre à 1. Avec 2 éléments binaires, on peut coder 2 x 2 = 4 informations avec les codes : 00, 01, 10, 11. Avec 3 bits on a 23 = 2x2x2 = 8 codes différents. Avec n bits, on a 2n codes. - L’octet est en général une association de 8 bits : 1 Octet = 8 bits. L’octet fournit 28 = 256 codes.

Capacités : 1 Ko = 1024 Octets = 210 octets # 1000 octets 2 Ko = 2 x 1024 octets = 2048 octets 1 Mo = 1024 Ko = 1,048576 Millions d'octets = 220 octets 1 Go = 230 octets (Go : giga octet) 1 To = 240 octets (To : tera octet)

Exemple : dire « une machine X possède une mémoire centrale de 64 k mots » n’est pas suffisant. Pour être capable de caractériser vraiment cette machine il fait savoir quel est le format (la taille) du mot (pour la machine X, 32 bits c’est à dire 4 octets) cela signifie que la mémoire centrale à une taille de 256 Ko (256 000 caractères). Cette unité de mesure est plus parlante on cherchera toujours à y revenir.

9.2 L’UNITE ARITHMETIQUE ET LOGIQUE

L’UAL (ALU en anglais) permet d’effectuer :

- les opérations mathématiques traditionnelles. Toute UAL comporte au moins un additionneur et quasiment toutes sont équipées d’une unité de calcul en virgule flottante (FPU : Floating Point Unit) beaucoup plus rapide et permettant des calculs plus précis. - les opérations logiques telles que OR, NOR, XOR, AND, ... - les comparaisons de deux nombres ou test. - les transferts de données. - ...

page 25

Page 26: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

L’UAL reçoit ses instructions de calcul d’un circuit qui indique l’opération à réaliser. Elle reçoit les données à traiter de la mémoire centrale à laquelle elle renvoie ses résultats suivant un mécanisme qui sera détaillé plus loin. En dehors de l’unité de calcul proprement dite, on trouve dans l’UAL divers composants : registres indicateurs, registres accumulateurs, registres de stockage, ...

L'UNITE ARITHMETIQUE ET LOGIQUEL'UNITE ARITHMETIQUE ET LOGIQUEAACCCCUUMMUULLAATTEEUURR

Mot InterneMot Interne Circuit deCircuit deCalculCalcul

ADDADD ++

REGISTREREGISTRE

DECODEURDECODEURde Fonctionde FonctionBUSBUS

(les notions de registre et d’accumulateur seront vues plus loin)

9.3 L’UNITE DE COMMANDE

Elle est constituée de différents organes qui seront par la suite étudiés plus en détail, ils sont de deux types : - des mots ou des registres ayant un format fixe, - des circuits logiques permettant le routage et le transfert des données.

9.4 LES MICROPROCESSEURS

Dans la puce d’un micro processeur, on intègre des milliers de transistors sur quelques dizaines de millimètres carrés. Le micro processeur réalise des opérations arithmétiques et logiques assurant ainsi les fonctions de l’UAL et de l’unité de commande. Certaines fonctions logicielles sont directement implantées sur ses circuits. Le fait que seules quelques grandes familles soient utilisées dans les micro ordinateurs a permis une certaine standardisation des matériels et l’apparition d’outils logiciels compatibles ( système d’exploitation, compilateurs et interpréteurs, progiciels). Ces notions seront abordées plus loin.

10. L’UNITE DE COMMANDE Un ordinateur, petit ou gros , dispose des organes déjà présentés. Il s’agit maintenant de préciser ceux qui constituent l’unité de commande.

10.1 LE SELECTEUR D’ADRESSE

La mémoire centrale est constituée de mots distincts, tous de même taille. Il est nécessaire d’accéder directement à chacun d’entre eux à partir d’un point d’entrée unique.

page 26

Page 27: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

Supposons que la mémoire centrale soit très petite (8 mots). Pour accéder à un de ces mots il faut concevoir un système d’aiguillage permettant d’y accéder à partir d’une voie unique. Le schéma suivant montre comment un tel système peut être réalisé si l’on ne dispose que d’aiguillages à deux positions :

LE REGISTRE D'ADRESSE MEMOIRELE REGISTRE D'ADRESSE MEMOIRE

C'est le point d'entrée uniqueC'est le point d'entrée uniquede la mémoire centrale.de la mémoire centrale.

POUR ADRESSER :POUR ADRESSER :

88 MOTS MOTS 64K64K MOTSMOTS

REGISTRE DE REGISTRE DE 33 BITSBITSREGISTRE DE REGISTRE DE 1616 BITSBITS

00

00

1111

11

11

11

1100

00

00

0011

00

MémoireMémoire AdressesAdressesRegistre d'adressesRegistre d'adresses 11 1100

0101001101010011

1101001111010011

1111001111110011

0101011101010111

1111101111111011

1101000011010000

1000001110000011

0011001100110011

100100 44

101101 55

000000 00

001001 11

110110 66

111111 77

010010 22

011011 33

Il faut trois niveaux pour fabriquer ce système. On désigne la position haute de chaque aiguillage par 0 et la position basse par 1. On constate alors que la suite des trois positions binaires, qui repère la position des trois niveaux, fournit une description exacte du chemin à suivre pour aller à une case. Un sélecteur d’adresse fonctionne suivant le même principe : les aiguillages correspondent à des portes que l’on peut commander en série à partir d’impulsions. Dès que l’on aura inscrit dans le registre l’identification du mot mémoire auquel on veut avoir accès, le sélecteur d’adresse sera positionné de telle sorte que le chemin accès à ce mot soit ouvert. L’identification du mot de la mémoire s’appelle l’adresse. C’est en fait le numéro d’ordre du mot dans la mémoire centrale. Le sélecteur s’appelle le registre d’adresse mémoire. Prenons une mémoire centrale de 64 K mots, on sait qu’il faut un registre de format 16 car 64 = 26 et 64 K = 26 X 210=216.

10.2 LE REGISTRE DE DONNEES MEMOIRE Le point d’accès unique à la mémoire centrale est connecté à un mot de même format que les mots de la mémoire centrale. Ce mot, appelé registre de données mémoire (RDM), permet de faire attendre une valeur avant de déclencher une opération de lecture/écriture dans la mémoire centrale. Le schéma suivant représente la mémoire centrale avec le sélecteur d’adresses et les deux registres RDM et RAM :

page 27

Page 28: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

LE REGISTRE DE DONNEES MEMOIRELE REGISTRE DE DONNEES MEMOIREPoint de sortie unique de Point de sortie unique de

la mémoire centralela mémoire centrale

RREEGGIISSTTRREE

D'D'AADDRREESSSSEE

MMEEMMOOIIRREE

RREEGGIISSTTRREE

DDEE

DDOONNNNEEEESS

MMEEMMOOIIRREE

11 10010010101111001001001010111100

22 11010100101011111101010010101111

33 11011101111111001101110111111100

44 11010010111011001101001011101100

55 10011100101011011001110010101101

66 11011111001011011101111100101101

RAMRAM RDMRDM

MEMOIRE CENTRALEMEMOIRE CENTRALE

00 10111010101111001011101010111100

11. LE FONCTIONNEMENT DE L’UAL L’unité arithmétique et logique est un ensemble de circuits d’addition, de multiplication, de soustraction, d’opérations logiques ... munis chacun d’un mot interne de même format que ceux de la mémoire centrale. La machine qui nous servira de modèle n’aura qu’un nombre restreint de circuits de calcul. Chacun sera donc repéré par l’adresse d’un mot interne de l’UAL qui lui sera propre, et, pour accéder à un circuit de calcul, il suffira d’accéder au mot de ce circuit. Il suffit alors de réaliser un sélecteur d’adresses pour cet ensemble de mots. On l’appellera un décodeur de fonctions. Pour simplifier le propos et par choix de codification, au lieu de repérer un circuit de calcul par un numéro d’ordre, on se servira d’une mnémonique (ADD, etc ...). De plus, chacun des circuits de calcul est relié à un mot, ayant la même taille que les mots de la mémoire centrale ; on appelle ce mot l’accumulateur. Le schéma suivant reprend ces notions :

L'UNITE ARITHMETIQUE ET LOGIQUEL'UNITE ARITHMETIQUE ET LOGIQUEAACCCCUUMMUULLAATTEEUURR

Mot InterneMot Interne Circuit deCircuit deCalculCalcul

ADDADD ++

REGISTREREGISTRE

DECODEURDECODEURde Fonctionde FonctionBUSBUS

page 28

Page 29: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

Un circuit de calcul comme l’addition fonctionne de la manière suivante : si une donnée est déjà inscrite dans l’accumulateur, au moment où une donnée est écrite dans le mot interne, le circuit d’addition effectue le calcul et range le résultat dans l’accumulateur en effaçant l’ancienne valeur.

L'UNITE ARITHMETIQUE ET LOGIQUEL'UNITE ARITHMETIQUE ET LOGIQUE

Mot Mot InterneInterne

Circuit Circuit dede

CalculCalcul

1212 ++

ADDADD

DECODEURDECODEUR

BUSBUS

55

Mot Mot InterneInterne

Circuit Circuit dede

CalculCalcul

1212 ++

SOUSSOUS

DECODEURDECODEUR

BUSBUS

1717

L’ensemble de circuits arithmétiques fonctionne sur ce principe. Pour réaliser une addition, il faut disposer du code ADD et de l’adresse du mot de la mémoire centrale que l’on veut additionner. Une instruction machine sera donc, au moins, constituée du code opération et d’une adresse d’un mot de la mémoire centrale, car le programme est rangé en mémoire centrale. Une instruction machine a donc, en principe, un format égal à ceux des mots de la mémoire centrale comme le représente le schéma suivant :

Code OpérationCode Opération Adresse d'un mot de la mémoireAdresse d'un mot de la mémoire

De la même façon que le nombre de mots de la mémoire définit précisément le format de l’adresse, le nombre de circuits de l’UAL définit le format du code opération (pour sa valeur réelle en binaire). Le constructeur d’un ordinateur devrait donc respecter la formule suivante : format du code opération + format de l’adresse = format d’un mot de la mémoire centrale On peut en déduire que plus le format des mots de la mémoire centrale est grand, plus il peut y avoir de circuits dans l’UAL et, surtout, plus la capacité de la mémoire centrale peut être grande.

11.1 LE COMPTEUR ORDINAL Avant de pouvoir connaître le contenu d’une instruction il faut aller la chercher en mémoire centrale. C’est le rôle d’un registre particulier, le compteur ordinal, dont le contenu désigne l’adresse de l’instruction suivante à exécuter avant de pouvoir la lire en mémoire centrale. On remarquera que le format du compteur ordinal doit être le même que celui du registre du sélecteur d’adresse, le registre d’adresse mémoire.

page 29

Page 30: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

11.2 LE REGISTRE D’INSTRUCTION Si le contenu du compteur ordinal permet de pointer sur l’instruction à exécuter et de lancer l’opération de lecture qui permettra de la récupérer dans le registre de données mémoire, il faut ensuite la décomposer en deux parties : le code opération et l’adresse du mot de la mémoire centrale sur laquelle elle s’effectuera. Cette opération de découpage de l’instruction se fait dans un registre particulier, le registre d’instruction. Il a le même format que les mots de la mémoire centrale et est conçu de telle sorte que l’on puisse lire de façon séparée la partie code opération et la partie adresse.

11.3 NOTION DE LECTURE ECRITURE Nous ferons une comparaison avec les opérations d’enregistrement et de reproduction sur une bande magnétique. L’enregistrement d’un morceau de musique sur la bande d’un magnétophone correspond très exactement à l’opération d’écriture dans un mot de la mémoire centrale ou dans un registre : on détruit ce qui y figurait auparavant pour le remplacer par ce qu’on y enregistre. La reproduction d’un morceau de musique enregistré sur une bande de magnétophone correspond exactement à l’opération de lecture du contenu d’un mot de la mémoire centrale ou d’un registre : sans détruire ce qui y figure, on recopie les données que l’on va écrire dans un autre lieu. Il faut retenir que l’opération d’écriture détruit la valeur figurant préalablement dans le mot ou le registre où l’on écrit, alors que l’opération de lecture est plus proche d’une recopie qui laisse intact et réutilisable le contenu de ce qui a été lu.

12. SYNTHESE Nous pouvons, à présent, détailler le schéma de notre machine fictive :

RIRI

Mot Mot InterneInterne

Circuit Circuit dede

CalculCalcul

1212 ++

ADDADD

DECODEURDECODEURde FONCTIONSde FONCTIONS

BUSBUS

AACCCCUUMMUULLAATTEEUURR

RREEGGIISSTTRREE

DD''AADDRREESSSSEE

MMEEMMOOIIRREE

11 100100101011100100100101011100

22 11010100101011111101010010101111

33 11011101111111001101110111111100

44 11010010111011001101001011101100

55 10011100101011011001110010101101

66 11011111001011011101111100101101

RAMRAM RDMRDM

MEMOIRE CENTRALEMEMOIRE CENTRALE

00 101110101011100101110101011100RREEGGIISSTTRREE

DDEE

DDOONNNNEEEESS

MMEEMMOOIIRREE

CCOO

CCOODDEE

AADDRREESSSSEE

OOPPEERRAATTIIOONN

UALUAL

page 30

Page 31: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

GENERALITES SUR LES

SYSTEMES D'EXPLOITATION

CHAPITRE 4

page 31

Page 32: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

LE FONCTIONNEMENT D’UN ORDINATEUR Dans un chapitre précédent, l’architecture d’un ordinateur a été présentée sur un mode descriptif. Il s’agit maintenant d’étudier comment fonctionne cet ensemble d’organes. Dans les chapitres suivants, les notions étudiées ici permettront d’expliquer le rôle et les fonctions des logiciels de base. Toute information est représentée en machine sous formes de suites de 0 et de 1, toutefois, par souci de clarté et de concision, les valeurs manipulées, caractères ou chiffres, seront ici représentées en clair, cela ne changeant rien aux principes de fonctionnement.

13. LE CYCLE DE BASE D’UNE INSTRUCTION ARITHMETIQUE

13.1 UN EXEMPLE DE DEROULEMENT Supposons mis en machine les éléments suivants : - dans le compteur ordinal, la valeur numérique 100, - en mémoire centrale, à l’adresse 5, la valeur numérique 23, - en mémoire centrale, à l’adresse 100, l’instruction ADD 5, - dans l’accumulateur, la valeur numérique 71. Le schéma suivant donne la photographie instantanée de ce qu’il y a au départ dans la machine, on constate qu’il existe de plus une base de temps, une sorte d’horloge, qui est capable de déclencher des signaux les uns après les autres de façon systématique.

R.I.R.I.

Mot Mot InterneInterne

Circuit Circuit dede

CalculCalcul

++

DECODEURDECODEURde FONCTIONSde FONCTIONS

BUSBUS

7711 11

0000

11

22

33

44

55

66

RAMRAM RDMRDM

MEMOIRE CENTRALEMEMOIRE CENTRALE

00

AADDDD

55

110000

U.A.L.U.A.L. C.O.C.O.ACCACC

2323

100100 ADD 5ADD 5

TIMERTIMER

page 32

Page 33: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

13.1.1 PREMIERE PHASE

Si l’on veut que l’ordinateur puisse exécuter une instruction quelconque, il faut aller la chercher en mémoire centrale. Or le contenu du compteur ordinal permet de savoir où est cette instruction. L’horloge doit donc déclencher des signaux qui :

- ferment la porte entre le bus et le compteur ordinal. - ferment la porte entre le bus et le registre d’adresse mémoire (registre du sélecteur d’adresse). - lancent une lecture du compteur ordinal, c’est à dire la valeur numérique 100. - lancent une écriture dans le registre d’adresse mémoire, autrement dit procèdent à la recopie de la valeur 100 dans ce registre. - et lancent enfin une lecture en mémoire centrale pour transférer le contenu du mot sélectionné dans le registre de données mémoire ; le contenu du mot d’adresse 100 soit ADD 5 s’inscrit alors dans le registre de données mémoire.

Structure et Fonctionnement des OrdinateursStructure et Fonctionnement des Ordinateurs

ESAT/DMSI/Cours ArchitectureESAT/DMSI/Cours Architecture

R.I.R.I.

Mot Mot InterneInterne

Circuit Circuit dede

CalculCalcul

++

DECODEURDECODEURde FONCTIONSde FONCTIONS

BUSBUS

7711 11

0000

11

22

33

44

55

66

RAMRAM RDMRDM

MEMOIRE CENTRALEMEMOIRE CENTRALE

00

AADDDD

55

110000

U.A.L.U.A.L. C.O.C.O.ACCACC

2323

100100 ADD 5ADD 5

PHASE 1PHASE 1

TIMERTIMER

page 33

Page 34: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

13.1.2 DEUXIEME PHASE

Il faut à cet instant pouvoir manipuler le contenu de ce qui vient d’être lu comme une instruction en l’envoyant précisément dans le registre d’instruction. L’horloge doit donc déclencher les signaux suivants :

- ouvrir la porte entre le registre d’adresse mémoire et le bus. - ouvrir la porte entre le compteur ordinal et le bus. - fermer la porte entre le registre de données mémoire et le bus. - fermer la porte entre le registre d’instruction et le bus. - lancer la lecture du registre de données mémoire. - lancer l’écriture dans le registre d’instruction.

A la fin de cette opération le registre d’instruction contient ADD 5 comme le montre le schéma qui suit :

Structure et Fonctionnement des OrdinateursStructure et Fonctionnement des Ordinateurs

ESAT/DMSI/Cours ArchitectureESAT/DMSI/Cours Architecture

R.I.R.I.

Mot Mot InterneInterne

Circuit Circuit dede

CalculCalcul

++

DECODEURDECODEURde FONCTIONSde FONCTIONS

BUSBUS

7711 11

0000

11

22

33

44

55

66

RAMRAM RDMRDM

MEMOIRE CENTRALEMEMOIRE CENTRALE

00

AADDDD

55

110000

U.A.L.U.A.L. C.O.C.O.ACCACC

2323

100100 ADD 5ADD 5

PHASE 2PHASE 2

TIMERTIMER

AADDDD

55

page 34

Page 35: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

13.1.3 TROISIEME PHASE

Dans la mesure où le registre d’instruction a été conçu pour permettre la séparation de la partie code opération de la partie adresse, il est possible d’envoyer, dans cette phase, le contenu du champ code opération du registre d’instruction dans le registre du décodeur de fonction pour sélectionner le circuit d’addition. L’horloge doit envoyer les signaux suivants :

- ouvrir la porte entre le registre de données mémoire et le bus. - ouvrir la porte entre le registre d’instruction et le bus. - fermer la porte entre le champ code opération du registre d’instruction et le bus. - fermer la porte entre le registre du décodeur de fonction et le bus. - lancer la lecture du contenu du champ code opération du registre d’instruction. - lancer l’écriture dans le registre du décodeur de fonction ce qui provoque la sélection du circuit de calcul, c’est à dire l’addition.

Voir le schéma qui suit :

R.I.R.I.

Mot Mot InterneInterne

Circuit Circuit dede

CalculCalcul

++

DECODEURDECODEURde FONCTIONSde FONCTIONS

BUSBUS

7711 11

0000

11

22

33

44

55

66

RAMRAM RDMRDM

MEMOIRE CENTRALEMEMOIRE CENTRALE

00

AADDDD

55

110000

U.A.L.U.A.L. C.O.C.O.ACCACC

2323

100100 ADD 5ADD 5

PHASE 3PHASE 3

TIMERTIMER

AADDDD

55

ADDADD

page 35

Page 36: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

13.1.4 QUATRIEME PHASE

Avant de pouvoir exécuter l’opération, il faut que la machine puisse accéder à l’opérande, c’est à dire puisse avoir accès au mot dont l’adresse figure dans l’instruction. Cela revient à transférer le contenu du champ adresse du registre d’instruction dans le registre d’adresse mémoire. L’horloge doit envoyer les signaux suivants :

- ouvrir la porte entre le registre du décodeur de fonction et le bus. - ouvrir la porte entre le champ code opération du registre d’instruction et le bus. - fermer la porte entre le registre d’adresse mémoire et le bus. - fermer la porte entre le champ adresse du registre d’instruction et le bus. - lancer la lecture du contenu du champ adresse du registre d’instruction. - lancer l’écriture dans le registre d’adresse mémoire de telle sorte que le mot auquel correspond cette adresse soit sélectionné.

Voir schéma suivant :

R.I.R.I.

Mot Mot InterneInterne

Circuit Circuit dede

CalculCalcul

++

DECODEURDECODEURde FONCTIONSde FONCTIONS

BUSBUS

7711

55

11

22

33

44

55

66

RAMRAM RDMRDM

MEMOIRE CENTRALEMEMOIRE CENTRALE

00

AADDDD

55

110000

U.A.L.U.A.L. C.O.C.O.ACCACC

2323

100100 ADD 5ADD 5

PHASE 4PHASE 4

TIMERTIMER

AADDDD

55

ADDADD

page 36

Page 37: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

13.1.5 CINQUIEME PHASE

Comme le circuit de calcul et l’opérande sont maintenant disponibles, l’exécution de l’instruction est réalisable. L’horloge envoie les signaux suivants :

- ouvrir la porte entre le registre d’adresse mémoire et le bus. - ouvrir la porte entre le champ adresse du registre d’instruction et le bus. - fermer la porte entre l’unité arithmétique et logique et le bus. - fermer la porte entre le registre de données mémoire et le bus. - lancer la lecture du mot choisi en mémoire dans la phase précédente. - lancer l’écriture dans le mot interne de l’UAL propre au circuit de calcul sélectionné préalablement ; ce qui provoque l’exécution du calcul entre le contenu du mot interne et le contenu de l’accumulateur, puis l’écriture du résultat dans l’accumulateur.

Voir schéma suivant :

R.I.R.I.

Mot Mot InterneInterne

Circuit Circuit dede

CalculCalcul

++

DECODEURDECODEURde FONCTIONSde FONCTIONS

BUSBUS

9944

55

11

22

33

44

55

66

RAMRAM RDMRDM

MEMOIRE CENTRALEMEMOIRE CENTRALE

00

2233

110000

U.A.L.U.A.L. C.O.C.O.ACCACC

2323

100100 ADD 5ADD 5

PHASE 5PHASE 5

TIMERTIMER

AADDDD

55

ADDADD

2323

page 37

Page 38: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

13.1.6 SIXIEME PHASE

L’instruction ayant été exécutée, il faut passer à la suivante. Nous imaginerons qu’il existe un circuit particulier d’addition propre au compteur ordinal qui n’a pas été présenté auparavant. Ce circuit est particulier dans le sens où il utilise un opérande toujours égal à la valeur 1 : il additionne ce 1 au contenu du compteur ordinal et range le résultat dans le compteur ordinal. Autrement dit, quand ce circuit est mis en marche, le contenu du compteur ordinal est augmenté de 1. Dans la sixième phase, l’horloge génère les signaux suivants :

- ouvrir la porte entre l’unité arithmétique et logique et le bus. - ouvrir la porte entre le registre de données mémoire et le bus. - déclencher le circuit d’addition propre au compteur ordinal.

Voir schéma suivant :

R.I.R.I.

Mot Mot InterneInterne

Circuit Circuit dede

CalculCalcul

++

DECODEURDECODEURde FONCTIONSde FONCTIONS

BUSBUS

94

55

11

22

33

44

55

66

RAMRAM RDMRDM

MEMOIRE CENTRALEMEMOIRE CENTRALE

00

2233

110011

U.A.L.U.A.L. C.O.C.O.ACCACC

2323

100100 ADD 5ADD 5

PHASE 6PHASE 6

TIMERTIMER

AADDDD

55

ADDADD

2323

13.2 LE JEU D’INSTRUCTIONS L’addition aurait été exécutée telle qu’elle vient d’être décrite, quelles que soient les valeurs numériques choisies. L’exécution d’une instruction est donc indépendante des données. Il faut aussi prendre en compte le fait que l’ordinateur est capable d’exécuter un million d’instructions de ce type en une seconde. Le déroulement d’une instruction machine se réduit à une suite de commandes élémentaires déclenchées par l’horloge : ouverture et fermeture de portes , lecture et écriture d’un registre ou d’un mot de la mémoire centrale et déclenchement d’un circuit de calcul. Si l’on veut automatiser un processus quelconque, il faut pouvoir disposer d’instructions d’entrée / sortie, d’instructions permettant d’effectuer des calculs arithmétiques, des transferts d’informations et des calculs logiques. Dans notre machine modèle, les instructions d’entrée/sortie ne sont pas encore prises en compte car, pour l’instant, nous nous consacrons à l’unité centrale sans tenir compte des liaisons avec les périphériques. Voici le jeu d’instruction de notre machine fictive :

INSTRUCTIONS ARITHMETIQUES :

page 38

Page 39: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

ADD X, MUL X, SOU X : ADDitionner, MULtiplier ou SOUstraire le contenu du mot d’adresse X au contenu de l’accumulateur. A la fin le résultat est écrit dans l’accumulateur. INSTRUCTIONS DE TRANSFERTS : TAC X : Transférer le contenu du mot d’adresse X dans l’ACcumulateur TME X : Transférer le contenu de l’accumulateur dans le mot MEmoire d’adresse X INSTRUCTIONS DE CALCULS LOGIQUES : BRA X : BRAnchement sur l’instruction d’adresse X, autrement dit l’instruction suivante à exécuter est celle d’adresse X TES X : TESt sur le contenu de l’accumulateur : si le contenu est strictement positif l’instruction suivante à exécuter est celle d’adresse X, sinon c’est celle d’adresse immédiatement supérieure à celle qu’on exécute.

13.3 DESCRIPTION DU CYCLE DE BASE DES INSTRUCTIONS MACHINE

Quel que soit le type d’instruction, la première partie du cycle de base doit être consacrée à mettre l’instruction dans le registre d’instruction de telle sorte que son code opération puisse être pris en compte. Les trois premières phases sont donc les mêmes. Première phase :

Elle consiste à transférer le contenu du compteur ordinal dans le registre d’adresse mémoire, ce qui provoque la sélection du mot correspondant en mémoire centrale, la lecture de son contenu et l’écriture du contenu dans le registre de données mémoire.

Deuxième phase :

Elle permet de transférer le contenu du registre de données mémoire dans le registre d’instruction. Troisième phase :

Elle réalise le transfert du contenu du champ code opération du registre d’instruction dans le registre du décodeur de fonction, ce qui provoque la sélection du circuit correspondant à la valeur de ce code opération.

En résumé, cette première partie consiste à rechercher l’instruction à exécuter en mémoire centrale et à la décoder. A partir de là, les cycles de base diffèrent. Les instructions de calcul arithmétique et celles de transfert nécessitent trois phases pour être exécutées, alors que les deux instructions logiques n’en nécessitent qu’une. Commençons par les trois dernières phases des instructions de calcul arithmétique et celles de transfert. Quatrième phase :

Elle réalise le transfert du contenu du champ adresse du registre d’instruction dans le registre d’adresse mémoire et la sélection du mot correspondant.

Cinquième phase :

Elle effectue l’exécution de l’instruction telle qu’elle est décrite dans le jeu d’instruction présenté ci-dessus.

Sixième phase :

Elle réalise l’augmentation de 1 du contenu du compteur ordinal.

page 39

Page 40: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

Pour l’instruction de débranchement inconditionnel auquel correspond le BRA, il n’y a qu’une phase à exécuter. En effet l’instruction suivante à exécuter est celle dont l’adresse figure dans le BRA et cette adresse est inscrite à cet instant dans le champ adresse du registre d’instruction. D’où la Quatrième phase (BRA) :

Elle consiste à transférer le contenu du champ adresse du registre d’instruction dans le compteur ordinal.

De même pour l’instruction de débranchement conditionnel auquel correspond le TES, il n’y a qu’une phase à exécuter : Si la condition est satisfaite, il faut exécuter une phase correspondant à celle qui vient d’être évoquée pour le BRA puisqu’il doit y avoir débranchement sur l’instruction dont l’adresse figure dans l’instruction de test. Si la condition n’est pas satisfaite, on passe à l’instruction suivante. D’où la Quatrième phase (TES) :

Si le contenu de l’accumulateur est strictement positif, on transfère le contenu du champ adresse du registre d’instruction dans le compteur ordinal ; sinon on augmente de 1 le contenu du compteur ordinal.

14. COMPLEMENT SUR LE FONCTIONNEMENT

14.1 LES MEMOIRES Il existe globalement deux types de mémoires : les mémoires mortes ROM, et les mémoires vives, les RAM.

14.1.1 LA RAM (RANDOM ACCES MEMORY)

C’est pour ainsi dire la véritable mémoire centrale. Elle fonctionne comme celle de l’homme. Elle mémorise seulement ce dont le microprocesseur a besoin immédiatement. Elle est volatile et d’accès très rapide. Quelques caractéristiques : permet la lecture et l’écriture, adressable octet par octet, volatile, capacité limitée mais extensible, temps d’accès env. 60 ns. La mémoire centrale est de type DRAM (Dynamic RAM). Elle utilise un condensateur de stockage par bit. Cependant, les condensateurs ayant des fuites, il faut rafraîchir la RAM périodiquement. Pendant ces phases de rafraîchissement, très longues à l’échelle des fréquences de travail des processeurs, la RAM est indisponible ce qui entraîne un accroissement des temps d’accès (c.f. plus loin mémoires cache).

14.1.2 LA ROM (READ ONLY MEMORY)

C’est une fausse RAM. Le constructeur y inscrit définitivement un programme qui est toujours exécuté dès le lancement de la machine, et ce indépendamment de la volonté de l’utilisateur. Cette mémoire est en quelque sorte gravée. Elle contient également des petits programmes nécessaires à la réalisation d’échanges entre le cœur de la machine et les périphériques. Le contenu de la ROM est connu sous le nom de BIOS (Basic Input Output System). La ROM est accessible par le microprocesseur de la même manière que la RAM ; la différence vient du fait qu’elle ne perd pas son contenu lorsque l’on éteint la machine. Quelques caractéristiques : lecture seule, adressable octet par octet, non volatile, capacité très limitée.

14.1.3 D’AUTRES MEMOIRES

PROM (programmable read only memory) : mémoire dont le contenu est programmable une seule fois par l’utilisateur. L’utilisation de ces mémoires est réservée à des applications nécessitant une faible production pour laquelle l’utilisation de ROM aurait été trop coûteuse.

page 40

Page 41: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

EPROM (erasable programmable read only memory) : comme les précédentes, mémoires programmables par l’utilisateur. Toutefois, il est possible d’effacer ces mémoires en exposant le boîtier à un rayonnement ultraviolet, ce qui a pour effet de supprimer les charges. Ces mémoires sont plus particulièrement utilisées pendant les phases de mise au point en raison de la facilité de correction des erreurs. EEPROM (electricaly erasable programmable read only memory) : mémoires identiques aux EPROM. La différence réside dans la technique d’effacement : ce dernier est effectué en appliquant des tensions plus élevées que celles utilisées pour la lecture ou l’écriture. Mémoires cache : les mémoires cache sont de type SRAM (Static RAM) ; elles ne requièrent pas de rafraîchissement : l’information est stockée en la faisant circuler en circuit fermé, elle « s’auto rafraîchit » et est donc toujours disponible en accès. Ce sont les mémoires les plus chères. L’emploi de ces mémoires est combiné avec des stratégies de stockage de données par anticipation (algorithmes).

cache interne ou de premier niveau : mémoire de petite taille (8 à 64 Ko) très rapide (15 ns) placée dans le processeur afin d’éviter à ce dernier des temps d’attente trop longs pour les accès mémoire. cache externe ou de deuxième niveau : compte tenu de la faible taille du cache interne, on rajoute au processeur une mémoire cache externe de plus grande capacité (128 Ko à 1 Mo ou plus), moins rapide (30 ns) que le cache interne mais plus rapide que la mémoire conventionnelle. taille des mémoires cache : en fait, les 64 premiers Ko de cache sont responsables à eux seuls de la majeure partie de l’augmentation de performances d’un système. Certes les performances sont meilleures avec 128, 256 ou 512 Ko mais dans une moindre mesure. Selon l’environnement et les données traitées, il est possible de déterminer le volume optimum de mémoire cache à implanter sur le système.

Mémoire vidéo : C’est dans cette mémoire que sont écrites les données qui doivent s’afficher à l’écran.

Mémoire CMOS : C’est une mémoire de petite taille, contenue dans un composant spécifique, alimenté par une pile ou batterie. Elle contient des informations qu’il est impératif de conserver d’une cession de travail à l’autre (heure système, paramètres de configuration des matériels, etc.). Son contenu est modifié par un programme de la ROM, le Setup. Les CMOS récentes sont des Flash EPROM : sorte d’EPROM dont le contenu peut être modifié par l’utilisateur grâce à un logiciel et se conserve grâce à une petite pile ou batterie (selon les machines).

14.1.4 REGISTRES ET ACCUMULATEURS, PILE

La plupart des machines réelles disposent de plusieurs accumulateurs et/ou registres permettant à un instant donné la manipulation quasi simultanée de plusieurs données par l’UAL. Ces registres permettent en particulier de travailler avec des tableaux ou des structures de données complexes, en fonction du mode d’adressage qui sera abordé plus loin. On dispose, de plus, d’une pile de mots permettant de réaliser des stockages intermédiaires entre deux ou plusieurs traitements ou parties de traitement. Dans notre cas, la notion de pile est une notion de structure de données dans laquelle le dernier élément entré est le premier qui sort. Cette structure de données s’appelle une structure LIFO (Last In First Out). Par opposition, on définit une structure de file d’attente où le premier entré est le premier sorti (structure FIFO : First In First Out).

14.1.5 NOTION DE TEMPS D’ACCES

Les opérations de lecture / écriture en mémoire ne sont pas instantanées. Ces opérations prennent en moyenne quelques dizaines de nano-secondes (10-9 secondes).

page 41

Page 42: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

Le temps d’accès correspond au temps nécessaire pour réaliser une opération de lecture ou d’écriture en mémoire. La mémoire morte est plus lente que la mémoire vive.

14.1.6 NOTION D’ADRESSE ET D’ESPACE ADRESSABLE. (EXEMPLE SUR UNE MEMOIRE A MOTS DE 8 BITS)

La machine gère la mémoire en la divisant en unités constituées par 8 transistors, ce qui permet d’y stocker une donnée codée par un octet (un transistor donne l’état d’un Bit 0 ou 1). Chaque unité ou cellule est référencée par une adresse. Cette adresse est codée elle-même par une succession d’éléments binaires (1 ou plusieurs Bits). C’est la connaissance de l’adresse qui permet d’accéder à la donnée.

La machine ne connaît une information que par son adresse, son emplacement en mémoire.

Pour pouvoir traiter une donnée contenue dans une zone mémoire, le processeur doit donc stocker l’adresse de celle-ci dans un de ses registres (ensemble de bits de taille fixée par le constructeur, servant à stocker une information précise). On en conclut facilement que plus le registre est grand plus on peut référencer d’adresses différentes. On appelle espace adressable la taille de la mémoire qui peut être référencée par la machine. Par exemple : Les P.C. qui utilisent des registres de 16 bits, peuvent gérer un espace adressable de 216 adresses différentes, soit une mémoire de 64 Ko si l’on considère que la taille de la cellule est de 1 octet, 128 Ko si l’on considère que la taille de la cellule est de 2 octets, ... Les ordinateurs qui utilisent des registres de 32 bits peuvent gérer un espace adressable de 232 octets soit 4Go. Le Pentium code ses adresses sur un registre de 64 bits. Il est intéressant de noter que l’espace adressable peut avoir une taille supérieure à celle de la mémoire physique. Il faut alors utiliser des adresses virtuelles. (voir le chapitre « Gestion de la mémoire »). REMARQUE : Seules les informations stockées dans des zones mémoires référencées par des adresses de l’espace adressable (en RAM ou en ROM) sont manipulées par le processeur. Le processeur ne peut donc pas agir directement sur les informations stockées sur les mémoires auxiliaires.

14.2

page 42

Page 43: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

LES ENTREES-SORTIES Les opérations d’entrée-sortie permettent d’établir des communications, c’est à dire des transferts d’informations, entre l’unité centrale et les périphériques. Le schéma suivant, déjà présenté, doit être explicité :

STRUCTURE SOMMAIRE D'UN ORDINATEURSTRUCTURE SOMMAIRE D'UN ORDINATEUR

Périphérique

1

Périphérique

2

Périphérique

3

UAL

ORGANES

DE

COMMANDE

MEMOIREMEMOIRE

CENTRALECENTRALE

PériphériquesPériphériques Unité CentraleUnité CentraleBUSBUS

Les ordinateurs ont potentiellement à leur disposition un grand nombre de périphériques. Leur organisation doit être telle que l’addition d’un périphérique non prévu initialement soit commode. A cet effet, la communication entre le périphérique et l’organe central s’établit à travers un câble organisé en bus sur lequel on peut raccorder très simplement plusieurs périphériques. Un bus permet de transférer l’information en parallèle. A l’intérieur de l’unité centrale, il est constitué de fils capables de transporter les bits correspondant aux codes opérations, aux adresses et aux données. Pour les entrées-sorties, il contient : des fils d’adressage permettant de désigner le périphérique sur lequel on veut travailler et des fils de commande qui permettent de transmettre les signaux qui coordonnent la procédure d’échange. L’organisation des entrées-sorties nécessite que l’on ait défini les modalités à l’extrémité amont du bus, du côté de l’ordinateur (canal) ainsi que les modalités à l’extrémité aval du bus, du côté périphérique (unité de liaison). Il existe une grande variété de solutions qui ne seront qu’évoquées un peu plus loin dans ce cours. La seule constante est que l’initiative appartient toujours au processeur central (l’unité centrale) qui exécute le programme et dispose seul des éléments de décision quant à l’opportunité du transfert. Il existe différentes sortes d’architectures de machines utilisant un ou plusieurs bus. Notre machine fictive a une structure monobus : c’est une structure utilisée dans certains ordinateurs très connus ; elle ne privilégie aucun des organes de l’unité centrale. Mais il existe des machines utilisant deux bus qui peuvent par exemple être dédiés exclusivement au transfert des données ou au transfert des adresses : une telle structure est faite en général pour favoriser les échanges avec la mémoire centrale, puisque les accès au registre de données mémoire et au registre d’adresse mémoire sont différenciés.

page 43

Page 44: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

Il existe également des ordinateurs dont l’architecture est organisée autour de trois bus, de telle sorte qu’il soit possible d’acheminer simultanément deux opérandes dans l’UAL et que le résultat puisse être immédiatement transféré après la phase de calcul.

14.3 LES MODES D’ADRESSAGE Pour accroître les possibilités d’une machine, on utilise divers modes d’adressage que l’on fait figurer à l’aide d’un code dans l’instruction elle-même. Une instruction machine a alors la structure suivante :

Code OpérationCode Opération(COP)(COP)

Mode d'adressageMode d'adressage(MA)(MA)

Valeur d'adresseValeur d'adresse(VA)(VA)

Le mode d’adressage fait partie du champ envoyé au séquenceur (voir plus loin) pour que celui-ci puisse générer les signaux qui permettent d’exécuter l’instruction avec son mode d’adressage. Le champ adresse devient le champ valeur d’adresse puisque les modes d’adressage permettent de travailler sur d’autres éléments que l’adresse elle-même. Le code du mode d’adressage permet de travailler de façon très variée. En général, on peut trouver : (dans ce qui suit, les parenthèses dans la partie droite de l’affectation signifient : contenu du registre ou du mot) L’adressage direct (MA=0)

La valeur d’adresse effective sur laquelle l’instruction travaille est la valeur d’adresse figurant dans l’instruction. Par exemple l’instruction ADD,0,100, effectue l’instruction d’addition normale sur le mot d’adresse 100 accumulateur = (accumulateur) + (100)

L’adressage immédiat (MA=1)

La valeur d’adresse devient l’opérande pour l’opération à effectuer. Ainsi, l’instruction ADD,1,100 signifie que l’on additionne au contenu de l’accumulateur la valeur numérique 100 accumulateur = (accumulateur) + 100

L’adressage relatif au compteur ordinal (MA=2)

La valeur d’adresse effective est égale à la somme de la valeur d’adresse et du contenu du compteur ordinal. Pour ADD,2,100 on aura : accumulateur = (accumulateur) + ( 100+ (CO) ) Si (CO) = 234, la valeur d’adresse effective est 334.

L’adressage indexé (MA=3)

La valeur d’adresse effective est égale à la somme de la valeur d’adresse et du contenu d’un registre appelé registre d’index (IND), s’il existe dans la machine Pour ADD,3,100 on aura : accumulateur = (accumulateur) + ( 100 + (IND) )

page 44

Page 45: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

Si (IND) = 345, la valeur d’adresse effective est 445. L’adressage indirect (MA = 4)

La valeur d’adresse effective est la valeur du contenu de la valeur d’adresse. Par exemple, l’instruction ADD,4,100 effectue l’addition du contenu du contenu de l’adresse 100 avec le contenu de l’accumulateur. On aura : accumulateur = (accumulateur) + ((100)) Si (100) = 876, la valeur d’adresse effective est 876, cela revient à : accumulateur = (accumulateur) + (876)

L’adressage indirect préindexé (MA = 5)

C’est une combinaison des modes indexé et indirect. L’instruction ADD, 5, 100 se traduit par : accumulateur = (accumulateur) + ( (100 + (IND) ) )

L’adressage indirect postindexé (MA = 6)

L’instruction ADD, 6 ,100 se traduit par : accumulateur = (accumulateur) + ( (100) + (IND) )

Il existe d’autres modes d’adressage mais ceux qui viennent d’être présenté sont les plus caractéristiques.

14.4 STRUCTURE DE L’UAL En fait la structure et le fonctionnement de l’UAL sont légèrement différents de ce qui a été décrit. Le ou les accumulateurs sont des registres externes à l’UAL, et ce qui a été appelé accumulateur jusqu’ici n’est qu’un registre permettant des stockages provisoires durant le déroulement de l’instruction. Chacun des circuits de calcul ne dispose pas d’un mot propre à l’intérieur de l’UAL, il est simplement en connexion sur le ou les bus de la machine. Durant le déroulement du cycle de base d’une instruction machine, au moment où le champ code opération est pris dans le registre d’instruction, la valeur du code opération n’est pas envoyée dans le décodeur de fonction qui n’existe pas, mais dans un organe particulier, relié au distributeur de phase commandé par l’horloge, qui porte le nom de séquenceur. Etant donné ce qui vient d’être dit, le schéma de notre ordinateur peut évoluer comme ceci :

page 45

Page 46: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

UALUAL

AACCCCUUMMUULLAATTEEUURR

RRAAMM

RRDDMM

CCOO

RIRI

CODECODE

OPEROPER

MODEMODE

d' @d' @

@@

BUSBUS

RREEGGIISSTTRREE

D'D'IINNDDEEXX

++

--

**

HORLOGE SEQUENCEURHORLOGE SEQUENCEUR

PILEPILEOrdinateur fictifOrdinateur fictif

Le schéma illustre ces notions : séquenceur, unité arithmétique et logique, pile, bus, registres et accumulateurs y figurent. Par souci de cohérence la structure monobus a été conservée. Le séquenceur est l’organe qui génère la suite des signaux assurant les commandes élémentaires qui permettent à une instruction de s’exécuter. Ces commandes consistent à ouvrir ou fermer dans un sens ou dans l’autre, les portes d’accès entre le bus et les registres ; elles déclenchent aussi les opérations de lecture et d’écriture en mémoire ; enfin, elles activent les circuits de calcul de l’unité arithmétique et logique. Pour que le cycle de base décrit ci-dessus puisse être exécuté, il est nécessaire de décomposer autrement les phases vues précédemment. En effet, soit Y l’un des registres de la machine, si les seules commandes que l’ordinateur est capable d’effectuer sont les suivantes : entrer sur le bus à partir du registre Y sortir du bus pour entrer dans le registre Y déclencher une opération dans l’UAL déclencher une lecture en mémoire centrale déclencher une écriture en mémoire centrale La phase 1 devient, par exemple, la suite de commandes : entrer sur le bus adresse à partir du CO sortir du bus adresse pour entrer dans le Registre d’Adresse Mémoire. Le séquenceur est, soit un organe câblé, soit un organe microprogrammé. Schématiquement, un séquenceur est microprogrammé quand la suite des commandes, à réaliser pour qu’une instruction machine s’exécute, est formalisée et manipulée comme un programme à l’aide micro instructions. Nous venons de voir que les ordinateurs sont des machines universelles pour le traitement rationnel de l’information.

page 46

Page 47: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

Les relations entre l’unité centrale et les ressources périphériques ont été présentées d’un point de vue matériel pour situer les différents organes qui permettent de les réaliser. Le fonctionnement et l’architecture d’une machine tels qu’ils ont été présentés jusqu’ici ne permettent pas encore de comprendre comment elle peut être utilisée efficacement, dans la mesure où l’écriture des programmes ne pourrait être que très longue et très fastidieuse. Nous verrons, par la suite, les outils qui permettent d’écrire des programmes en se dégageant de l’architecture et du fonctionnement interne de l’ordinateur.

page 47

Page 48: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

GENERALITES SUR LES

SYSTEMES D'EXPLOITATION

CHAPITRE 5

page 48

Page 49: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

LES PERIPHERIQUES Un périphérique est un organe complémentaire de l’unité centrale destiné à fonctionner en relation avec celle-ci pour permettre le stockage, l’introduction de données et de programmes, la sortie de résultats ou encore pour étendre ses possibilités. On distinguera deux types de périphériques :

- les périphériques d’entrée-sortie destinés à permettre les échanges homme / machine ou environnement / machine. - les périphériques de stockage qui servent comme stockages auxiliaires ou comme stockage de masse.

15. LES PERIPHERIQUES D’ENTREE-SORTIE

15.1 LES CLAVIERS Un clavier est un ensemble de contacts organisés matriciellement. Un programme explore ces contacts pour détecter une fermeture. La position du contact est transformée en code caractère qui est mis en mémoire.

15.2 LES ECRANS Avec le clavier, l’écran est le périphérique d’entrée / sortie le plus utilisé et le plus connu. Constitué d’un tube cathodique ou d’une matrice de cristaux liquides, de formes et de dimensions très variables, il peut fonctionner en mode alphanumérique, semi-graphique ou graphique. Les écrans alphanumériques (terminaux) ne permettent que de représenter du texte en utilisant le principe matriciel), on définit dans ce cas le mode d’affichage en caractères par ligne et en nombre de lignes (ex : 80 car. par ligne sur 24 lignes, on parle aussi de colonnes). Lorsqu’ils sont graphiques ou semi-graphiques, ils permettent de représenter des points de telle sorte qu’il soit permis de tracer des courbes, des surfaces ou même des volumes. La dimension d’un écran correspond à la diagonale de l'aire d'affichage exprimée en pouce. La taille du point (pixel) est la caractéristique fondamentale car il faut afficher chaque point avec stabilité. La taille maximum acceptable d'un point est obtenue quand le diamètre du point est égal à la distance qui sépare deux points consécutifs.

page 49

Page 50: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

Pour les écrans monochromes le problème est facilement résolu. Pour les écrans couleur, chaque point est en fait formé de trois points correspondant aux trois couleurs fondamentales. La convergence des trois rayons ne pouvant être parfaite, on considérera comme point le cercle incluant ces trois points élémentaires. Le diamètre de ce cercle, appelé pitch ou dot pitch, doit être au maximum égal à la distance séparant deux points virtuellement adressables. Dans la réalité, des effets de bord subsistent et les superpositions résultantes donnent un effet de flou.

Matrice de pixelsMatrice de pixels

PixelPixelPitchPitch

La définition d’un écran est en fait double. La définition technologique fait référence à la tache lumineuse élémentaire. On parle alors de résolution, c.-à-d. le nombre de points affichables dans la largeur et le nombre de points affichables dans la hauteur de l'écran. La définition informatique s’attache au nombre maximum de points adressables de l'écran, ce nombre étant directement lié à la taille de la mémoire vidéo et au mode d'affichage (couleur ou monochrome). Le tableau qui suit donne une idée des résolutions supportables par les écrans en fonction de leur taille. Les résolutions en italique gras sont les résolutions les mieux adaptées.

15 POUCES 17 POUCES 19 POUCES 21 POUCES 640 X 480 640 X 480 640 X 480 640 X 480800 X 600 800 X 600 800 X 600 800 X 600

1024 X 768 1024 X 768 1024 X 768 1024 X 768 1280 X 1024 1280 X 1024 1280 X 1024 1600 X 1200 1600 X 1200 1800 X 1440 1800 X 1440

La fréquence horizontale est la fréquence en Khz du signal analogique vidéo, elle correspond en fait à la vitesse à laquelle va s'afficher une ligne de pixels. Plus la résolution est importante, plus la fréquence horizontale doit être élevée. Les moniteurs multi-fréquences permettent cela. L’image se forme par balayages successifs de toute la surface de l’écran. La fréquence verticale dite de rafraîchissement est la fréquence à laquelle l’image est reconstituée. Une fréquence de balayage de 50 Hz est suffisante pour un téléviseur. Pour un moniteur, une fréquence de 60 ou 72 Hz donne un résultat satisfaisant. L’entrelacement est un artifice utilisé en télévision qui consiste à afficher alternativement les lignes paires puis les lignes impaires. Si, pour des images animées, l'inertie (rémanence) de l'écran permet à l'œil de reconstituer l'image, l'image informatique supporte difficilement cette technique (instabilité). Nota : la législation du travail impose maintenant de travailler à une fréquence minimum de 50 Hz en mode non entrelacé.

page 50

Page 51: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

La création du signal vidéo par le contrôleur se fait à partir d'informations qui sont stockées dans une mémoire spécifique : la mémoire vidéo. Physiquement, cette mémoire peut être soit un sous-ensemble de la mémoire centrale de la machine soit une mémoire spécifique à la carte contrôleur. La taille de la mémoire vidéo détermine directement la résolution maximale possible. Si l'écran était monochrome, un pixel ne pouvant être que noir ou blanc, 1 bit suffirait pour coder l'allumage ou l'extinction du pixel correspondant. Dans le cas d'un écran en 256 niveaux de gris ou 256 couleurs, il faut coder 256 valeurs différentes soit 28 valeurs. Pour afficher un pixel, il faut donc 8 bits soit un octet. On peut alors exprimer la taille T en octets (octet à 8 bits) de la mémoire vidéo nécessaire pour une résolution et une palette donnée par la formule :

T = ( nb_pixel_largeur x nb_pixel_hauteur x ( ln ( nb_couleurs ) / ln ( 2 ) ) ) / 8 On obtient, arrondi en taille mémoire, le tableau suivant :

COULEURS

Nombre de bits

16 couleurs

4 bits

256 couleurs

8 bits

65536 couleurs

16 bits

16,7 M de couleurs

(16777216) mode ‘’true color’’

24 bits RESOLUTIONS 640 X 480 512 Ko 512 Ko 1 Mo 2 Mo 800 X 600 512 Ko 1 Mo 2 Mo 2 Mo 1024 X 768 1 Mo 1 Mo 2 Mo 4 Mo 1280 X 1024 1 Mo 2 Mo 4 Mo 4 Mo 1600 X 1200 2 Mo 2 Mo 4 Mo 8 Mo 1800 X 1440 2 Mo 4 Mo 8 Mo 8 Mo

15.3 LES IMPRIMANTES Destinées à produire du papier, à générer des listings ou autres les imprimantes correspondent à un type de périphérique dont on peut difficilement se passer. Dans l’ordre chronologique on distingue :

- les imprimantes matricielles ou à impact : à aiguilles, à boule, à marguerite, à chaîne. - les tables traçantes. - les imprimantes thermiques : à papier thermo - sensible, à sublimation. - les imprimantes à encre : jet et bulle. - les imprimantes laser.

15.4 D’AUTRES PERIPHERIQUES D’ENTREE / SORTIE Les claviers, écrans et imprimantes sont des périphériques incontournables. Il existe, par ailleurs, tout un éventail de périphériques permettant d’étendre les possibilités de la machine :

- des périphériques de pointage :souris, boules, tablettes graphiques. - des périphériques d’acquisition et de restitution du son : microphone, haut-parleur, tuner F.M. - des périphériques d’acquisition et de restitution d’image : scanner, appareil photo. - des périphériques d’acquisition et de restitution vidéo : caméra, tuner T.V. - des périphériques de télécommunication : réseau, fax, téléphone.

page 51

Page 52: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

16. LES PERIPHERIQUES DE STOCKAGE Les périphériques de stockage servent à supporter des données, des textes et des programmes soit pour les archiver durant un laps de temps préétabli, soit pour les stocker de façon transitoire de telle sorte que l’ordinateur puisse y faire appel pour un traitement à un instant donné. On dit souvent que les supports de périphérique de stockage sont des mémoires de masse dans la mesure où ils peuvent contenir une très grande quantité d’informations alors que la mémoire centrale d’un ordinateur a une capacité plus restreinte. En fonction de leurs organisations physiques, ils jouent des rôles aux spécialisations croissantes. On utilise le plus souvent la bande magnétique pour des archivages provisoires ou durables (sauvegardes) ou le disque optique pour l’archivage définitif, alors que le disque magnétique est un support pour tous les traitements interactifs ou conversationnels dans lequel l’utilisateur veut avoir un accès immédiat aux données.

16.1 LES SUPPORTS MAGNETIQUES

16.1.1 PRINCIPE DE LECTURE ECRITURE MAGNETIQUE

L’envoi d’un courant dans le bobinage de la tête de lecture - écriture crée un champ magnétique à la pointe de l’électro-aimant, ce qui se traduit par la création d’un champ magnétique permanent sur le support. Comme il existe deux sortes d’orientation pour le champ magnétique, on peut les faire correspondre avec les deux valeurs de codification 0 ou 1. Pour lire les données sur le support, il faut que celui ci se déplace à vitesse constante de telle sorte que le champ magnétique présent sur le support crée une variation de flux magnétique à la pointe de l’électro-aimant, ce qui provoque un courant électrique dans le bobinage de la tête de lecture - écriture.

SupportSupportOxydeOxyde

16.1.2 LES BANDES MAGNETIQUES

On distinguera deux grands types de bandes magnétiques, basé sur leur conditionnement : les bandes sur bobine et les bandes en cassette. Ces bandes magnétiques sont semblables à celles dont on dispose pour des magnétophones de haute fidélité. Le support d’une bande magnétique est constitué de mylar de longueur et largeur variable, recouvert d’une couche d’oxyde d’épaisseur comprise entre 50 et 100 microns. La bande est divisée en pistes ou canaux de façon à encoder un caractère dans une largeur élémentaire de bande. La tête de lecture/écriture comporte autant d’électro-aimants accolés qu’il y a de canaux sur la bande.

page 52

Page 53: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

Famille DEROULEURFamille DEROULEUR•• Bande amovible, Bande amovible,•• 7, 9 ou 18 pistes, 7, 9 ou 18 pistes,•• Principe de codage identique Principe de codage identique aux streamers. aux streamers.

Famille STREAMERFamille STREAMER•• Bande non amovible, Bande non amovible,•• 4 à 32 pistes, 4 à 32 pistes,•• Enregistrement séquentiel des bits Enregistrement séquentiel des bits en parallèle sur plusieurs pistes. en parallèle sur plusieurs pistes.

Exemple : pour une bande possédant 9 canaux, le caractère A étant représenté par un octet (8 bits) à l’aide du code EBCDIC, on obtient la représentation suivante :

0 (bit de contrôle)1 1 0 0 0 0 0 1

La densité d’enregistrement se mesure en nombre de caractères au pouce (bit per inch bpi). L’enregistrement sur une bande magnétique se fait par blocs, appelés aussi enregistrements physiques séparés par des espaces inter - blocs. La plupart des enregistreurs - lecteurs possèdent une double tête de lecture / écriture de façon à relire immédiatement après l’écriture pour pouvoir réaliser des vérifications. La lecture peut, en général, se faire dans les deux sens, ce qui n’est pas le cas de l’écriture. On ne modifie jamais une bande, on ne peut ni rajouter ni supprimer, ni modifier un enregistrement : lorsqu’il faut mettre un fichier à jour sur une bande, on doit le recopier avec les modifications sur une autre bande. La bande est un support physiquement séquentiel, il peut donc falloir plusieurs minutes pour retrouver un bloc situé à l’extrémité opposée. C’est un support relativement lent et qui ne convient pas à des accès rapides, la recherche ne pouvant se faire que séquentiellement. Pour la quantité de données qu’elle peut contenir, la bande magnétique est un support de faible coût. Elle sert principalement pour archiver des données ou des programmes d’utilisation rare.

page 53

Page 54: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

16.1.3 LES UNITES DE DISQUES MAGNETIQUES

Depuis 1955, de nombreuses techniques ont été utilisées. On trouve :

- les disques durs à têtes fixes, - les disques fixes à têtes mobiles, - les disques à cartouches avec plateaux fixes et têtes mobiles, - les disques amovibles, - les disques flexibles ou souples.

Le disque magnétique est constitué d’un support rigide ou souple recouvert d’une couche magnétique. Chaque face peut être utilisée. Les enregistrements sont réalisés sur des pistes concentriques. Les disques rigides fixes ou amovibles peuvent comprendre un ou plusieurs plateaux empilés sur un même axe. La capacité d’un disque est fonction de trois critères :

- la densité de bits par unité de longueur (bits par pouce BPI Bits per inch), - la densité de pistes par unité de longueur (pistes par pouce ou TPI pour track per inch), - le nombre de pistes par cylindre (le nombre de plateaux).

Elle va de quelques Ko pour un disque souple à plusieurs To (Tera Octets) pour des disques durs de gros systèmes :

- 1 Ko = 210 octets = 1024 octets (Kilo octet). - 1 Mo = 210 Ko = 220 octets (Méga octet). - 1 Go = 210 Mo = 220 Ko = 230 octets (Giga octet). - 1 To = 210 Go = 220 Mo = 230 Ko = 240 octets (Tera Octet). - 1 Po = 210 To = 220 Go = 230 Mo = 240 Ko = 250 octets (Peta Octet). - 1 Eo = 210 Po = 220 To = 230 Go = 240 Mo = 250 Ko = 260 octets (Exa Octet).

16.1.4 LES DISQUES SOUPLES (DISQUETTES)

Les disques souples sont amovibles. Le peigne de lecture - écriture se réduit à deux têtes pour les unités double face et un peigne pour les simples faces.

Disquette 5.25"Disquette 5.25" Disquette 3.5"Disquette 3.5"

page 54

Page 55: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

Capacités : Disquettes 5.25 : - 360 Ko (40 pistes, 9 secteurs) - 1,2 Mo (80 pistes, 15 secteurs) Disquettes 3.5 : - 720 Ko (80 pistes, 9 secteurs) - 1,44 Mo (80 pistes, 18 secteurs) Disquette ZIP : - 65 Mo à 1 Go.

16.1.5 LES DISQUES DURS

En technologie traditionnelle : Pour les disques rigides l’unité de lecture est constituée d’une logique de commande, d’un moteur d’entraînement, et d’un peigne de lecture - écriture comprenant une tête de lecture - écriture par face utile de chaque plateau. En technologie WINCHESTER : L’unité de lecture - écriture ne comprend que la logique de commande et le moteur d’entraînement. L’ensemble des têtes de lecture - écriture est solidaire des plateaux au sein d’un module fermé, étanche et maintenu en surpression pour être à l’abri. Chaque face de chaque plateau est recouverte d’un film de plastique extrêmement mince et liquide qui joue le rôle de lubrifiant et qui facilite le décollage et l’atterrissage des têtes lorsque le plateau se met à tourner (3600 t/mn) ou lorsqu’il s’arrête. A l’arrêt, les têtes reposent sur une zone ou aucune donnée n’est enregistrée (landing zone).

Bras de lectureBras de lecture

Plateaux du disquePlateaux du disque

Le disque magnétique est un support à accès direct dans la mesure où dans le temps d’une rotation du disque il est possible d’avoir accès à n’importe quel emplacement pour y lire ou écrire les données. Il joue ainsi un rôle privilégié d’aide à la mémoire centrale qui ne peut contenir d’aussi grandes masses d’information : il sert donc de mémoire dite « auxiliaire ».

page 55

Page 56: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

Il faut distinguer l’organisation physique des disques de leur organisation logique. Sur les disques durs (rigides) l’accès aux données est organisé de deux façons différentes :

Soit les pistes sont découpées en secteurs repérables par leur adresse (n° plateau, n° face, n° secteur) ce qui permet d’avoir un accès direct à l’information élémentaire contenue dans le secteur. Soit l’ensemble du disque est organisé par cylindre, lu en bloc, et correspondant à un numéro de piste puisque le peigne des têtes permet de lire ou d’écrire sur toutes les pistes portant le même numéro sur chaque face de chaque plateau simultanément. Le cylindre ainsi lu est transféré en mémoire centrale où les données recherchées peuvent y être extraites plus rapidement que dans la méthode précédente.

Pour réaliser ces organisations logiques on effectue une opération de formatage physique, qui consiste à découper la disquette en pistes et secteurs.

STRUCTURE D’UNE DISQUETTE STRUCTURE D’UNE DISQUETTE OU DISQUE DUROU DISQUE DUR(sur un disque dur, les pistes s'appellent cylindres)(sur un disque dur, les pistes s'appellent cylindres)

piste 0piste 0 piste 1piste 1

secteur 1secteur 1

secteur 2secteur 2

page 56

Page 57: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

17. LES SUPPORTS OPTIQUES : PRINCIPES DE FONCTIONNEMENT

Structure et Fonctionnement des OrdinateursStructure et Fonctionnement des Ordinateurs

ESAT/DMSI/Cours ArchitectureESAT/DMSI/Cours Architecture

LESLESDISQUESDISQUES

OPTIQUESOPTIQUES

PrincipePrincipedede

fonctionnementfonctionnement

EmissionEmission LaserLaser

PrismePrisme

PhotodétecteurPhotodétecteur

RayonRayon

CuvetteCuvette

Le disque optique comprend sur sa couche métallique un certain nombre de cuvettes "creusées" au laser. Ces cuvettes sont placées sur une piste unique, continue, qui se poursuit en spirale vers le centre du disque. Etant donné que la densité de l'information doit être constante pour conserver le même débit, la vitesse de rotation du lecteur doit être variable pour respecter une vitesse linéaire constante. Pour ce qui est de l’optique, la tête est composée de deux parties :

- l'une qui émet le faisceau laser, - l'autre qui reçoit le rayon après qu'il ait frappé le disque.

C'est à un photo-détecteur que revient la tâche de décortiquer l'information. Pour éviter que le faisceau ne revienne sur la tête émettrice, un prisme est chargé de dévier le rayon vers le photo-détecteur.

Contrairement à ce que l'on pourrait penser, les trous ne correspondent pas à l'un des deux états binaires reconnus en informatique. C'est le passage du fond d'une cuvette à un "pic" qui produit l'information. Ainsi, c'est juste lorsque la tête de lecture passe en surplomb d'un bord de cuvette que l'information passe à "1", le reste du temps, la valeur est à "0". Au bout d'un certain nombre d'intervalles de temps, par exemple 8 ou 16, la succession des valeurs binaires forme un nombre.

page 57

Page 58: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

Concrètement, lorsque le faisceau atteint le fond d'une cuvette, le rayon est concentré vers le photo détecteur. A l'inverse, au passage au sommet d'un pic, le faisceau est plus largement diffusé. C'est le changement d'intensité lumineuse sur le détecteur qui génère l'information.

page 58

Page 59: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

GENERALITES SUR LES

SYSTEMES D'EXPLOITATION

CHAPITRE 6

page 59

Page 60: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

LE SYSTEME D’EXPLOITATION

18. GENERALITES

18.1 OBSERVATION PRATIQUE Démarrons un P.C. sans disque dur. Après quelques tests, la machine demande d'insérer une disquette ("disquette système"). Sans cette disquette, le P.C. reste bloqué, il ne sait pas dialoguer avec l'utilisateur. Il manque le système d'exploitation qui est nécessaire au fonctionnement d'un ordinateur.

18.2 CHARGEMENT DU SYSTEME D’EXPLOITATION Cette opération est appelée "boot strap" (chausse-pied) ou bien "boot". Sur certaines machines, le système est entièrement contenu en ROM et s'initialise dès la mise sous tension. Sur les autres, en particulier sur les P.C., seule une toute petite partie est présente en ROM (appelée le BIOS). Le BIOS est tout d'abord initialisé, puis, le reste du système est chargé en mémoire centrale à partir d’une disquette système (bootable) ou du disque dur. Le système est ensuite lancé.

18.3 ROLE D’UN SYSTEME D’EXPLOITATION Le système d’exploitation gère les ressources matérielles et logicielles de la machine sur demande du programme ou de l’utilisateur directement. Les fonctions du système d’exploitation sont très variées, néanmoins on peut classer ses diverses fonctionnalités en deux catégories : Celles qui sont mises à la disposition de l’utilisateur pour qu’il puisse adapter son environnement de travail, créer ou effacer des fichiers, préparer des supports de stockage d’information (formater), ... On appelle cette catégorie les commandes utilisateurs ou interface de dialogue entre l’utilisateur et la machine. Elles permettent de lancer des opérations complexes avec des instructions simples. Celles qui permettent le fonctionnement du système informatique. Ces fonctionnalités sont pratiquement inaccessibles à l’utilisateur. Dans ce domaine, le système d’exploitation assure :

- la gestion de l’environnement, - la gestion des entrées sorties, - la gestion des interruptions, - la gestion des ressources, - la gestion des travaux, - la gestion de la mémoire, - la gestion des fichiers, - la gestion des programmes, - la gestion des erreurs.

page 60

Page 61: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

19. FONCTIONNALITES DE BASE D’UN SYSTEME D’EXPLOITATION

19.1 INTERFACE HOMME MACHINE (ENVIRONNEMENT UTILISATEUR)

Le système d'exploitation doit permettre à l'utilisateur de dialoguer avec la machine par un ensemble de commandes simples (voir précédemment) ou même de manière graphique (surcouche du système).

19.2 GESTION DES ENTREES-SORTIES ET DES INTERRUPTIONS Le système d'exploitation s'occupe du dialogue avec les périphériques (échange de données).

19.3 GESTION DES RESSOURCES ET DES TRAVAUX Le système d’exploitation doit fournir des outils permettant à plusieurs processus de se synchroniser entre eux et de pouvoir s’exécuter dans l’unité centrale en s’imbriquant.

19.4 GESTION DE LA MEMOIRE Il gère la mémoire centrale afin d'allouer la quantité nécessaire aux programmes qui en demandent. Il doit ainsi optimiser au maximum l'espace mémoire disponible.

19.5 GESTION DES FICHIERS Le système d'exploitation doit organiser à tout moment la structure des supports de stockage. C'est lui qui est responsable de la gestion des fichiers sur disque et de leur cohérence.

19.6 TRAITEMENT DES PROGRAMMES D’APPLICATION C'est le système qui doit assurer le chargement et l'exécution correcte des programmes d'application. Il peut également (mais ce n'est pas systématique) mettre à disposition des outils (compilateurs, assembleurs, éditeurs de liens) permettant au programmeur de réaliser ses propres logiciels exécutables.

19.7 GESTION DES ERREURS La gestion des erreurs susceptibles de se produire pendant l'exécution d'une opération revient également au système d'exploitation. Il doit ou bien essayer de résoudre le problème, ou bien le signaler soit à l'utilisateur par le biais de messages d'erreurs, soit au programme en cours d'exécution grâce aux codes d'erreurs.

page 61

Page 62: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

20. LES DIFFERENTES COUCHES D’UN SYSTEME D’EXPLOITATION

20.1 DECOMPOSITION GLOBALE D’UN SYSTEME INFORMATIQUE

MatérielMatériel

BIOS(Rom)BIOS(Rom)

Système d'exploitationSystème d'exploitation

Logiciel d'ApplicationLogiciel d'Application

20.1.1 MATERIEL

L’ensemble des éléments composant la machine et les périphériques.

20.1.2 BIOS

Le BIOS (Basic Input Output System) permet à un système d’exploitation standard de fonctionner sur des machines dont les caractéristiques internes peuvent varier. Le BIOS contient des petits programmes permettant à la machine de communiquer avec l’extérieur (unité centrale / périphériques standards). Par exemple, la réception d'un caractère du clavier.

20.1.3 SYSTEME D’EXPLOITATION

Le système d'exploitation regroupe l’ensemble des primitives (petits programmes) exécutant chacune une tâche précise. Ces primitives sont appelées par l'utilisateur ou le logiciel d'application. Exemple : affichage à l'écran d'un caractère saisi au clavier.

20.2 DECOMPOSITION DU SYSTEME D’EXPLOITATION

INTERPRETEUR DE COMMANDESINTERPRETEUR DE COMMANDES

PRIMITIVESPRIMITIVES

NOYAUNOYAU

BIOS(Rom)BIOS(Rom)

page 62

Page 63: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

Couche système = Interpréteur + (Primitives + Noyau)Couche système = Interpréteur + (Primitives + Noyau)

20.2.1 NOYAU

Le noyau, cœur du système correspond à l’ensemble des sous-programmes constituant le système d’exploitation. Cette partie correspond aux fichiers MSDOS.SYS et IO.SYS de MS/DOS. Sous UNIX, le noyau assure les fonctions suivantes (entre autres) :

- gestion des données du système (informations sur les éléments de la machine) ; - protection du système et des données (le système est chargé en mémoire dans une zone réservée) ; - transfert de l’information entre les différents éléments de la machine ; - fonctionnement multi-utilisateurs en gérant l’exploitation du processeur ; - gestion de la mémoire centrale.

20.2.2 PRIMITIVES

Les primitives constituent l’ensemble (liste) des sous-programmes d’appel au système, l’ensemble des points d’entrée dans le noyau. La primitive Write () d’UNIX permet de lancer le sous - programme d’écriture disque. Ces primitives sont à la disposition de l’utilisateur et du programme d’application. Le programme fera appel aux primitives pour réaliser des opérations déjà programmées dans le système d’exploitation et souvent exécutables uniquement par le système.

20.2.3 INTERPRETEUR DE COMMANDES

L’interpréteur de commandes (Shell sous UNIX) vérifie les commandes entrées par l'utilisateur, les déchiffre et les exécute si elles sont correctes. Il correspond au fichier COMMAND.COM de MS/DOS. Il donne aussi la possibilité à l’utilisateur de créer lui-même ses propres commandes.

20.3 LE PROGRAMME D’APPLICATION UTILISE LES PRIMITIVES DU SE POUR DEUX RAISONS

20.3.1 PREMIERE RAISON

Il est inutile de demander au programmeur de reprogrammer certaines opérations de base, communes à tous les programmes.

Exemple : Une écriture disque, la lecture d’un caractère au clavier. En effet, dans le cas de l’écriture disque, il faut : s’assurer que le lecteur est prêt, choisir la bonne vitesse de rotation du disque, déplacer les têtes de lecture, ralentir la vitesse de rotation pour écrire la donnée, etc...

Ces instructions de base, de très bas niveau, très proche de l’électronique et de la mécanique de la machine sont confiées au système d’exploitation et au BIOS. Le programmeur sous-traitera son écriture disque au système d’exploitation, qui fera appel à des routines du BIOS. Le programmeur pourra alors se consacrer à une programmation plus riche en abstraction, sans tout réinventer à chaque fois. En réalité, le programme applicatif fait très souvent appel au système d’exploitation. Plus le langage sera évolué (proche de l’utilisateur) et moins ces appels seront visibles pour le programmeur.

page 63

Page 64: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

20.3.2 DEUXIEME RAISON

Le système d’exploitation exécute des opérations de très bas niveau, très proches de la machine. Les erreurs de programmation à ce niveau peuvent être lourdes de conséquence. Afin d’éviter le pire, certaines instructions du jeu d’instruction de la machine ne pourront être utilisées que par le système d’exploitation. La primitive pourra composer avec toutes les instructions de base de la machine. Une fois programmé correctement, le système d’exploitation ne risque plus de représenter un danger potentiel pour la machine. On dit alors que le système d’exploitation utilise le microprocesseur en mode maître ou superviseur, il a tous les droits. Parfois, pour certaines opérations, le programmeur doit obligatoirement s’adresser au système d’exploitation. Le programmeur utilise le microprocesseur en mode utilisateur ou mode esclave.

21. LE BIOS (BASIC INPUT OUTPUT SYSTEM)

page 64

Il est difficile d’appréhender le système d’exploitation sans définir ce qui le relie à la machine : le BIOS. Comme le montre le schéma suivant, ce n’est pas le système d’exploitation qui donne les ordres à la machine mais un programme spécial. Ce programme, de petite taille, appelé BIOS, contient les différents programmes nécessaires aux tests des différents éléments de l’ordinateur, au démarrage du disque dur ainsi qu’au chargement du système d’exploitation. Le BIOS contient également des fonctions (sous-programmes) permettant au système d’exploitation de dialoguer et de commander les périphériques standards (clavier, écran, disque dur, lecteur de disquette) en mode standard (utilisation d’une imprimante ou de l’écran en mode texte). Le BIOS comporte aussi un module setup permettant de configurer la partie matérielle du système. C’est le BIOS qui effectue les transferts de données avec les périphériques standards. Par contre, la gestion du processeur et de la mémoire centrale est du ressort du système d’exploitation. Le BIOS est une spécificité du monde P.C.

BIOSBIOS

InterpréteurInterpréteurde commandesde commandes

LogicielLogicielintégrateurintégrateur

ProcesseurProcesseur MémoireMémoire MachineMachine PériphériquesPériphériques

Logiciel applicatifLogiciel applicatif

ClavierClavier SourisSouris

Noyau du systèmeNoyau du système

Page 65: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

Le système d’exploitation communique au BIOS, sous forme de messages, les différentes commandes que celui-ci doit faire exécuter aux périphériques. Ces messages sont traduits en commandes BIOS. Une primitive du système peut donc se décomposer en plusieurs commandes BIOS. Dans le monde P.C., le BIOS est un ensemble de procédures standards contrôlant les entrées-sorties. Le BIOS est implanté dans la ROM de la carte mère. Dans d’autres systèmes d’exploitation, le BIOS (au moins son équivalent) fait partie du système : c’est la couche la plus basse qui devra être modifiée pour utiliser le système sur des machines différentes. Compatibilité et BIOS : Le BIOS est vendu avec la machine. Son action est adaptée au processeur utilisé. Par contre, le fait qu’un BIOS soit installé sur une carte mère ne présuppose en rien quel sera le système d’exploitation utilisé. Un même BIOS peut utiliser plusieurs systèmes d’exploitations différents. Lorsque des BIOS différents réalisent pratiquement les mêmes actions, on dit qu’ils sont compatibles. C’est donc au niveau du BIOS que se juge la compatibilité d’une machine. Evolutivité et BIOS : Il est aujourd’hui possible de modifier certains paramètres du BIOS car ceux-ci sont écrits dans une mémoire flash ou une EPROM (CMOS) qui conserve son contenu grâce à une pile (sur des machines anciennes) ou une batterie (machines actuelles). Le programme permettant de configurer le BIOS est le SETUP. En effet, le BIOS peut être prévu pour supporter plusieurs disques durs mais il faut les déclarer (type de disque, unité logique -C: ou D:.., nombre de cylindres...). Les informations qui seront fournies (nombre et type de disques, nombre de lecteurs de disquettes, extension mémoire,...) seront stockées dans le CMOS. Intel prévoit un maximum de périphériques dans ses prochains BIOS ainsi que différents modes de communication avec ces matériels (CD ROM, écran graphique XGA, carte son...).

22. CLASSIFICATION DES SYSTEMES D’EXPLOITATION Nous venons de voir l’architecture en couche d’un système d’exploitation ainsi que les différentes tâches que celui-ci doit assurer afin de permettre à l’utilisateur ou au programme de base d’exploiter les capacités de la machine d’une manière simplifiée. Nous allons voir maintenant de quelle manière nous pouvons classer les systèmes d’exploitation en fonction de leurs possibilités, c’est à dire en fonction de la manière dont ils assurent les tâches décrites auparavant.

22.1 CLASSIFICATION PAR MODE DE TRAITEMENT (MONO, MULTI-UTILISATEUR)

22.1.1 TRAITEMENT PAR LOTS (BATCH PROCESSING)

Ce mode de traitement est le plus ancien et le plus classique. Il est encore largement utilisé. L'utilisateur donne un ensemble de programmes à exécuter (jobs) et ces jobs sont réalisés sans intervention possible de l'utilisateur. Ce dernier ne récupérant ses résultats que plus tard. Ce mode de traitement exige donc que toutes les données nécessaires au traitement soient définies par avance. On utilise souvent un calculateur auxiliaire dont le rôle consiste à effectuer des conversions de supports (carte à bande et bande à imprimante) et gérer les files d'attente. Avec les calculateurs de troisième génération dotés de la multiprogrammation (voir plus loin), les opérations de conversion de support se font en simultanéité avec le traitement des programmes. La différence importante réside dans le fait que le traitement par lot est remplacé par le chargement continu des travaux au fur et à mesure de leur arrivée. Les travaux sont mis en attente sur disque magnétique, puis, chargés en mémoire pour être exécutés sous le contrôle du système d’exploitation qui tient compte de leur priorité.

page 65

Page 66: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

22.1.2 TRAITEMENT INTERACTIF

L'utilisateur peut à tout moment intervenir dans la session courante ; il lance l'exécution de commandes, en apprécie les résultats, et peut décider lui-même de la suite des opérations.

22.1.3 TRAITEMENT EN TEMPS REEL (REAL TIME)

Ce mode de traitement est principalement utilisé pour des applications nécessitant un suivi de grandeurs physiques (guidage d'engins, suivi de chaîne, surveillance de centrales nucléaires, conduite d’engins spatiaux, ...). Les données transmises à l'ordinateur sont traitées immédiatement. L'opération ainsi effectuée s'intitule contrôle de processus. Les ordinateurs temps réel ont des possibilités d’entrées-sorties spéciales ainsi qu’un système d’interruptions permettant au calculateur de se synchroniser immédiatement sur le processus à conduire ou à contrôler et, ainsi, d’être en mesure de réagir instantanément aux contraintes extérieures. On dit que les calculateurs travaillent en ligne pour exprimer le fait qu’ils sont connectés avec l’extérieur. Le contrôle exercé sera en boucle ouverte lorsque l’homme peut, à partir des événements extérieurs, réagir sur le processus en cours (ex : destruction de fusée hors trajectoire) ; le contrôle est en boucle fermée si le calculateur réagit directement sur le processus au moyen d’organes de sortie spécialisés (ex : sirène d’un système d’alarme). Le temps réel est un mode de traitement de données dans lequel les données proviennent, par messages séparés, d’un processus extérieur qui impose des contraintes de temps sur les délais d’entrée de chaque message et sur les délais de sortie des résultats correspondants. Caractéristiques essentielles de ce mode de traitement :

- les données arrivent dans un ordre arbitraire et à des instants aléatoires, - l’information subit une dégradation quasi-instantanée si elle n’est pas immédiatement traitée, - les programmes peuvent changer en fonction du temps selon les valeurs des données extérieures.

22.1.4 TRAITEMENT EN TEMPS PARTAGE (TIME SHARING)

Un système est mono-utilisateur lorsqu’il ne peut gérer qu’un seul utilisateur. Il est multi-utilisateurs lorsqu’il est capable de distinguer les actions de plusieurs utilisateurs. On dit aussi qu’il est en temps partagé : Ceci correspond au cas ou plusieurs utilisateurs sont simultanément connectés à l'ordinateur. Le système d'exploitation permet alors de partager l'ensemble des ressources matérielles et logicielles en accordant à chacun un quantum de temps, de telle sorte que chaque utilisateur ait l'impression d'avoir son propre ordinateur à sa disposition. Il gère l'exécution des programmes. Dans un système multi-utilisateurs apparaît la notion d’administrateur. Il est en effet primordial qu’un utilisateur particulier configure les environnements de chaque utilisateur et définisse les droits et propriétés de chacun. Caractéristiques d’un système en temps partagé (time sharing system) :

- nombre d’utilisateurs admis à utiliser le système en même temps (plus les utilisateurs sont nombreux, plus la machine passera de temps à permuter entre les utilisateurs), - valeur des temps de réponse admis pour chaque utilisateur, - limitations imposées à chaque utilisateur, - priorités entre les utilisateurs, - nombre total d’utilisateurs admis à partager le système.

page 66

Page 67: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

22.2 CLASSEMENT PAR MODE DE PROGRAMMATION (MONO, MULTI-TACHE)

22.2.1 MONOPROGRAMMATION (MONOTACHE)

Chaque programme est exécuté séparément. L'utilisateur dispose de l'ordinateur tout entier à un instant donné. Problème : lors d'opérations d'entrée-sortie, le processeur est obligé d'attendre un temps non négligeable, ces opérations étant très longues par rapport au temps de calcul (de l'ordre de 1 pour 1000). Solution : donner la main à un autre programme pendant le temps d'attente pour entrée-sortie, afin de perdre le moins de temps possible. Cela s'appelle la multiprogrammation.

22.2.2 MULTIPROGRAMMATION (MULTITACHE)

Plusieurs programmes sont exécutés à la fois, ils sont présents en mémoire centrale, mais un seul d'entre eux est actif à un moment donné. Il pourra être interrompu à un autre moment par un autre programme, et sera alors mis en attente, pendant que l'autre sera exécuté par le processeur. La commutation entre les programmes peut-être assurée soit par les entrées-sorties, soit de façon périodique par une horloge interne (meilleure méthode).

22.2.3 MULTITRAITEMENT

Plusieurs programmes sont exécutés par autant de processeurs distincts qui se partagent l'ensemble des ressources de l'ordinateur. Il ne s'agit donc plus de partage de temps sur un unique processeur, comme en multiprogrammation. Chaque unité centrale est allouée pour une exécution donnée. Cas particulier de multitraitement : des processeurs spécialisés ou des coprocesseurs (DSP...) exécutent une partie d'un programme afin de décharger le processeur principal.

22.3 SYSTEMES D’EXPLOITATION OUVERTS OU FERMES Un système d’exploitation fermé est un système dont les caractéristiques sont liées à la machine. On ne peut utiliser ces systèmes que sur certains ordinateurs particuliers. MS-DOS est un système fermé : il ne peut exploiter que le processeur Intel (IBM P.C. et compatibles) ou d’autres processeurs à l’architecture quasiment identique. UNIX est un système ouvert. Moyennant quelques modifications dans ses couches les plus basses, il peut se porter sur diverses machines.

22.4 CLASSIFICATION DE QUELQUES SYSTEMES D’EXPLOITATION

Caractéristiques

MS-DOS

System 7

OS/2

Windows 95

Windows NT

Unix

Fermé X X X X Ouvert X* X X Monotâche X X Multitâches X X X X Mono-utilisateur X X X X X Multi-utilisateurs X Temps réel X Multiprocesseurs X X

* en cours de réalisation au moment de la rédaction du document

page 67

Page 68: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

Nous pouvons maintenant aborder quelques-unes unes des tâches essentielles du système d’exploitation :

- la gestion des entrées-sorties. - la gestion des interruptions. - la gestion de la mémoire. - la gestion des travaux et des ressources. - la gestion de l’environnement et des erreurs. - la gestion des fichiers. - la gestion des programmes.

page 68

Page 69: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

GENERALITES SUR LES

SYSTEMES D'EXPLOITATION

CHAPITRE 7

page 69

Page 70: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

LA GESTION DES ENTREES-SORTIES ET DES INTERRUPTIONS

23. LES ENTREES-SORTIES Nous avons vu que l’un des rôles fondamentaux de l’ordinateur est de récupérer des données, de les traiter puis de restituer les résultats souhaités à un utilisateur. Si le traitement des données est une opération totalement interne à l’ordinateur, il n’en va pas de même pour les deux autres opérations. Il est cette fois indispensable de pouvoir communiquer avec le monde extérieur pour recevoir les données à traiter et pour restituer les données traitées. Ces opérations prennent le nom d’entrées-sorties.

23.1 PROBLEMATIQUE DES ENTREES-SORTIES Les points suivants sont les problèmes majeurs à prendre en compte en ce qui concerne les échanges de données entre l’ordinateur et ses périphériques.

23.1.1 UNE TRES GRANDE DIFFERENCE ENTRE LA VITESSE DE TRAITEMENT ET LES DIFFERENTES VITESSES DE TRANSFERT PROPRES AUX PERIPHERIQUES

L'origine même des premiers systèmes d'exploitation réside dans la différence de vitesse entre l'unité centrale et les entrées-sorties. Les entrées-sorties sont toujours très lentes comparées à la vitesse de calcul de l’unité centrale :

- un processeur Pentium Risc cadencé à 100 Mhz traite globalement une instruction par cycle d’horloge. Il peut donc, dans l’absolu, transférer 108 instructions par seconde soit l’équivalent d’un livre moyen. - un modem rapide fonctionnant en norme V34 (28800 bps) peut transférer 3800 caractères par seconde. - une imprimante laser moyenne édite environ 5 pages par minute.

Pour éviter de faire attendre le processeur pendant qu’une opération d’entrée-sortie se déroule, ce qui revient à bloquer le processeur, le système d’exploitation se décharge de l’opération en la confiant au BIOS qui utilise un processeur spécialisé. Ainsi, le processeur central peut continuer à travailler pendant que l’opération d’E/S se déroule. Une fois cette dernière terminée, le BIOS avertira le système d’exploitation que l’opération est achevée. Le BIOS a donc pour rôle de conduire les opérations d’E/S standards. Rappel : Ce n’est pas le système d’exploitation qui donne les ordres aux périphériques, mais le BIOS ou un complément du BIOS. Entre le Système d’exploitation et le périphérique se logent deux interfaces dont le rôle est d’assurer l’indépendance entre le matériel et le logiciel : une interface logicielle et une interface matérielle. Cette indépendance libère le programmeur des questions «bassement matérielles» : son application tournera aussi bien sur un disque dur 80Mo que sur un disque de 1Go, s’affichera toujours de façon identique quel que soit l’écran...

page 70

Page 71: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

23.1.2 LES PROBLEMES DE SYNCHRONISME

Si l’on veut interrompre un ordinateur pendant un traitement quelconque, il faut le lui faire savoir. En règle générale, cela se fait par l’intermédiaire du clavier, encore faut-il qu’il existe un système de détection car, sans ce système, l’unité centrale n’a aucun moyen de savoir quand une touche est frappée. Il en va de même pour un jeu qui se déroule lorsque l’on actionne la souris ou la manette de jeu.

23.2 NOTION D’INTERFACE

Chaque périphérique, quel qu’il soit, est connecté à l’ordinateur par l’intermédiaire d’une carte interface. Cette carte électronique est chargée de transformer les signaux électriques provenant du périphérique en signaux électriques compréhensibles par l’unité centrale et inversement. Cette carte prend le nom de contrôleur (ou coupleur), elle est complétée par une partie logicielle que l’on nomme pilote (ou driver ou handler).

LES PILOTES DE PERIPHERIQUESLES PILOTES DE PERIPHERIQUES

Nouveau périphériqueNouveau périphérique

Carte Carte interfaceinterface

Pilote de périphériquePilote de périphérique

ProgrammeProgramme

DRIVERDRIVER

ContrôleurContrôleur

UnitéUnitéd'échanged'échange

23.2.1 INTERFACE MATERIELLE : LE CONTROLEUR DE PERIPHERIQUE

Le contrôleur de périphérique est un circuit de commande associé au matériel. Quelle que soit l’architecture du matériel périphérique, le contrôleur devra dialoguer avec l’unité centrale selon des normes. Le contrôleur est situé soit sur le périphérique, soit dans l’unité centrale sous forme d’une carte ou d’un composant sur la carte mère. La carte contrôleur peut aussi être rajoutée sur la carte mère : carte son, carte graphique... Exemple :Le contrôleur d’écran. Le contrôleur d’écran lit dans la mémoire les caractères à afficher et génère des signaux pour moduler le faisceau d’électrons qui dessine les caractères à l’écran. Sans ce contrôleur, le programmeur d’un système d’exploitation aurait à programmer directement le balayage du tube cathodique alors qu’il suffit au système d’exploitation d’initialiser le contrôleur avec quelques paramètres, comme le nombre de caractères par ligne et le nombre de lignes par écran pour qu’il se charge de diriger le faisceau. Le contrôleur communique avec le système d’exploitation par l’intermédiaire de quelques registres. Le système d’exploitation effectue des E/S en écrivant des commandes dans les registres des contrôleurs. Le contrôleur disque de l’IBM P.C., par exemple, accepte 15 commandes différentes comme READ, WRITE, FORMAT.... Dès qu’une commande est acceptée, le processeur peut effectuer un autre travail, le contrôleur s’acquittant seul de la commande. Chaque unité périphérique possède donc un processeur spécialisé.

page 71

Page 72: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

23.2.2 INTERFACE LOGICIELLE : LE PILOTE DE PERIPHERIQUE

23.2.2.1 PRINCIPE

Chaque périphérique obéit aux ordres fournis par un contrôleur. Puisque chaque fabricant crée son propre contrôleur, il est bien évident qu’il n’est pas possible au système d’exploitation, ni même au BIOS, de fournir les commandes à tous les contrôleurs de périphériques. Nous avons vu que chaque contrôleur possède des registres de commande. Le pilote (driver) est le logiciel qui connaît l’emplacement des registres du contrôleur et leur utilisation. Le driver, comme le BIOS, permet le pilotage des périphériques : le driver est plus complexe mais spécialisé dans le pilotage d’un seul type de périphérique. Le BIOS est un ensemble de fonctions élémentaires de pilotage standard. Le driver comporte des fonctions élaborées pouvant ou non utiliser certaines fonctions élémentaires BIOS. Les fonctions des drivers sont appelées routines. Chaque driver est fourni par le constructeur du périphérique sur une disquette. Pour pouvoir utiliser ce périphérique, il faut au préalable installer le driver et le faire reconnaître du système d’exploitation (sous MS-DOS, il suffit de rajouter une ligne dans le fichier CONFIG.SYS ou AUTOEXEC.BAT. Avec UNIX, la procédure est plus complexe car il faut incorporer le driver au noyau). Sous DOS, le fichier IO.SYS contient des drivers standards qui accèdent aux fonctions BIOS pour piloter les périphériques standards, par exemple le pilotage d’une imprimante en mode texte. Les drivers additionnels sont chargés en mémoire au démarrage de la machine et y demeurent pour être accessibles immédiatement en cas de besoin.

23.2.2.2 FONCTIONNEMENT

Lorsqu’un programme demande une entrée-sortie, une routine du sous-système d'entrées-sorties dirige la requête vers le driver après avoir interrogé certains registres de la machine afin de connaître l’adresse du driver demandé. Le driver traduit alors la requête d’entrée-sortie en termes concrets (actions physiques / actions électriques). Un driver disque doit, par exemple, déterminer où se trouve le bloc de données requis, vérifier si le moteur du disque tourne, si le bras est bien positionné, ... En bref, il doit déterminer les opérations que le contrôleur doit exécuter ainsi que l’ordre dans lequel il faut les exécuter. Les programmes exécutent leurs entrées-sorties en indiquant au système un nom logique (A:, pour une disquette, C: pour un disque dur, ...), et le système maintient une table de correspondance entre les noms logiques et les drivers associés. Ceci assure une certaine indépendance entre le logiciel et le matériel puisque le dialogue est uniformisé du côté système d'exploitation. Le driver dialogue avec le matériel directement ou par l’intermédiaire du BIOS (pour communiquer avec des périphériques standards). Le driver permet au système d’exploitation de piloter un périphérique en mode évolué (écran en mode XGA, imprimante en mode graphique) ou de piloter un périphérique additionnel (carte son, modem, ...) non prévu dans le BIOS. En somme, le système sous-traite le pilotage du périphérique au driver. Nous considérerons que le BIOS et le driver constituent l’interface d’Entrée/Sortie.

page 72

Page 73: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

Mémoire centraleMémoire centrale CHAINE ILLUSTRANT CHAINE ILLUSTRANT L'ENVOI D'UN ORDRE L'ENVOI D'UN ORDRE À UN PERIPHERIQUEÀ UN PERIPHERIQUE

SystèmeSystèmed'Exploitationd'Exploitation

DeviceDevicedriverdriver BIOSBIOS ContrôleurContrôleur

dedepériphériquepériphérique

ApplicationApplication

PériphériquePériphérique

23.2.3 PRISE EN CHARGE PAR LE SYSTEME

Le système d’exploitation gère les E/S grâce à son sous-système de gestion des E/S qui doit lui permettre d'assumer les tâches suivantes : assurer une réponse rapide aux entrées-sorties, assurer l'indépendance logiciel-matériel via le BIOS ou directement par le driver spécifique.

le driver peut faire appel à des fonctions BIOSpour piloter des périphériques standard en mode évolué.

BIOS

CONTROLEURCONTROLEUR

PERIPHERIQUEPERIPHERIQUEStandardStandard

(clavier, HD, ...)(clavier, HD, ...)

DRIVERS

CONTROLEURCONTROLEUR

PERIPHERIQUEPERIPHERIQUE

S.E.S.E.Sous-systèmeSous-système

d'E/Sd'E/S(dont drivers(dont drivers

standard)standard)

Le Système d’exploitation et l’interface des E/S communiquent par interruptions.

23.3 LES DIFFERENTS TYPES DE LIAISONS Il existe essentiellement deux types de liaison entre l’ordinateur (le coupleur) et le périphérique. Elles dépendent du type de périphérique utilisé. Ces deux types de connexion sont la connexion série et la connexion parallèle.

page 73

Page 74: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

23.3.1 LA CONNEXION SERIE

La connexion série réalise l’interconnexion avec les unités périphériques de type série. Dans ces unités, les bits constituant la donnée sont émis les uns après les autres sur un seul fil de façon séquentielle dans le temps. Un des problèmes les plus difficiles à régler, dans ce cas, réside dans la synchronisation entre émetteur et récepteur. Ont été ainsi définis des protocoles qui répondent chacun à des besoins ou des impératifs particuliers :

- transmission série asynchrone, - transmission série synchrone, - transmission série semi-synchrone.

23.3.2 LA CONNEXION PARALLELE

La connexion parallèle réalise l’interconnexion avec les unités périphériques qui émettent et reçoivent les données en parallèle. Dans ces unités, les bits constituant la donnée sont émis simultanément, un fil étant utilisé pour chaque bit. Le bus de connexion comporte donc autant de fils qu’il y a de bits dans la donnée. Ces circuits parallèles sont utilisés pour des transferts de données qui doivent être rapides, par exemple, entre la mémoire de masse et les imprimantes rapides.

24. COMPLEMENT SUR LES ENTREES-SORTIES

24.1 SIMULTANEITE ENTRE TRAITEMENT ET ENTREES-SORTIES Le problème le plus important à résoudre consiste à adapter des vitesses différentes entre les deux extrémités d’un processus d’entrée-sortie. En outre, le plus précieux lors d’un traitement quelconque est le temps processeur. On a donc cherché des méthodes permettant au processeur de faire autre chose pendant une entrée-sortie. Fondamentalement, il existe deux techniques (avec variantes) différentes : - le mode par test d’état (polling) :

on inclue (le système en est chargé) dans les programmes, avec une périodicité correcte, des points de test permettant de savoir si l’unité périphérique est prête à réaliser l’opération souhaitée. Cette technique est très lourde et sert surtout dans les cas de périphériques partagés, de réseaux, ...

- la méthode par interruption de programme : au lieu de truffer les programmes de tests d’état des périphériques, on utilise la technique des interruptions (voir plus loin). L’unité centrale est ainsi déchargée de la surveillance périodique et coûteuse en temps des périphériques, ces derniers prévenant l’unité centrale quand ils sont disponibles. Toutefois, même si le gain est appréciable, pendant le transfert d’un bloc d’information, le processeur sera totalement occupé et donc indisponible pour les déroulements de programmes.

24.2 L’ACCES DIRECT A LA MEMOIRE (DMA) Dans les modes précédents, dès lors que le processus d’entrée-sortie est lancé, le processeur est occupé à faire des accès mémoire en lecture ou en écriture selon qu’il s’agit d’une entrée ou d’une sortie. De plus, si l’on veut transférer un seul mot, il sera nécessaire d’effectuer une opération de transfert complète qui prendra une vingtaine de cycles d’horloge pour si peu de transfert. L’idée de base consiste donc à éviter le passage des données à transférer par l’unité centrale afin de la libérer. On a donc créé des unités spécialisées, Unités d’Accès Automatique à la Mémoire (DMA : direct memory acces) susceptibles de prendre complètement en charge le transfert de tout bloc d’information tout en permettant au processeur de faire autre chose.

page 74

Page 75: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

Dans ce cas, on va le voir, la simultanéité entre programme et entrée-sortie est presque totale d’où un gain de temps très appréciable. Le déroulement d’une opération d’entrée-sortie s’effectue de la façon suivante :

1 - Initialisation de l’opération par le programme. Il s’agit de fournir au processeur d’entrée-sortie les données concernant l’organisation de l’opération : nombre de données à transférer, adresse de la première, sens du transfert, vitesse de transfert, taille du tampon (buffer) intermédiaire, adresse du périphérique ... 2 - Transfert proprement dit au rythme du périphérique sous le contrôle de l’unité d’échange en utilisant différentes techniques selon le choix, l’urgence ou tout autre impératif :

transfert par bloc : les transferts se font par blocs avant de rendre la main à l’unité centrale qui peut alors continuer le transfert pour un autre bloc ou donner la main à un autre programme plus urgent et continuer le transfert ultérieurement. transfert par vol de cycle : après les paramètres d’initialisation, les transferts se font par caractère quand le processeur est libre (on se souvient que, lors du déroulement d’une instruction, le processeur et la mémoire centrale ne sont pas actifs en même temps), on dit que l’on vole un cycle processeur. Lorsque les transferts ne sont pas urgents, il y a adaptation au système.

3 - Interruption de fin d’opération vers le processeur. Ce système a ensuite été amélioré par l’enchaînement automatique des travaux. Précédemment, l’unité centrale devait initialiser chaque transfert en chargeant les informations nécessaires dans les registres de l’unité d’échange. Afin de soulager l’unité centrale, on a conçu l’unité d’échange comme une unité ayant ses propres capacités d’initialisation. Ainsi, pour tout transfert, l’unité centrale créera en mémoire un programme canal qui définit de manière exhaustive tous les transferts successifs qui seront à réaliser. Ce programme canal permet d’enchaîner les transferts sans intervention de l’unité centrale.

24.3 LES CANAUX D’ENTREES-SORTIES Dans les gros ordinateurs (et les petits suivent désormais le même principe), la taille du système et le prix de l’unité centrale justifient le fait que tous les efforts portent sur l’optimisation du temps d’utilisation du processeur. La perte de temps liée aux entrées-sorties contrôlées par programme rend cette approche très difficile. En outre, l’efficacité du système DMA pousse les utilisateurs à faire toutes les entrées-sorties avec ce mode pour libérer un maximum de temps CPU. Mais un contrôleur DMA reste coûteux et complexe. Le contrôleur DMA va donc être partagé entre plusieurs interfaces. C’est le concept de canal d’entrées-sorties. Ce canal comporte un processeur spécialisé qui fonctionne comme un DMA mais qui présente la particularité d’être partagé entre plusieurs interfaces. Toutefois, comme les canaux travaillent en parallèle avec le processeur central, il y à concurrence pour accéder à la mémoire centrale, les canaux devant lire et écrire dans la même mémoire que celle utilisée par l’unité centrale pour l’exécution du programme en cours. Les canaux doivent donc, comme vu précédemment, pouvoir voler des cycles d’accès mémoire au processeur central. Une des améliorations sensibles apportées à ces canaux consiste à installer une mémoire tampon sur la carte d’interface. La carte peut être connectée à des périphériques très lents, elle sera donc utilisée comme tampon de stockage. un exemple : la carte contrôleur SCSI (Small Computer System Interface) Un contrôleur SCSI permet d’améliorer sensiblement les performances d’un ordinateur mais il donne surtout accès à de nombreuses possibilités d’extension. En effet, une machine équipée d’un contrôleur SCSI peut recevoir jusqu’à sept unités de périphériques sans adjonction de carte contrôleur supplémentaire. Le contrôleur SCSI offre, en outre, de meilleures performances en matière de taux de transfert et de rapidité d’accès aux périphériques connectés. Un contrôleur de ce type est une carte d’extension prenant place dans les connecteurs standards de la machine.

page 75

Page 76: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

On trouve des cartes de ce type pour chacun des standards de bus interne : ISA, EISA, VLB, PCI, ... Le contrôleur SCSI fait office de passerelle entre les bus internes de la machine et le bus SCSI de la carte.

25. LES INTERRUPTIONS

25.1 POURQUOI DES INTERRUPTIONS ? Lorsqu'une machine est en marche, l'unité centrale va, par définition, toujours exécuter les instructions du programme en cours. Il faut cependant que le système d’exploitation prenne en compte les événements extérieurs à la séquence d'instructions qu'il déroule (appui sur une touche du clavier, une imprimante vient de finir sa page, problèmes matériels...). Il faut donc utiliser un mécanisme qui permette à l’interface de prévenir le système de l’arrivée de tels événements.

Le système d’exploitation et l’interface des entrées-sorties communiquent par le mécanisme des interruptions (rupture de séquence).

Les interruptions permettent de prendre en compte des événements relatifs à des entrées-sorties.

A chacun de ces événements correspond un certain travail à exécuter, sans délais ou dans un délai fixé, par l’unité centrale. Ce travail est codé sous la forme de routines systèmes ou de programmes. Mais, pour exécuter ce nouveau travail, il faut qu'il y ait interruption du travail en cours, il faut qu’il y ait une rupture dans la séquence des instructions en cours d’exécution. De plus, une fois ce nouveau travail exécuté, l'unité centrale doit reprendre l'exécution de la séquence interrompue à l'endroit exact où elle l’a abandonné.

25.2 MECANISME D’INTERRUPTION Le processeur possède une (des) broche(s) physique(s) grâce à laquelle (auxquelles) les événements extérieurs peuvent être pris en compte. Une tension significative sur la broche d’interruption est une demande d’interruption. Le processeur va réagir à cette demande en activant le programme (routine) correspondant. L’interruption est appelée IRQ (Motorola) ou INT (Intel). C’est le contrôleur du périphérique qui envoie le signal sur la broche du processeur sur le bus qui relie ces deux éléments. Lorsqu’une interruption est prise en compte par le processeur, les interruptions de même priorité ou de priorité inférieure à venir sont ignorées jusqu’à la fin du traitement de l’interruption en cours. Une routine d’interruption ne pourra être interrompue que par une interruption de priorité supérieure. Certains sous-programmes ne doivent pas être interrompus (par exemple l’écriture d’un secteur sur disque) sous peine de graves dysfonctionnements, ils porteront donc une priorité très forte. Afin de prendre en compte une interruption, il faut évidemment que le processeur réagisse au changement d’état de la broche d’interruption.

25.3 DEROULEMENT D’UNE INTERRUPTION Lorsqu’une interruption est émise, le processeur termine l’exécution de la dernière instruction en cours. Il sauvegarde ensuite son contexte (contenu de ses registres), puis il exécute la routine correspondant à l’interruption reçue. Pour trouver la bonne routine (en ROM ou en RAM), il fait appel à la table des interruptions (en RAM) qui contient l’adresse de la routine pour chacune des interruptions. Une fois l’exécution de cette routine terminée, il restaure son contexte et reprend son fonctionnement normal en reprenant le processus initial là où il avait été interrompu. Définition : on appelle contexte d’un programme ou vecteur d’état l’ensemble des données système indispensables à la reprise d’un programme interrompu :

page 76

Page 77: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

- le contenu du compteur ordinal permettant de reprendre le séquencement des instructions du

programme, - le contenu de la pile où se trouvent toutes les valeurs des différentes variables du programme, - le contenu des divers registres particuliers : acccumulateurs, index, ...

La sauvegarde du contexte est faite en général par logiciel, toutes les données sont rangées dans des zones spéciales. Les routines d’interruption varient selon le type d’interruption. Des mécanismes permettent au processeur de se brancher sur la bonne routine. Le sous-système de gestion des entrées-sorties met à jour la table des interruptions en fonction de la configuration de la machine. un exemple : frappe de la touche ‘A’ sur le clavier cheminement : touche connecteur clavier broche du microprocesseur.

1 - le processeur prend connaissance du type d’interruption : elle peut être prise en compte (si elle ne l’est pas, le processeur reprend son travail : tout dépend de la priorité de l’interruption par rapport au travail en cours).

2 - le processeur sauvegarde le contexte 3 - lecture de la table des interruptions : chargement de l’adresse de la routine de gestion du

clavier. 4 - début de la routine : récupérer le code géographique de la touche dans le clavier, calculer le

caractère correspondant, mettre le caractère dans le buffer, avertir le processeur que l’opération est terminée, fin de la routine.

5 - restauration du contexte. 6 - reprise du programme principal. Ici, la routine est une suite de fonctions élémentaires (en

italiques ci-dessus) du BIOS (pilotage du clavier). D’une manière générale, le mécanisme d’interruption se présente comme suit :

-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

DEROULEMENT D'UNE INTERRUPTIONDEROULEMENT D'UNE INTERRUPTIONPROGRAMME (applicatif)PROGRAMME (applicatif) SOUSSOUS--SYSTEME DES E/SSYSTEME DES E/S ROUTINE (driver)ROUTINE (driver)

INTINT

1. Fin de l’instruction en cours 1. Fin de l’instruction en cours

2. Sauvegarde du contexte2. Sauvegarde du contexte

3. Recherche dans la table3. Recherche dans la tablede l'adresse de la routinede l'adresse de la routine

5. Restauration du contexte5. Restauration du contexte

6.Reprise du programme6.Reprise du programme

4.Exécution de4.Exécution dela routinela routine

------------------------------------------------------------------

page 77

Page 78: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

La routine donne les ordres au périphérique et redonne la main au programme principal. On n’attend pas que le périphérique ait fini son travail pour reprendre le travail du processeur central : le processeur spécialisé du périphérique travaille en même temps que l’unité centrale. Lorsqu’il a terminé, le périphérique provoque une nouvelle interruption pour que le processeur central en tienne compte.

25.4 CLASSIFICATION DES INTERRUPTIONS On classe généralement les interruptions en deux grandes catégories : les interruptions externes et les interruptions internes.

25.4.1 LES INTERRUPTIONS EXTERNES

Les interruptions externes sont dues aux périphériques ou à des événements extérieurs au système informatique. Pour signaler à l'unité centrale qu'ils sont prêts, les périphériques émettent un signal matériel (changement d'état logique) qui déclenche directement l'exécution de la routine d'interruption. Exemple : mise en service d'un périphérique, fin de lecture ou d'écriture d'une piste, touche appuyée au clavier, incident matériel, etc. Ce sont des signaux matériels qui parviennent sur les broches du processeur. Ce dernier positionne alors à 1 un ou plusieurs bits internes dont l'un est scruté à la fin de l'exécution de chaque instruction. L'unité centrale termine donc l'instruction en cours avant de traiter l'interruption.

25.4.2 LES INTERRUPTIONS INTERNES

Les interruptions internes peuvent être de plusieurs sortes : interruptions d’horloge, interruptions dues à des erreurs système, ... - Les interruptions d'horloge (par convention) permettent la gestion du temps par le système d'exploitation : toutes les N milli-secondes, l'interruption d’horloge fait appel à l'ordonnanceur qui commute les tâches ; elle sert aussi à régler certains événements propres au système. - Les interruptions dues à des erreurs système : dépassement de capacité d’un registre ou d’une zone, violation d'accès mémoire, exécution d'une instruction illégale, ... Si ces interruptions interviennent pour empêcher une instruction erronée de s'exécuter complètement, alors elles sont traitées pendant l'instruction en cours. Elles déclenchent ce que l'on appelle une séquence de TRAP (séquence d'interruption qui ne met pas à jour le compteur ordinal).

25.4.3 LES INTERRUPTIONS LOGICIELLES

Cette appellation est abusive. Elle signifie simplement qu’il existe une instruction ayant les mêmes effets qu’une interruption matérielle. La seule différence est qu’il n’y a pas de signal d’interruption sur aucune broche (système réservé aux périphériques). Grâce aux interruptions logicielles, le programme peut faire appel au système d’exploitation pour réaliser des entrées-sorties (écriture sur disque, prise en compte d’une donnée entrée au clavier par l’utilisateur...). Le système d’exploitation fera alors appel aux routines qui correspondent. Pour assurer la sûreté de fonctionnement d'un système d'exploitation, l'unité centrale doit pouvoir gérer deux modes : le mode système (ou mode superviseur ou mode maître) et le mode utilisateur (ou mode esclave). Comme le système d'exploitation prend en charge les entrées-sorties, les programmes utilisateurs ne doivent pas pouvoir effectuer directement de transfert physique. Il existe donc des instructions, appelées instructions privilégiées, qu'il est impossible d'exécuter en mode utilisateur (celui dans lequel se déroulent les programmes utilisateurs), de même qu'il peut exister des zones mémoires interdites (registres périphériques par exemple). Par contre, le système d'exploitation, auquel tout est permis, fonctionne

page 78

Page 79: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

entièrement en mode système. C'est donc par ce moyen que s'effectue le dialogue entre le programme utilisateur et le système d'exploitation. Une interruption logicielle est, en fait, un appel au système par l'intermédiaire d'une instruction machine spéciale (TRAP sur famille 68000, INT sur 8086) qui simule directement une interruption (en général moins prioritaire que les interruptions matérielles), et qui passe donc directement en mode système. Ceci s'effectue après passage de paramètres par le programme souhaitant faire appel au système. On passe donc du mode utilisateur au mode système par l'intermédiaire des interruptions en réalisant des appels système.

25.5 EXEMPLES

25.5.1 PRINCIPE GENERAL

Le programme demande l'exécution d'une E/S par une interruption logicielle. Un appel à une primitive système d’E/S est alors déclenché. Cette primitive vérifie les paramètres de l’E/S et transmet l'appel au driver correspondant. Le driver envoie le premier message pour démarrer l'E/S ; le périphérique signale par une interruption matérielle qu'il est prêt à recevoir le message suivant, la routine driver signale que l'opération d'E/S est terminée et le contrôle est rendu à la primitive (première restauration du contexte) puis au programme appelant (deuxième restauration du contexte). Une interruption logicielle appelle à son tour une interruption matérielle.

25.5.2 LE CLAVIER SOUS MS/DOS

L'appui sur une touche de clavier déclenche une interruption matérielle qui appelle une routine (driver clavier). Comme vu précédemment, cette routine calcule le code ASCII et stocke les informations dans le buffer clavier. Le système ou l'utilisateur peut alors aller lire le buffer clavier par l'intermédiaire d'une interruption logicielle. Il faut aussi remarquer que le relâché de la touche, déclenche, au même titre que l’appui, une procédure similaire avec un code géographique différent. Ceci est indispensable pour que le système puisse prendre en compte le relâché de certaines touches comme SHIFT par exemple, qui peuvent rester appuyées pendant que l’utilisateur frappe d’autres touches.

25.6 LA PRIORITE DES INTERRUPTIONS

page 79

Les interruptions n’ont pas toutes la même importance. Pour traduire ce fait, on leur attribue un niveau de priorité, elles sont hiérarchisées. Un programme ou une routine d’interruption ne pourra être interrompu que par une interruption de niveau supérieur. A chaque niveau d’interruption sera associée une zone de sauvegarde pour les contextes correspondants. Cas des cascades d’interruptions :

-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

PROGRAMMEPROGRAMME INTERRUPTION N° 1INTERRUPTION N° 1

------------------------------------------------------------------- -------- ---- --- ---- --- -- ----- --------- ---- --- ----- ---- ------ ----- ---

INTERRUPTION N° 2INTERRUPTION N° 2

------------------------------------------------------------------- ----- ----- ---------- --------

INT 2INT 2INT 1INT 1

Page 80: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

L’interruption n°1 ne peut interrompre l’interruption n°2 que si sont niveau de priorité est supérieur. On comprend bien ici qu’il faudra une (et une seule) zone de sauvegarde par niveau d’interruption.

25.7 EXEMPLE : LES INTERRUPTIONS SOUS MS-DOS (CAS DU P.C. AT)

Comme précédemment, on distingue des interruptions logicielles et des interruptions matérielles.

25.7.1 LES INTERRUPTIONS LOGICIELLES

Les interruptions logicielles sont déclenchées par un programme se déroulant pour exécuter une fonction particulière du DOS ou du BIOS. Pour déclencher cette fonction, il n’est pas nécessaire de connaître l’adresse de la routine correspondante, il suffit de connaître le n° de l’interruption souhaitée. Ces numéros sont standardisés.

25.7.2 LES INTERRUPTIONS MATERIELLES

page 80

A l’inverse des précédentes, ce n’est pas le programme qui les déclenche mais les périphériques : clavier, imprimante, lecteur de disquette, lecteur de disque, ... Tous les périphériques sont connectés à un contrôleur d’interruptions qui comporte entre autre un processeur spécialisé de type 8259. Le P.C. de type AT possèdent 2 processeurs 8259 mis en cascade ce qui leur permet de gérer 15 interruptions (le P.C. de type XT possédaient un seul 8259 et géraient 8 interruptions). Ceci est illustré par le schéma ci-dessous :

1er étage1er étage(8259)(8259)

INT 0INT 1

INT 3INT 4INT 5INT 6INT 7

INT 8INT 9

INT 10INT 11INT 12INT 13INT 14INT 15

2ème étage2ème étage(8259)(8259)

MicroprocesseurMicroprocesseur

BusBus

Dans ce cas, les correspondances d’interruption sont les suivantes (de la plus prioritaire à la moins prioritaire) :

Page 81: Généralités sur les systèmes d’exploitation (chapitre …gdedel95.free.fr/EPMI/Ressources Technum/sys_exploi_%20chap1_7.pdf · CHAPITRE 6 - LE SYSTEME D'EXPLOITATION ... - au

N° d’interruption N° d’INT dans le 8259

Fonction

0 0 / 1 Timer 1 1 / 1 Clavier 2 2 / 1 Cascade 2ème 8259 8 0 / 2 Horloge temps réel 9 1 / 2 Réseau / disponible

10 2 / 2 Disponible 11 3 / 2 SCSI / disponible 12 4 / 2 Port souris sur carte mère 13 5 / 2 coprocesseur mathématique 14 6 / 2 IDE primaire / disque dur 15 7 / 2 IDE secondaire / disponible 3 3 / 1 2ème port série (COM2) 4 4 / 1 1er port série (COM1) 5 5 / 1 2ème port parallèle (LPTR2) 6 6 / 1 lecteur de disquette 7 7 / 1 1er port parallèle (LPTR1)

Les entrées non utilisées sont disponibles pour les cartes d’extension (SCSI, lecteur CD, streamer, ....).

25.7.3 STRUCTURE DE LA TABLE DES VECTEURS

On parle de table des vecteurs d’interruption car il en existe 256. Les interruptions logicielles et matérielles sont mises sur le même plan, seule l’origine de l’appel les distingue. Chaque élément (entrée) de la table occupe deux mots successifs, la table s’étend donc sur 1024 octets (un mot = 2 octets ; une entrée = 4 octets ; table = 256 x 4 = 1024 octets). Pour chaque interruption, le premier mot représente l’adresse du début de la routine, le deuxième mot représente son offset (longueur). Il est important de noter que cette table est chargée en totalité en mémoire centrale au démarrage du système et qu’elle peut donc être modifiée par n’importe quel programme. Ceci peut s’avérer très dangereux pour l’utilisateur non averti mais très intéressant pour les autres. A titre indicatif, de nombreux virus fonctionnent par détournement d’interruption. Exemple de distribution des interruptions sur un i486 :

page 81