Information Technology Reference
In-Depth Information
compteur ordinal (CO) contient l'adresse de la prochaine instruction à exécuter soit
0A14 16 . Lorsque l'instruction courante a été exécutée, le processeur charge dans le
registre RI l'instruction pointée par le CO, soit par exemple l'instruction add Im R1 5
et le compteur ordinal prend la valeur 0A18 16 . L'exécution de l'instruction add Im R1 5
modifie le contenu du registre PSW puisque c'est une instruction arithmétique : les
drapeaux de signe, de nullité etc. sont mis à jour. Ainsi, à chaque étape d'exécution
du programme, le contenu des registres du processeur évolue. De même le contenu
de la mémoire centrale peut être modifié par des opérations d'écriture ou de lecture
dans la pile (instructions push, pop) ou encore des opérations de modification des
données (instruction store).
On appelle processus l'image de l'état du processeur et de la mémoire au cours de
l'exécution d'un programme. Le programme est statique et le processus représente
la dynamique de son exécution. Plus précisément, les définitions suivantes permet-
tent de caractériser ce qu'est un processus :
- un processus est un programme en cours d'exécution auquel est associé un envi-
ronnement processeur (CO, PSW, RSP, registres généraux) et un environnement
mémoire (zone de code, de données et de pile) appelés contexte du processus ;
- un processus est l'instance dynamique d'un programme et incarne le fil d'exécution
de celui-ci dans un espace d'adressage protégé, c'est-à-dire sur une plage mémoire
dont l'accès lui est réservé.
Par ailleurs, un programme réentrant est un programme pour lequel il peut exister
plusieurs instances d'exécutions simultanées (n par exemple), c'est-à-dire que le
programme peut être exécuté n fois en même temps. Il y a alors n processus corres-
pondant à n exécutions différentes et indépendantes du même programme, chaque
processus évoluant à son propre rythme.
12.1.2 États d'un processus
Lors de son exécution, un processus est caractérisé par un état (figure 12.1) :
- lorsque le processus obtient le processeur et s'exécute, il est dans l'état élu . L'état
élu est l'état d'exécution du processus ;
- lors de cette exécution, le processus peut demander à accéder à une ressource, par
exemple il demande à lire des données depuis le disque. Le processus ne peut pas
poursuivre son exécution tant qu'il n'a pas obtenu la ressource. Selon notre
exemple, le processus doit attendre la fin de l'opération d'entrées-sorties disque
pour disposer des données sur lesquelles il pourra effectuer les calculs suivants de
son code. Le processus quitte alors le processeur et passe dans l'état bloqué . L'état
bloqué est l'état d'attente d'une ressource autre que le processeur ;
- lorsque le processus a enfin obtenu la ressource qu'il attendait, celui-ci peut poten-
tiellement reprendre son exécution. Cependant, nous nous sommes placés dans le
cadre de systèmes multiprogrammés, c'est-à-dire qu'il y a plusieurs programmes
en mémoire centrale et donc plusieurs processus. Lorsque le processus est passé
dans l'état bloqué, le processeur a été alloué à un autre processus. Le processeur
 
 
Search WWH ::




Custom Search