Documente Academic
Documente Profesional
Documente Cultură
1. Introduction
ARCHITECTURE DES
SYSTMES INFORMATIQUES
1.1 Informatique / ASI ?
Michel MEYNARD
Une dfinition de l'informatique :
science et techniques du traitement de
linformation
3 Parties :
Architecture ; - discipline scientifique :
Assembleur ; - fortement lie au mathmatiques
Systmes dexploitation. historiquement et conceptuellement ;
- thorie des graphes, modlisation, maths discrtes,
algorithmique, calculabilit, complexit ;
Architecture :
analyse de la structure des ordinateurs et du - discipline technologique :
logiciel de base. - matriel : fortement lie llectronique,
architecture des ordinateurs, volution des
Assembleur : composants (SSI VLSI), multiprocesseurs ;
tude prcise d'un langage d'assemblage : - logiciel : art de la programmation, ateliers de
instructions, structures de contrle et de donnes. gnie logiciel, programmation oriente objet,
parallle, systmes dexploitation.
Systmes dexploitation :
systmes de fichiers et gestion des processus. Objectif du cours :
acqurir une vision cohrente de larchitecture
matrielle et logicielle des machines
informatiques traitant et stockant linformation.
Vocabulaire : niveau ou langage ou machine Toute opration effectue par logiciel peut l'tre
directement par matriel et toute instruction
- 0 portes logiques, circuits combinatoires, mmoire ; excute par matriel peut tre simule par
- 1 une instruction machine (code binaire) interprte par son logiciel.
microprogramme ;
- 2 suite d'instructions machines du jeu d'instructions
- 3 niveau 2 + ensemble des services offerts par le S.E. (appels
systmes) ; Le choix est facteur du cot de ralisation, de la
- 4 langage dassemblage symbolique traduit en 3 par le
programme assembleur ;
vitesse d'excution, de la fiabilit requise, de
- 5 langages volus (de haut niveau) traduits en 3 par l'volution prvue (maintenance), du dlai de
compilateurs ou alors interprts par des programmes de ralisation du matriel
niveau 3.
On regroupe ces bits par paquets de n qu'on 1 Tra-octet = 240 octets 1012 octets not 1 To
appelle des quartets (n=4), des octets (n=8)
byte , ou plus gnralement des mots de n bits
word .
2.2.3 Oprations
2.3 Reprsentation des entiers relatifs
Les oprations arithmtiques +, -, /, * et de
comparaison < , >, = sur les nombres binaires Quatre faons d'utiliser les nombres ngatifs en
reprsentables sur machine sont des machine ont t employes. Actuellement et en
prolongements des oprations usuelles sur N ou pratique, la mthode du "complment 2" est la
sur Z. Cependant, des dpassements de capacit plus utilise.
surviennent sur les intervalles considrs
2.3.1 La valeur absolue signe
Addition binaire sur n bits
L'addition binaire de 2 mots de n bits est ralise
Dans cette reprsentation, le bit de poids n-1
en ajoutant successivement de droite gauche les
indique le signe (0 positif, 1 ngatif) tandis
bits de mme poids des deux mots ainsi que la
que les bits n-2 ... 0 reprsentent la valeur absolue
retenue ventuelle de l'addition prcdente. En
de l'entier ngatif dans la Reprsentation Binaire
binaire non sign, la dernire retenue ou report
Non Signe (RBNS).
(carry), reprsente le coefficient de poids 2n et est
donc synonyme de dpassement de capacit. Cet
Intervalle de dfinition : [-2n-1+1, 2n-1-1]
indicateur de Carry est situ dans le registre
d'tat du processeur.
Exemples sur un octet :
exemple sur 8 bits : 3 0000 0011 -3 1000 0011
1 1 1 1 1
127 0111 1111 -127 1111 1111
1 1 1 0 0 1 0 1 0 E5H
0 0000 0000 -0 1000 0000
+ 1 0 0 0 1 0 1 1 + 8BH
---------------------------------- ---------
Inconvnients :
(1) 0 1 1 1 0 0 0 0 170H 36810 > 255
- 2 reprsentations distinctes de 0
Pour les autres oprations, on va tout d'abord - oprations arithmtiques peu aises :
dfinir une reprsentation des entiers ngatifs. 3 + -3 = -6 !
En normalis :
Norme IEEE-754 flottants en simple prcision
Plus grande valeur absolue reprsentable
signe : 1 bit (0 : +, 1 : -)
MAX = 2127 * (2-2-23) 3.4 1038
exposant : 8 bits en excdent 127 [-127, 128]
PAS = 2127 * 2-23 2.03 1031
mantisse : 23 bits en RBNS ; normalis sans
soit 7 chiffres significatifs
reprsentation du 1 de gauche ! La mantisse est
arrondie !
Plus petite valeur absolue reprsentable (sauf 0)
soit 4 octets ordonns : signe, exposant, mantisse.
MIN = 2-126 * (1) 1.18 10-38
PAS = 2-126 * 2-23 1.4 10-45
Valeur dun float : (-1)s * 2(e-127) * 1,m
soit 7 chiffres significatifs
Remarques :
2.5 Reprsentation des caractres
Il existe, entre deux nombres reprsentables, un
intervalle de rels non exprimables. La taille de
Symboles
ces intervalles (pas) crot avec la valeur absolue :
alphabtiques,
numriques,
proche et 0 : 2-149=1.4 10-45
de ponctuation et autres (semi-graphiques, ctrl)
proche de : 2124=2.03 1031
Utilisation
Cependant, si l'on exprime la distance entre un entres/sorties
nombre et son "successeur" en pourcentage de ce reprsentation externe (humaine) des
nombre, ce pourcentage reste constant : programmes (sources) et donnes y compris les
donnes numriques
2-149/2-126 = 2-23 1,19 10-7 2104/2127 = 2-23
Cette mthode simple permet uniquement de Propos par R. Hamming (1952), ce code
dtecter une erreur dans un caractre. Elle autocorrecteur (dtection et localisation de
consiste rajouter un bit, dit de parit, au n bits l'unique erreur) consiste rajouter k bits de
du caractre transmettre. En parit paire, le parit chaque caractre cod sur n bits. Le
bit rajout au caractre est calcul de faon ce nouveau mot ainsi constitu de n+k bits contient
que le nombre total de bits 1 dans le caractre, y donc n bits d'information et k bits de contrle
compris le bit de parit, soit pair. En parit positionns l'intrieur du mot sur les indices
impaire, le nombre total de bits 1, y compris le correspondant des puissances de 2. Chaque bit
bit de parit, doit tre impair. On rajoute de parit bi contrle ainsi les bits d'information
gnralement le bit de parit sur le poids le plus dont les indices contiennent i en Binaire Non
fort du caractre (en ASCII sur b7). Sign.
Exemples :
Exemple : ASCII 7 bits + 4 bits de contrle
en ASCII, le "A" se code 100 0001 soit 41H
en parit paire, "A" devient : 0100 0001 soit 41H
b1 b2 b3 b4 b5 b6 b7 b8 b9 b10 b11
en parit impaire, "A" devient : 1100 0001 = 0C1H
1 0 0 1 1 0 0 0 0 0 0
en ASCII, le "z" se code 111 1010 soit 7AH
en parit paire, "z" devient : 1111 1010 soit 0FAH Ci-dessus le code de l'espace (20H) avec un code de
en parit impaire, "z" devient : 0111 1010 = 7AH Hamming en parit paire :
b1 contrle b1, b3, b5, b7, b9, b11 : 1+0+1+0+0+0=2
Remarquons que l'altration d'un unique et b2 contrle b2, b3, b6, b7, b10, b11 : 0+0+0+0+0+0=0
quelconque bit durant la transmission est b4 contrle b4, b5, b6, b7 : 1+1+0+0=2
facilement dtecte l'arrive. Cependant, on ne b8 contrle b8, b9, b10, b11 : 0+0+0+0=0
peut pas dterminer sa position. De plus, si un
nombre pair de bits sont inverss, le contrle de Exemple du "b" (62H)
parit devient incohrent puisqu'il masque des b1 b2 b3 b4 b5 b6 b7 b8 b9 b10 b11
erreurs ! 1 1 0 0 0 1 0
0 0 1 1
Dtection et correction
L'avantage du code de Hamming provient du fait 2.5.2.3 Code de Huffman
que chaque bit d'information est contrl par au
moins deux bits de parit : b5 par b4 et b1, b11 par Le codage de Huffman (1952) est une technique de
b8, b2 et b1. Ainsi, lorsqu'un bit d'information est compression de donnes permettant de stocker
erron, plusieurs bits de parit deviennent un message (un fichier) ou de le transmettre grce
incohrent ! un minimum de bits afin d'amliorer les
performances. Ce codage taille variable
Exemple : "b" erron sur le bit 7 suppose l'indpendance des caractres du message
b1 b2 b3 b4 b5 b6 b7 b8 b9 b10 b11 et on doit connatre la distribution probabiliste de
0 0 1 1 1 0 1 1 0 1 0 ceux-ci une position quelconque dans ce
message. Plus la probabilit d'occurrence d'un
b1 : parit incorrecte : 0+1+1+1+0+0=3 impair caractre dans un fichier est grande, plus son code
b2 : parit incorrecte : 0+1+0+1+1+0=3 impair doit avoir une taille rduite.
b4 : parit incorrecte : 1+1+0+1=3 impair
b8 : parit correcte : 1+0+1+0=2 pair On code chaque caractre par un mot de longueur
variable de faon ce qu'aucun mot ne soit le
pi=bi est erron prfixe d'un autre. La proprit principale des
1=(p1 xor p3 xor p5 xor p7 xor p9 xor p11) and (p2 codes de Huffman consiste en ce que la longueur
xor p3 xor p6 xor p7 xor p10 xor p11) and (p4 xor p5 moyenne du codage d'un caractre dans un fichier
xor p6 xor p7) and not p8 and not p9 and not p10 soit minimale.
and not p11 p7=1
Pour calculer le code d'un alphabet et de sa
distribution, on construit un arbre binaire tiquet
Remarquons que le calcul du bit erron revient par des 0 et des 1, les feuilles de cet arbre
additionner tous les indices des bits de parit reprsentant les caractres tandis que les chemins
incorrects (ici 1+2+4=7) ! Ce code fonctionne issus de la racine constituent les codes
galement lorsque c'est un bit de contrle qui a t correspondants.
invers. Rappelons que le code de Hamming
repose sur l'hypothse fondamentale qu'un bit au
plus est corrompu pendant la transmission !
ASI Chapitre 2 : Reprsentation de linformation 36 ASI Chapitre 2 : Reprsentation de linformation 37
ASI Chapitre 3 : Structure des ordinateurs 42 ASI Chapitre 3 : Structure des ordinateurs 43
Lors du dmarrage de la machine, CO est Enfin sur certaines machines (8086) ne possdant
initialis soit l'adresse mmoire 0 soit l'adresse pas d'oprations en virgule flottante, des co-
correspondant la fin de la mmoire (2m-1). A processeurs arithmtiques (8087) peuvent tre
cette adresse, se trouve le moniteur en mmoire adjoint pour les raliser.
morte qui tente de charger l'amorce "boot-strap"
du systme d'exploitation. Les oprations arithmtiques et logiques
positionnent certains indicateurs d'tat du registre
Remarquons que cet algorithme peut parfaitement PSW. C'est en testant ces indicateurs que des
tre simul par un logiciel (interprteur). Ceci branchements conditionnels peuvent tre excuts
permet de tester des processeurs matriels avant vers certaines parties de programme.
mme qu'il en soit sorti un prototype, ou bien de
Pour acclrer les calculs, on a intrt utiliser
simuler une machine X sur une machine Y
les registres de travail comme paramtres,
(mulation).
notamment l'accumulateur (AX pour le 8086).
ASI Chapitre 3 : Structure des ordinateurs 44 ASI Chapitre 3 : Structure des ordinateurs 45
ASI Chapitre 3 : Structure des ordinateurs 46 ASI Chapitre 3 : Structure des ordinateurs 47
supports. Ces autres supports sont caractriss schma d'une bande magntique
par : bloc i bloc i+1
forte densit
parfois amovibilit bit de parit gap inter-bloc
Mean Time Between Failures plus important car
organes mcaniques stratgie de sauvegarde Disques magntiques
Ils constituent la majorit des mmoires secondaires. Durs ou
souples, fixes ou amovibles, solidaires (Winchester) ou non
Supports Optiques (dispack) de leurs ttes de lecture/criture, il en existe une trs
Historiquement, les cartes 80 colonnes ont t grande diversit. Les disques durs ont des capacits variant
parmi les premiers supports mais sont entre quelques dizaines quelques centaines de Mo, des vitesses
de transfert autour du Mo/s et des temps d'accs approchant les
compltement abandonnes aujourd'hui. Les
10 ms.
rubans perfors, utiliss dans les milieux schma d'un disque magntique
risque de champ magntique (Machines Outils face tte de lecture/criture trou d'index
Commande Numrique), sont leurs descendants 0
secteurs 0, 1, , 7
rotation rotation
ASI Chapitre 3 : Structure des ordinateurs 50 ASI Chapitre 3 : Structure des ordinateurs 51
Actuellement, lUC dlgue la gestion des E/S aux Le bus d'adresses est constitu d'un ensemble de
processeurs situs sur les cartes contrleur lignes unidirectionnelles sur lesquelles le
(disque, graphique, ) : processeur inscrit les bits formant l'adresse
1. lUC transmet la requte dun processus la dsire.
carte contrleur ;
2. lUC endort le processus courant et excute Le bus de contrle est constitu d'un ensemble
un processus prt ; de lignes permettant au processeur de signaler
3. le contrleur excute lE/S ; certains vnements et d'en recevoir d'autres. On
4. le contrleur prvient lUC de la fin de lE/S trouve frquemment des lignes reprsentant les
grce au mcanisme dinterruption ; signaux suivants :
5. lUC dsactive le processus en cours dexcution
puis rveille le processus endormi qui peut Vcc et GROUND : tensions de rfrence
continuer sexcuter. RESET : rinitialisation de l'UC
ASI Chapitre 3 : Structure des ordinateurs 54 ASI Chapitre 3 : Structure des ordinateurs 55
Afin dacclrer les changes, on peut augmenter Par exemple, Pentium 4 ayant un cache L2 de
le nombre des niveaux de mmoire en introduisant 256 Ko.
des CACHE ou antmmoire de Mmoire
Centrale et/ou Secondaire : Mmoire plus rapide
mais plus petite, contenant une copie de certaines - Cache Disque
donnes :
De quelques Mga-octets, ce cache ralis en
Fonctionnement : DRAM est gr par le processeur du contrleur
Le demandeur demande lire ou crire une disque. Il ne doit pas tre confondu avec les
information ; tampons systmes stocks en mmoire centrale
si le cache possde linformation, lopration est (100 Mo). Intrts de ce cache :
ralise, sinon, il rcupre linfo. depuis le
fournisseur puis ralise lop. - Lecture en avant (arrire) du cylindre ;
- Synchronisation avec linterface E/S (IDE, SATA,
Le principe de squentialit des instructions et )
des structures de donnes permet doptimiser le - Mise en attente des commandes (SCSI, SATA)
chargement du cache avec des segments de la
mmoire fournisseur. Stratgie de remplacement
est gnralement LRU (Moins Rcemment Utilise).
ASI Chapitre 3 : Structure des ordinateurs 56 ASI Chapitre 3 : Structure des ordinateurs 57
distributivits
x(y+z)=xy+xz avec la convention . prioritaire sur + Lorsque Ve est infrieur la valeur critique du
x+(yz)=(x+y)(x+z) transistor, celui-ci est bloqu et est quivalent
un interrupteur ouvert : Vs est donc proche de
lois de Morgan Vcc. Lorsque Ve est suprieur la tension critique,
( x + y) = x . y ( x. y) = x + y
le transistor bascule (la porte se ferme) et
quivaut une rsistance quasi-nulle : Vs est donc
double ngation : x = x proche de 0.
absorption : x.(x+y)=x=x+(x.y) Remarquons que l'inversion de l'entre sur la
sortie n'est pas instantane : selon les technologies
rduction : (x.y)+( x .y)=y=(x+y).( x +y) d'intgration, elle tourne autour des quelques
nano-secondes (10-9 s).
compltude du {non, et} ou du {non, ou} On schmatise une porte non not (inverseur) de la
toute fonction logique n-aire peut tre ralise par faon suivante :
des combinaisons de ces 2 oprations.
E S
NAND
Rappel des lois de Morgan :
Si V1 < Vcritique ou V2 < Vcritique alors Vs=Vcc non(A ou B)=nonA et non B
sinon Vs=0 non(A et B)=nonA ou non B
chaque plaquette est encapsule dans un botier 4.5 Circuits logiques combinatoires
(noir) rectangulaire en plastique ou en cramique,
do sortent des broches (pattes) de connexion.
Ces circuits plus ou moins complexes sont
caractriss par le fait que leur sortie sexprime
Il existe 4 classes de produits classes selon leur
uniquement par une fonction logique de leurs
densit dintgration :
entres. Ils sont diffrentiables des circuits
mmoires dont la sortie dpend galement de leur
SSI (Small Scale Integration) 1 10 portes/circuit
tat antrieur.
MSI (Medium ) 10 100
LSI (Large ) 100 100 000
VLSI (Very Large ) plus de 100 000 4.5.1 Multiplexeur (Mux)
Exemple : SSI 7400 TTL (Vcc=5V) Texas Instr. C'est un cas typique de circuit MSI permettant
d'aiguiller une entre parmi 2n sur son unique
Vcc sortie grce n lignes de slection.
14 13 12 11 10 9 8
Right
Ri
Remarque :
ladditionneur est le circuit de base pour
larithmtique binaire signe et non signe. En
S0 S1 S2
effet, toutes les autres oprations peuvent tre
Remarque : obtenues logiciellement si on a un additionneur et
Dcalage gauche = multiplication par 2 un inverseur.
Dc. arithmtique droite = division par 2
Question : OR de la retenue sortante Ri peut il
tre remplac par un XOR? (oui)
ASI Chapitre 4 : La couche physique 72 ASI Chapitre 4 : La couche physique 73
Exercice :
Construisez (schma de cblage) une UAL 1 cycle
ralisant laddition, la soustraction, les dcalages 1 Front descendant Front montant
bit, le C2, linversion sur des mots de 2 bits.
Il est parfois impratif de diviser le cycle de temps
de lhorloge principale en plusieurs intervalles. On
utilise alors dautres horloges dphases par
rapport lhorloge principale (circuit de
retardement). Le plus souvent, ces horloges
dlivrent des signaux symtriques et de mme
cycle (priode).
Le cadencement des actions lintrieur de lUC
est toujours dclench soit sur front montant,
soit sur front descendant.
La rcursivit dune procdure est une proprit 2) LUC dlgue sa responsabilit une Unit
permettant celle-ci de sappeler elle-mme. La dE/S (ou dchange) qui effectue le contrle du
mise en uvre de la rcursivit est permise par la transfert des donnes. Paramtres : Nom priph.,
sauvegarde dans la pile de ladresse de retour, des sens transfert, adrs MC dbut (tampon ou buffer),
paramtres dappels ainsi que des variables locales nb de mots. Une fois le transfert initialis par une
la procdure. instruction spcifique, lUnit dE/S ralise ce
transfert de faon autonome en accdant
6.4.5 Itrations directement la MC (Direct Memory Access).
ASI Chapitre 6 : La couche Machine 102 ASI Chapitre 6 : La couche Machine 103
Niveaux dinterruption
En gnral, il existe plusieurs niveaux de priorits 7. Perspectives et Conclusion
dIT. En effet, diffrents priphriques tant
connects, il importe dtablir une politique de 7.1 Perspectives de lASI
gestion des conflits. Diffrents algorithmes
utilisant plusieurs files de priorits sont utiliss. - Stratgie RISC/CISC : processeurs jeu
Par exemple, chaque niveau de priorit est associ dinstruction de limit/complexe : qui va gagner ?
un type de priph. et par consquent une
routine de traitement correspondante. Le numro - Nouveaux supports de mmoires de masse :
de priph. communiqu lors de lIT permettra de le optiques et magntiques, DVD ...
distinguer des autres de mme type.
- Miniaturisation : on va atteindre une
Transparence des IT imbriques asymptote horizontale pour les composants
Le mcanisme de traitement des IT est lectroniques actuels changement de
transparent lorsquil sapparente au mcanisme de technologie
lappel procdural. On utilise la pile pour - mtaux supraconducteurs
sauvegarder les contextes du programme et de la - ordinateurs biologiques (Science-Fiction ?)
suite des routines dIT interrompus. Attention
ne pas permettre de nouvelle IT pendant le - Standardisation : vue de lesprit puisque
chargement ou la sauvegarde dun contexte march fortement concurrentiel et impratifs
(atomicit) ! commerciaux prpondrants
ASI Chapitre 7 : Perspectives et conclusion 106 ASI Chapitre 7 : Perspectives et conclusion 107
Etude des principes fondamentaux des systmes - dvaluer correctement les rsultats
dexploitation : numriques fournis par les machines (prcision).
- fichiers,
- processus, - de programmer intelligemment les algorithmes
- mmoire. dont on a minimis la complexit (des E/S
frquentes peuvent ruiner un algorithme dune
complexit infrieure un autre).
Remarque :
8. Les Systmes de Selon les SE, la longueur, le nombre, la structure
Gestion de Fichiers des champs est fixe ou variable. Lorsque l'article
est rduit un octet, le fichier est qualifi de non
structur. Au niveau logique, plusieurs modles
de base de donnes ont t dfinis : modle
8.1 Les Fichiers relationnel [Codd 76], rseau, hirarchique.
Remarque :
les blocs de MS sont allous un fichier selon
Dfinition logique : diffrentes mthodes lies au type de support qu'il
C'est une collection ordonne d'articles soit adressable (disques, ) ou squentiel (bandes,
(enregistrement logique, item, "record"), chaque cassettes, "streamers"). Ces mthodes
article tant composs de champs (attributs, d'allocation sont couples des mthodes de
rubriques, zones, "fields"). Chaque champ est chanage des diffrents blocs d'un mme fichier
dfini par un nom unique et un domaine de et seront tudies dans le chapitre SGF.
valeurs.
Systmes dexploitation Systmes de Gestion de Fichiers 110 Systmes dexploitation Systmes de Gestion de Fichiers 111
Ces diffrentes caractristiques ainsi que le type 8.1.4 Structure et Longueur des articles
prpondrant d'utilisation (traitement par lot ou
interactif) d'un fichier doivent permettre de
Articles de longueur fixe et de structure unique
dcider de la structuration des articles, du type de
Dans la plupart des cas, chaque article d'un fichier
support de stockage et des mthodes d'accs.
contient le mme nombre de champs chaque
champ tant de taille fixe. Il existe un type unique
On classe souvent les fichiers en diffrentes catgories :
d'articles.
fichiers permanents : informations vitales de
Exemple : fichier STOCK
l'entreprise : Client, Stock, Fournisseurs...
nom champ type taille exemple
dure de vie illimite, Frquence d'Utilisation
REF N 4 0018
leve, mj priodique par mouvements ou
DESIGN A 15 VIS 8*20
interactive.
QTE N 7 550 000
DATE D 6 23/09/92
fichiers historiques : archives du SI : Tarifs,
Prts-Bibliothque, journal des oprations
pas de mj, taux d'accroissement lev, taux de Articles de longueur fixe et de structure multiple
suppression nul. Les articles peuvent varier de structure parmi
plusieurs sous-types d'articles (record variant de
fichiers mouvements : permettent la mj en Pascal, union de C, C++). La longueur fixe des
batch des permanents afin d'viter incohrences articles d'un tel fichier correspond la longueur
ponctuelles : Entre/Sortie hebdomadaire stock, maximale des diffrents sous-types.
heures supplmentaires Janvier,
dure de vie limit, frquence d'utilisation trs Exemple : fichier PERSONNE, articles de 42 octets
faible.
NOM(20), PRENOM(15), SITUATION(1),
fichiers de manoeuvre : dure de vie trs courte cas SITUATION=M alors DATE_MAR(6)
(excution d'un programme) : spool, fichier cas SITUATION=D alors DATE_DIV(6)
intermdiaire. cas SITUATION=C alors rien
Systmes dexploitation Systmes de Gestion de Fichiers 114 Systmes dexploitation Systmes de Gestion de Fichiers 115
Systmes dexploitation Systmes de Gestion de Fichiers 118 Systmes dexploitation Systmes de Gestion de Fichiers 119
Systmes dexploitation Systmes de Gestion de Fichiers 122 Systmes dexploitation Systmes de Gestion de Fichiers 123
Ex : fic1 (b0..b3); fic2(b9..b12); ; fick(b5..b6) Les blocs de donnes d'un fichier contiennent un
pointeur sur le bloc suivant. Le noeud descripteur
temps d'accs squentiel et direct optimal
contient, lui, la tte de liste. Lors de la cration, la
noeud descripteur contenant blocDebut, nbBlocs
tte est mise nil, puis, au fur et mesure des
peu utilis car les fichiers ont des tailles
demandes, une allocation contige (optimale en
dynamiques ==> survaluation a priori des
temps d'accs) est tente. Si celle-ci ne peut avoir
volumes fichiers, rorganisations frquentes et
lieu, on choisit le(s) premier bloc disponible.
coteuses lors des augmentations de volume.
utilisation pour les tables systmes de taille fixe :
MS-DOS : boot, FAT1, FAT2, DIR
Avantage
Unix : boot, SF type, i-node table
plus de fragmentation externe donc seule
Problme de l'allocation dynamique (=new, malloc) limitation = taille espace disque libre.
lors d'une demande de n blocs libres, le systme
doit chercher un trou (suite de blocs libres) Inconvnients
suffisament grand parmi les trous de l'espace Accs squentiel seulement !
disque.
fragmentation interne des fichiers ncessitant
Stratgies
de nombreux mouvements de tte. Des utilitaires
Premier trouv ("First-Fit") : on parcours la
de compactage permettent la rorganisation
liste des trous jusqu' en avoir trouv un assez
priodique des fichiers en allocation contige.
grand.
Plus Petit ("Best-Fit") : on cherche dans toute
fiabilit : si un pointeur est dtruit
la liste la borne suprieure des trous => parcours
logiciellement ou matriellement (bloc illisible) on
intgral ou liste des trous trie et recherche dicho.
perd tout le reste du fichier.
Plus Grand ("Worst-Fit") : inverse de Best-Fit.
Des simulations ont prouves la meilleure performance de BF et encombrement disque d aux pointeurs si blocs
FF en temps et en espace utilis. Lorsque l'espace libre est de petite taille
suffisant mais qu'il n'existe pas de trou assez grand, cette
fragmentation externe implique un compactage des fichiers.
Systmes dexploitation Systmes de Gestion de Fichiers 126 Systmes dexploitation Systmes de Gestion de Fichiers 127
Systmes dexploitation Systmes de Gestion de Fichiers 130 Systmes dexploitation Systmes de Gestion de Fichiers 131
Nouveau standard de FAT permettant de grer Exemple d'une arborescence de fichiers Unix
des disques durs de grande capacit (>2Go) : 2 /
Entres de FAT sur 12, 16 ou 32 bits permettant
bin usr dev
des petits clusters ;
FCB sur 32, 37 ou 44 octets (FCB tendu). 6 5 8
14 7
Exemple : disquette 1.4 Mo 3 12 10 15
Systmes dexploitation Systmes de Gestion des processus 134 Systmes dexploitation Systmes de Gestion des processus 135
dure de vie : un pus nat, aprs chargement en 9.2 Description des processus
MC, lors du lancement du programme par le SE et
meurt la fin de l'excution de ce programme lors
Unix
du retour au SE.
image mmoire d'un pus : ensemble des zones
Les mcanismes de synchronisation permettent mmoires utilises par un pus :
notamment l'activation d'un pus bloqu sur une
ressource ou au contraire le blocage d'un pus actif.
ex : l'accs de 2 pus une ressource critique zone Systme zone Utilisateur
ncessite leur synchronisation afin qu'un seul segment
d'entre eux n'obtienne la ressource. pid, ppid, tat
utilisateurs (2)
ADD AL,'X'
de code
valeurs reg.
descripteurs
Les mcanismes de communication permettent adresses segm. segment de
allocation
plusieurs pus de se transmettre des donnes. Afin
stat/extern
donnes
statiques
d'viter la communication par fichier (E/S lentes) 3.14159
tas
on utilise des structures de donnes en mmoire var dynam. segment de
new, malloc
centrale : variables partages, tubes, signaux, files donnes
dynamiques
de messages, sockets, var locales pile
10. Assembleur