Vous êtes sur la page 1sur 10

Cours de Systme dExploitation : Processus

Systme dExploitation
Processus
-

Cours de Systme dExploitation : Processus

I.

Excution dun programme par la machine Processeur : organe actif excutant un processus En monoprogrammation : 1 processus pour tout les processeurs En multiprogrammation : plusieurs processus Processus utilisateur : lanc par un utilisateur (compilation, diteur, jeu, impression, ) Processus systmes : lancs pour la gestion du systme au dmarrage de la machine (spooler dimpression, surveillance des terminaux tty, ). Processus dmon (Unix) ou de service (Windows NT)

Dfinitions

Cours de Systme dExploitation : Processus

II. Structure dun processus


Processus : excutable (Exec)
Entte TEXT TEXT Pile dexcution DATA DATA Table des symboles BSS

DATA : donnes initialises BSS : donne non initialises


3

Cours de Systme dExploitation : Processus

Dans lentte en trouve : a_text : taille du segment TEXT sur disque a_data : taille du segment DATA a_bss : taille des donnes non initialis. a-sym : taille de la table des symboles Dmarrage et terminaison Ladresse de dbut ou point dentre est donne par le champ a_entry de la structure exec. Elle correspond ladresse de la premire instruction machine excuter. Fonction start : - rcuprer les arguments de la ligne de commande Unix - rcuprer lenvironnement du processus - appel de la fonction main (argc, argv, envp) - provoquer la terminaison lors du retour du main (exit())
4

Cours de Systme dExploitation : Processus

Table des processus :


Table gre par le systme dexploitation, stockage des informations relatives aux processus Processus K
Compteur Ordinal
Processus K

Table des processus

Registres Etat du programme Pointeur de pile Date du lancement

Temps de UC utilis Identificateur du processus Divers indicateurs


5

Cours de Systme dExploitation : Processus

III. Hirarchie de processus


Les processus se reproduisent : cration de processus fils Hirarchie (arbre) de processus 1 processus (racine de la hirarchie) : cr au dmarrage de la machine (bootsrap), sous Unix processus swapper un processus fils hrite dun certain nombre de ressources du processus pre : - tables des fichiers ouverts - traitement des signaux - identificateur de lutilisateur du processus et de son groupe Sous Unix les segments Pile et Donnes sont dupliqus, le segment code est partag

Cours de Systme dExploitation : Processus

IV Ressources dun processus


Un processus dispose de diffrentes ressources pour sexcuter. On parle de contexte (sauvegard chaque changement de processus : temps partag) : Contexte utilisateur : Ressources propres (code, donnes, pile dexcution) Contexte systme : Ressources gres par lOS : pid, ppid, uid, gid, table des fichiers Contexte registre: Etat des diffrents registres de P : PWS, CO, registres de calculs
7

Cours de Systme dExploitation : Processus

1. Contexte Systme : Informations gres par le noyau, table cre au dmarrage (boot). Taille = Nb maximal de processus identificateur de processus (pid) tat du processus localisation (Mmoire principale ou secondaire) taille du processus identificateurs dutilisateurs et goupes descripteurs dvnements champs signal donnant la listes des signaux reus non traits paramtres dordonnancements (priorit, quantum de temp) divers compteurs table de traduction dadresses @logique @physique

Cours de Systme dExploitation : Processus

2. Contexte utilisateur Informations utilises uniquement par le processus (alloues chaque cration) Pointeur sur la structure PROC correspondante UID Compteurs temps dexcutions du processus et descendants tty associ au processus rpertoire racine courant table des descripteurs de fichiers champs mmorisant les erreurs valeurs de retour du dernier appel systme les paramtres dE/S : Nb doctets, adresse dbut,
9

Cours de Systme dExploitation : Processus

2. Contexte registre Registres de la machine : compteur Ordinal : adresse de la prochaine instruction registre dtat : PSW ou PSD pointeur de pile (systme ou user) registres gnraux (8086 : AX, BX, CX, )

V. Communication entre Processus


3 modes de communication : (rendez-vous : 2 anne) Fichiers partags : pipes ou sockets Variables partages : en zone mmoire Signaux
10