Architecture des machines et des systemes informatiques
ARCHITECTURE. DES MACHINES. ET DES SYSTÈMES. INFORMATIQUES. Cours et exercices corrigés. Alain Cazes. Maître de conférences en informatique.
Architecture des machines et des systèmes informatiques systèmes
Architecture des machines et des systèmes informatiques. 2.2.2 Langage d'assemblage CHAPITRE 6 • EXERCICES CORRIGÉS ... 10.9 Questions de cours.
Architecture des machines et des systèmes informatiques - 3ème
9 oct. 2021 ARCHITECTURE. DES MACHINES. ET DES SYSTÈMES. INFORMATIQUES. Cours et exercices corrigés. Alain Cazes. Maître de conférences en informatique.
Examen dArchitecture des Systèmes Informatiques (NSY104)
Architecture des machines (4 pts). Répondez concisément aux questions suivantes (3 phrases au maximum) : 1. Indiquez les trois parties du bus reliant les
Recueil dexercices corrigés en INFORMATIQUE I
Pellegrini 'Architecture des ordinateurs'
Architecture des machines et des systèmes informatiques - 3ème
ARCHITECTURE. DES MACHINES. ET DES SYSTÈMES. INFORMATIQUES. Cours et exercices corrigés. Alain Cazes. Maître de conférences en informatique.
Architecture et technologie des ordinateurs
Cours et exercices corrigés. Paolo Zanella 8.6 Structure des instructions niveau machine ... 14.4.1 Système d'information et système informatique.
Architecture et technologie des ordinateurs
Cours et exercices corrigés. Paolo Zanella 8.6 Structure des instructions niveau machine ... 14.4.1 Système d'information et système informatique.
Introduction aux systèmes informatiques
CHAPITRE 2 • L'ARCHITECTURE D'UN SYSTÈME INFORMATIQUE À la fin de chaque chapitre une série d'exercices corrigés
Architecture-des-Reseaux.pdf
Informatique. Synthèse de cours exercices corrigés l'architecture des ordinateurs dans l'unité d'enseignement « machines et représentation ».
Architecture des machines et des systèmes informatiques - Dunod
VI Architecture des machines et des systèmes informatiques 2 2 2 Langage d’assemblage 28 2 2 3 Langage de haut niveau ou évolué 29 2 3 Introduction à la chaîne de production de programmes 30 2 4 Un exemple 31 2 5 Conclusion 33 CHAPITRE 3 †LA CHAÎNE DE PRODUCTION DE PROGRAMMES 35 3 1 La compilation 36
Architecture des machines et des systèmes informatiques - Dunod
VIII Architecture des machines et des systèmes informatiques PARTIE 2 † STRUCTURE DE L’ORDINATEUR CHAPITRE 7 † LA FONCTION D’EXÉCUTION 147 7 1 Introduction 147 7 2 Aspects externes 150 7 2 1 Le microprocesseur 150 7 2 2 Les bus 152 7 3 Aspects internes 154 7 3 1 Exécution d’une instruction machine 155 7 3 2 Microcommandes et micro
Cours et exercices corrigés
SCIENCES SUP
ARCHITECTURE
DES MACHINES
ET DES SYSTÈMES
INFORMATIQUES
3 eédition
Alain Cazes
Joëlle Delacroix
Écoles d'ingénieurs IUT Licence 1
re , 2 e et 3 e annéesARCHITECTURE
DES MACHINES
ET DES SYSTéMES
INFORMATIQUES
LinuxProgrammation système et réseau
2 eŽdition
Jo'lle Delacroix
352 pages
Dunod, 2007
Bases de données et modèles de calcul
Outils et méthodes pour l'utilisateur
4 eŽdition
Jean-Luc Hainaut
440 pages
Dunod, 2005
ARCHITECTURE
DES MACHINES
ET DES SYSTéMES
INFORMATIQUES
Cours et exercices corrigés
Alain Cazes
Maître de conférences en informatique
au Conservatoire National des Arts et MŽtiersJoëlle Delacroix
Maître de conférences en informatique
au Conservatoire National des Arts et MŽtiers 3 eŽdition
Illustration de couverture : digitalvision®
© Dunod, Paris, 2003, 2005, 2008
ISBN 978-2-10-053945-1
Table des matières
CHAPITRE 1 •STRUCTURE GÉNÉRALE ET FONCTIONNEMENT D'UN ORDINATEUR 11.1 Introduction 1
1.2 Structure et fonctionnement d'un ordinateur 3
1.2.1 Structure générale d'un ordinateur 3
1.2.2 La mémoire centrale 4
1.2.3 Le bus de communication 8
1.2.4 Le processeur central ou microprocesseur 10
1.3 Fonctionnement : relation microprocesseur / mémoire centrale 13
1.4 Un exemple 15
1.4.1 Le problème 15
1.4.2 L'ordinateur 15
1.4.3 Le langage machine 15
1.5 Les unités d'échanges 16
1.6 Conclusion 17
PARTIE 1 PRODUCTION DE PROGRAMMES
2.1 Du problème au programme 23
2.1.1 Rappel du rôle d'un ordinateur 23
2.1.2 Problème, algorithme, programme et instructions 25
VIArchitecture des machines et des systèmes informatiques2.2 Les différents niveaux de langage de l'ordinateur 26
2.2.1 Langage machine 27
2.2.2 Langage d'assemblage 28
2.2.3 Langage de haut niveau ou évolué 29
2.3 Introduction à la chaîne de production de programmes 30
2.4 Un exemple 31
2.5 Conclusion 33
3.1 La compilation 36
3.1.1 Grammaire et structure d'un langage de haut niveau 36
3.1.2 Analyse lexicale 38
3.1.3 Analyse syntaxique 40
3.1.4 Analyse sémantique 42
3.1.5 Génération du code final 44
3.2 L'édition des liens 46
3.2.1 Rôle de l'éditeur de liens 46
3.2.2 Fonctionnement de l'éditeur de liens 47
3.3 Le chargement 59
3.3.1 Rôle du chargeur 59
3.3.2 Chargement et édition des liens dynamique 61
3.4 L'utilitaire Make 62
3.4.1 Format du fichier Makefile 62
3.4.2 Fonctionnement de l'utilitaire Make 63
3.5 Conclusion 64
4.1 La représentation des informations 65
4.1.1 Numération binaire, octale et hexadécimale 66
4.1.2 Représentation des nombres signés 69
4.1.3 Représentation des nombres flottants 74
4.1.4 Représentation des caractères 77
4.2 Les instructions machine 79
4.2.1 Les différents types d'instructions 80
4.2.2 Les différents types d'opérandes 81
4.2.3 Un exemple 82
4.3 Les instructions du langage d'assemblage 84
4.3.1 Format d'une instruction du langage d'assemblage 85
4.3.2 Fonctionnement de l'assembleur 87
4.4 Conclusion 89
Table des matièresVII
© Dunod - La photocopie non autorisée est un délit.5.1 Les circuits logiques 90
5.1.1 Définition 90
5.1.2 Les circuits combinatoires 91
5.1.3 Les circuits séquentiels 99
5.1.4 Technologie des circuits logiques 101
5.2 Le futur... 106
Production de programmes 108
6.1 Compilation 108
6.2 Édition des liens 110
6.3 Utilitaire Make 111
6.4 Compilation 111
Représentation des informations 112
6.5 Conversions 112
6.6 Représentation des nombres signés 112
6.7 Représentation des nombres flottants 113
6.8 Synthèse 113
Langage machine 113
6.9 Manipulation des modes d'adressage 117
6.10 Programme assembleur 117
6.11 Manipulation de la pile 118
6.12 Programme assembleur 119
SOLUTIONS120
PARTIE 2 STRUCTURE DE L'ORDINATEUR
7.1 Introduction 129
7.2 Aspects externes 132
7.2.1 Le microprocesseur 132
7.2.2 Les bus 134
7.3 Aspects internes 136
7.3.1 Exécution d'une instruction machine 137
7.3.2 Microcommandes et micro-instructions 145
7.4 Les interruptions : modification du flux d'exécution d'un programme machine 154
7.4.1 Principe des interruptions 154
7.4.2 Un exemple 158
VIIIArchitecture des machines et des systèmes informatiques7.5 Amélioration des performances 162
7.5.1 Parallélisme des instructions 163
7.5.2 Parallélisme des processeurs 165
7.6 Conclusion 166
8.1 Généralités 168
8.2 Mémoires de travail 171
8.2.1 Les mémoires vives 171
8.2.2 Les mémoires mortes 180
8.2.3 Les registres 180
8.3 Mémoires de stockage : le disque magnétique 181
8.3.1 Caractéristiques générales 182
8.3.2 Organisation générale 182
8.4 Amélioration des performances 184
8.4.1 Les mémoires caches 184
8.4.2 Mémoire virtuelle 195
8.5 Compléments : approches CISC/RISC 198
8.5.1 Les performances d'un processeur 199
8.5.2 La traduction des programmes 200
8.5.3 Approche CISC 200
8.5.4 Approche RISC 201
8.5.5 Pour conclure sur les RISC et les CISC 202
8.6 Conclusion 203
9.1 Introduction 205
9.2 Les bus 210
9.2.1 Les bus ISA (ou PC-AT), MCA et EISA 211
9.2.2 Le bus PCI (Peripherical Component Interconnect) 212
9.2.3 Le bus AGP (Accelerated Graphics Port) 216
9.2.4 Deux exemples 217
9.3 Les interfaces d'accès aux périphériques 218
9.3.1 Les unités d'échanges 219
9.3.2 Les bus d'extension 232
9.4 Les différents modèles de gestion des entrées-sorties 236
9.4.1 La liaison programmée 237
9.4.2 Entrées-sorties pilotées par les interruptions 239
9.4.3 Gestion des entrées-sorties asynchrones 241
9.5 Conclusion 244
Table des matièresIX
© Dunod - La photocopie non autorisée est un délit.CHAPITRE 10 •EXERCICES CORRIGÉS 245
La fonction d'exécution 245
10.1 Révision 245
10.2 Microcommandes 245
10.3 CISC/RISC 246
La fonction de mémorisation 247
10.4 Cache à correspondance directe 247
10.5 Calcul de la taille réelle d'un cache 247
10.6 Cache associatif et remplacement de lignes 247
10.7 Cache à correspondance directe 248
La fonction de communication 248
10.8 Questions de cours 248
10.9 Entrées-sorties programmées et entrées-sorties par interruption 248
10.10 Performances des opérations d'entrées-sorties 249
10.11 Gestion des interruptions 249
Synthèse 250
10.12 Exercice de synthèse 250
SOLUTIONS253
PARTIE 3 LES SYSTÈMES D'EXPLOITATION
11.1 Rôle et définition d'un système d'exploitation multiprogrammé 265
11.1.1 Un premier rôle : assurer le partage de la machine physique 267
11.1.2 Un second rôle : rendre conviviale la machine physique 267
11.1.3 Définition du système d'exploitation multiprogrammé 268
11.2 Structure d'un système d'exploitation multiprogrammé 269
11.2.1 Composants d'un système d'exploitation 269
11.2.2 La norme POSIX pour les systèmes ouverts 271
11.3 Principaux types de systèmes d'exploitations multiprogrammés 271
11.3.1 Les systèmes à traitements par lots 272
11.3.2 Les systèmes interactifs 274
11.3.3 Les systèmes temps réel 275
11.4 Notions de base 276
11.4.1 Modes d'exécutions et commutations de contexte 277
11.4.2 Gestion des interruptions matérielles et logicielles 279
11.4.3 Langage de commande 282
XArchitecture des machines et des systèmes informatiques11.5 Génération et chargement d'un système d'exploitation 285
11.5.1 Génération d'un système d'exploitation 285
11.5.2 Chargement d'un système d'exploitation 286
11.6 Conclusion 286
12.1 Notion de processus 288
12.1.1 Définitions 288
12.1.2 États d'un processus 289
12.1.3 Bloc de contrôle du processus 290
12.1.4 Opérations sur les processus 291
12.1.5 Un exemple de processus : les processus Unix 292
12.2 Ordonnancement sur l'unité centrale 295
12.2.1 Ordonnancement préemptif et non préemptif 295
12.2.2 Entités systèmes responsable de l'ordonnancement 297
12.2.3 Politiques d'ordonnancement 297
12.2.4 Exemples 302
12.3 Synchronisation et communication entre processus 304
12.3.1 L'exclusion mutuelle 305
12.3.2 Le schéma de l'allocation de ressources 309
12.3.3 Le schéma lecteurs-rédacteurs 310
12.3.4 Le schéma producteur-consommateur 312
12.4 Conclusion 314
13.1 Mémoire physique et mémoire logique 315
13.2 Allocation de la mémoire physique 317
13.2.1 Allocation contiguë de la mémoire physique 317
13.2.2 Allocation non contiguë de la mémoire physique 323
13.3 Mémoire virtuelle 336
13.3.1 Principe de la mémoire virtuelle 336
13.3.2 Le défaut de page 339
13.3.3 Le remplacement de pages 341
13.3.4 Performance 344
13.3.5 Exemples 345
13.3.6 Notion d'écroulement 346
13.4 Swapping des processus 347
13.5 Conclusion 347
Table des matièresXI
© Dunod - La photocopie non autorisée est un délit.14.1 Le fichier logique 348
14.1.1 Définition 348
14.1.2 Les modes d'accès 349
14.1.3 Exemples 351
14.2 Le fichier physique 354
14.2.1 Structure du disque dur 354
14.2.2 Méthodes d'allocation de la mémoire secondaire 355
14.3 Correspondance fichier logique-fichier physique 366
14.3.1 Notion de répertoire 366
14.3.2 Réalisation des opérations 372
14.4 Protection 379
14.4.1 Protection contre les accès inappropriés 379
14.4.2 Protection contre les dégâts physiques 380
14.5 Conclusion 381
15.1 Définition 383
15.2 Les réseaux filaires 385
15.2.1 Architecture des réseaux filaires 385
15.2.2 Circulation des informations 393
15.2.3 Exemple de réseau filaire 396
15.3 Les réseaux sans fil 399
15.3.1 Architecture des réseaux sans fil 400
15.3.2 Circulation des informations 402
15.3.3 Exemples de réseaux sans fil 407
15.4 L'interconnexion de réseaux : Internet 409
15.4.1 Architecture de l'Internet 410
15.4.2 Circulation de l'information 410
Ordonnancement de processus 414
16.1 Algorithmes d'ordonnancement 414
16.2 Ordonnancement par priorité préemptif et non préemptif 414
16.3 Chronogramme d'exécutions 415
16.4 Ordonnancement sous Unix 415
16.5 Ordonnancement sous Linux 416
Synchronisation de processus 417
16.6 Producteur(s)-Consommateurs(s) 417
XIIArchitecture des machines et des systèmes informatiques16.7 Allocations de ressources et interblocage 417
16.8 Allocation de ressources et états des processus 418
Gestion de la mémoire centrale 419
16.9 Gestion de la mémoire par partitions variables 419
16.10 Remplacement de pages 419
16.11 Mémoire paginée et segmentée 420
16.12 Mémoire virtuelle et ordonnancement de processus 420
16.13 Pagination à la demande 421
Système de gestion de fichiers 422
16.14 Modes d'accès 422
16.15 Organisation de fichiers 422
16.16 Noms de fichiers et droits d'accès 422
16.17 Algorithmes de services des requêtes disque 423
16.18 Fichiers Unix 423
16.19 Système de gestion de fichiers FAT 423
16.20 Système de gestion Unix 424
16.21 Synthèse 424
SOLUTIONS427
INDEX445
Chapitre 1
Structure générale
et fonctionnement d'un ordinateur 1 Dans cette partie introductive nous rappelons quelques éléments fondamentaux concer- nant la programmation et l'algorithmique afin de présenter le vocabulaire utilisé. Il ne s'agit en aucune manière de se substituer à un cours d'algorithmique mais unique- ment de replacer du vocabulaire du point de vue de la structure générale d'un ordina- teur, l'objectif étant de mettre en évidence les différentes phases qui interviennent dans la résolution d'un problème avec un ordinateur. Après cette partie introductive nous présentons les principaux modules constituant l'architecture d'un ordinateur type. Nous faisons un tour d'horizon des fonctionnalités de chacun de ces modules et de leurs relations fonctionnelles. Il s'agit ici uniquement de présenter de manière globale le fonctionnement de l'ordinateur.1.1 INTRODUCTION
Le rôle de l'informatique est de résoudre des problèmes à l'aide d'un ordinateur. Un problème s'exprime sous la forme d'un énoncé qui spécifie les fonctions que l'on souhaite réaliser. Par exemple définir toutes les fonctions d'un traitement de texte.Pour résoudre un problème les in
formaticiens utilisent la notion d'algorithme. Pour illustrer cette notion, prenons l'exemple du problème suivant : confectionner une omelette avec 6oeufs.2 1•Structure générale et fonctionnement d'un ordinateur
Trouver une solution à ce problème repose sur l'existence d'un processeur sachant exécuter une instruction (confectionner). En général un adulte saura exécuter l'instruc- tion confectionner, c'est-à-dire connaîtra le sens du mot, et sera capable de faire toutes les actions nécessaires permettant de résoudre le problème. On dira alors que l'adulte est un bon processeur au sens où il saura exécuter l'instruction confec- tionner portant sur la donnée oeufs. Par contre un enfant pourra ne pas connaître le mot confectionner : il ne saura pas faire les opérations nécessaires et ne pourra donc pas résoudre le problème posé (faire une omelette). L'enfant connaît d'autres instruc- tions, sait exécuter d'autres actions que confectionner, et pour qu'il puisse résoudre le problème il faudra l'exprimer autrement, sur la base des actions, instructions, qu'il est capable d'exécuter. Pour que l'enfant puisse résoudre le problème on pourra l'exprimer sous la forme d'une séquence d'instructions appartenant au langage de l'enfant. Par exemple on pourra exprimer le problème, la solution, sous la forme de la séquence des instructions suivantes :1.casser 6 oeufs dans un bol;
2.battre les oeufs avec un fouet;
3.saler, poivrer;
4.placer la poêle sur le gaz;
5.allumer le gaz;
6.cuisiner les oeufs;
7.éteindre le gaz.
Dans cet exemple, le processeur enfant sait exécuter des instructions (casser, battre, saler, poivrer, allumer, cuisiner...). De plus il connaît les objets à manipuler (oeufs, gaz, poêle...). On dit alors que le processeur enfant est un bon processeur pour exécuter l'algorithme représenté par la séquence précédente puisque l'enfant est capable d'exécuter cette séquence d'instructions. Cette séquence d'instructions exécu- tables par le processeur enfant est une solution du problème posé pour ce processeur.Un algorithme peut donc se définir co
mme une séquence d'instructions exécuta- bles par un processeur déterminé. Cette séquence d'instructions, cet algorithme, est une solution au problème posé. De ce petit exemple nous pouvons tirer quelques conclusions : - un algorithme est une solution à un problème posé; - un algorithme est une séquence d'instructions exécutables par un processeur; - un algorithme est un programme exécutable par un processeur déterminé; - un algorithme n'a de sens que pour un processeur déterminé. Les instructions expriment les actions que peut exécuter un processeur, elles sont codées à partir d'un alphabet (dans notre cas l'alphabet habituel). Les instructions manipulent des données (oeufs, sel, poivre, gaz, poêle...). Un processeur (ou machine virtuelle) est une entité capable d'exécuter des instructions portant sur des données. L'ensemble des instructions que le processeur (la machine virtuelle) peut manipuler, constitue son langage de programmation. Ainsi le langage de programmation du processeur définit complètement ce processeur. Il y a équivalence totale entre laquotesdbs_dbs20.pdfusesText_26[PDF] architecture des systèmes d'information ppt
[PDF] architecture fonctionnelle exemple
[PDF] architecture informatique pour les nuls
[PDF] architecture islamique en algerie
[PDF] architecture islamique hca
[PDF] architecture islamique pdf
[PDF] architecture marocaine maison
[PDF] architecture marocaine moderne
[PDF] architecture marocaine wikipedia
[PDF] architecture matérielle des systèmes informatiques
[PDF] architecture mosquée
[PDF] architecture technique informatique
[PDF] archive guerre indochine
[PDF] archives etat civil maroc