Processus (informatique) - Définition

Source: Wikipédia sous licence CC-BY-SA 3.0.
La liste des auteurs est disponible ici.
Diagramme d'état d'un processus.
Diagramme d'état d'un processus.

Un processus (en anglais, process), en informatique, est défini par :

  • un ensemble d'instructions à exécuter (un programme) ;
  • un espace mémoire pour les données de travail ;
  • éventuellement, d'autres ressources, comme des descripteurs de fichiers, des ports réseau, etc.

Un ordinateur équipé d'un système d'exploitation à temps partagé est capable d'exécuter plusieurs processus de façon " quasi-simultanée ". S'il y a plusieurs processeurs, l'exécution des processus est distribuée de façon équitable sur ces processeurs.

Le sens de processus doit être pris comme quelque chose qui prend du temps, donc qui a un début et (parfois) une fin. Un processus peut-être démarré par un utilisateur par l'intermédiaire d'un périphérique ou bien par un autre processus : les applications des utilisateurs sont des (ensembles de) processus.

Le système d'exploitation est chargé d'allouer les ressources (mémoires, temps processeur, entrées/sorties) nécessaires aux processus et d'assurer que le fonctionnement d'un processus n'interfère pas avec celui des autres (isolation). Il peut aussi fournir une API pour permettre la communication inter-processus (IPC).

Outre le multiplexage des ressources matérielles, le système peut contrôler l'accès des processus aux ressources selon une matrice de droits (permissions d'accès) et également associer les processus aux utilisateurs, qui sont les récipendiaires d'un ensemble de droits d'accès : un processus a les droits de l'utilisateur qui l'a démarré.

Un processus peut s'arrêter de plusieurs manières :

  1. Arrêt normal (volontaire).
  2. Arrêt pour erreur (volontaire).
  3. Arrêt pour erreur fatale (involontaire).
  4. Le processus est arrêté par un autre processus (involontaire).

La plupart des systèmes offrent la distinction entre processus lourd (tels que nous les avons décrits), qui sont a priori complètement isolés les uns des autres, et processus légers (Threads en anglais), qui ont un espace mémoire (et d'autres ressources) en commun.

Dans le cas de processus comportant plusieurs processus légers (ou suivant l'expression souvent utilisée multi-thread) il existe un état du processeur (un contexte d'exécution) distinct pour chaque processus léger.

Page générée en 0.006 seconde(s) - site hébergé chez Contabo
Ce site fait l'objet d'une déclaration à la CNIL sous le numéro de dossier 1037632
A propos - Informations légales | Partenaire: HD-Numérique
Version anglaise | Version allemande | Version espagnole | Version portugaise