Académique Documents
Professionnel Documents
Culture Documents
Aperçu
1
Modèle en couches
6 Programmes d'application
(Traitement de texte, PAO, Jeux, …)
5 Langages de programmation
(Fortran, Cobol, C, C++, Java, …)
4 Langage assembleur
(Langage natif symbolique de la machine)
3 Noyau du système d'exploitation
(Gestion des taches, des ressources : mémoire, I/Os,…)
2 Langage machine : jeu d’instructions
(Langage natif du processeur)
1 Langage de microprogrammation
0 Logique numérique
(Couche matérielle : circuits logiques, électroniques)
2
CPU (Central Processing Unit)
3
Les registres :
Sont des petites mémoires, dont la capacité peut varier d’un à plusieurs octets
.On trouve trois styles de registres :
qui stockent le résultat de l’instruction traitée ;
qui pointent vers une adresse dans la mémoire ;
qui enregistrent le code instruction;
4
CPU (Central Processing Unit)
5
Les Registres architecturaux
Registres spécialisés
Généralement non disponibles aux programmes de l’usager
Le CPU en utilise pour contrôler ses opérations
Le SE en utilise pour contrôler l’exécution des programmes
Registres généraux
Disponibles au SE et programmes de l’usager
Visibles seulement en langage machine ou assembleur
Contiennent données, adresses etc.
Registre AX, BX, CX, et DX.
6
Exemples de Registres spécialisés
Le compteur d’instruction (PC ou CO)
Contient l’adresse de la prochaine instruction à exécuter
Le registre d’instruction (IR)
Contient l’instruction en cours d’exécution
Le registre d'état (PSW) (bits de retenus, overflow,
signe,...),
bit d’interruption activé/désactivé
bit du mode d’exécution superviseur/usager
bornes de mémoire du programme en exec.
Registres de statut des périphériques
7
CPU (Central Processing Unit)
8
Catégories d’instruction d’un
CPU
Les instructions arithmétiques
Les instructions logiques
Les instructions de manipulation de chaines de caractères
Les instructions de test et de contrôle
Les instructions de gestion de l'énergie
Et autres: générer des nombres aléatoires, instruction
pour la cryptographie, instructions spéciaux au SE
moderne...
Chaque CPU possède son propre Jeu d’instruction
9
Jeu
d’instruction
&
Code
Assembleur
BENHAMZA 10
Jeux d’instruction
RISC ( Reduced instruction set comupter)
CISC ( Complex instruction set computer)
11
CPU (Central Processing Unit)
12
Séquenceurs
Responsable de coordination entre les différents
composants du CPU afin d’exécuter une instruction.
Au moins deux types de séquenceurs existent:
Séquenceur câblé.
Séquenceur microprogrammé.
Commande l’exécution de plusieurs micro-
instructions afin de réaliser le comportement désiré
d’une instruction donné.
Le nombre de micro-instruction (Cycle d’horloge)
nécessaire dépend de l’instruction elle même.
BENHAMZA 13
Le cycle d’instruction de base
Données
Adresse
Contrôle
Registre Registre
adresse données
Processeur
DMA
Requêtes DMA Contrôleur de
périphériques
Périphériques
Unité de Unité de
contrôle contrôle
DMA OK
15
CPU/Périphérique: Schéma
d’interconnexion
Un SI est constitué d’un
CPU et d’un certain
nombre de contrôleurs
de périphériques
connectés par un bus
commun fournissant
l’accès à la mémoire.
BENHAMZA 16
CPU/Périphérique: Technique de
Communication
Polling (E/S programmée, interrogation, scrutation):
le programme interroge périodiquement les regs statut
et détermine le statut de l ’unité E/S.
BENHAMZA 17
Les interruptions:
Les interruptions sont des signaux, « matériel » ou
« logiciel », « demandant », ou parfois« obligeant » le
processeur de s'interrompre, pour prendre en charge
un autre évènement « interne » ou « externe ».
On décompte généralement 256 interruptions dans la
plupart des systèmes actuels, toutes pouvant requérir
un moment d'attention de la part du système.
18
Sources des interruptions
Deux types
d'interruption existent : Horloge
matérielles, et B
logicielles. IRQ 8
IRQ nn
Programme
en erreur
Appel de fonction
19
Interruptions matérielles
Il existe en standard 16 interruptions matérielles :
les IRQ, ou Interruption ReQuest.
BENHAMZA 20
Interruptions logicielles
Une interruption logicielle peut être provoquée par
le programme qu'exécute le microprocesseur, ou bien
par une erreur dans le programme (exception)
IRQ1 (clavier) 09h: Lecture du clavier
BENHAMZA 21
Un vecteur d'interruption est un tableau, ou toutes ces
cellules sont des adresses vers des fonctions
d'interruption.
23