Les processus


Processus - définition

Un processus est un programme en cours d'exécution. Pour que ce processus puisse s'exécuter, il aura besoin des ressources du système (mémoire, cpu, etc...). Les systèmes unix étant multitâches, les différents processus s'exécutent en parallèle, ou plutôt pseudo parallélisme (Voir le multitâche). Pour chaque processus, il y a deux modes d'exécutions : le mode utilisateur et le mode système également appelé mode noyau (vu dans un autre chapitre).

Enfin, les processus vont s'échanger des données et des signaux. (voir L’entité d’exécution ‘le processus’)

 

Processus fils

Un processus est capable de lancer un autre processus. On parle alors de "processus père" pour le processus à l'origine du lancement du nouveau processus, nouveau processus qui lui sera nommé "processus fils".

Le processus fils ainsi créé aura certains héritages provenant du père. Il va ainsi hériter de certaines variables d'environnement, des fichiers ouverts par le père...

 

Le noyau

Un processus particulier : le noyau (ou encore kernel)

Le noyau se compose principalement de deux parties:

- La gestion des processus (allocation des ressources, il va ordonnancer (ou sheduler les processus) et honnorer les requètes.

- La gestion des périphériques, qui gére les tranferts de données entre la mémoire principale et le périphérique. Chaque périphérique étant géré par un module ou driver, tous nouveaux périphériques devront être associé à un driver (qu'il faudra éventuellement installer).

Le noyau d'UNIX maintient plusieurs tables importantes qui coordonnent les actions des diverses tâches. En fait, le travail du noyau consiste, la plupart du temps, à rechercher ou à modifier des tables.