Processus (informatique) - Définition

Source: Wikipédia sous licence CC-BY-SA 3.0.
La liste des auteurs de cet article est disponible ici.

Introduction

Un processus (en anglais, process), en informatique, est une opération complexe exécutable par un ordinateur et défini par :

  • un ensemble d'instructions à exécuter (un programme), parfois situé dans une mémoire morte (fréquent dans les systèmes embarqués notamment), mais le plus souvent chargé depuis une mémoire de masse vers la mémoire vive ;
  • un espace d'adressage en mémoire vive pour stocker la pile, les données de travail, etc. ;
  • éventuellement, d'autres ressources, comme des descripteurs de fichier, des ports réseau, etc.

L'exécution d'un processus dure un certain temps, avec 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 » utilisateur sont des [ensembles de] processus.

Rôle du système d'exploitation

Un ordinateur équipé d'un système d'exploitation à temps partagé est capable d'exécuter plusieurs processus de façon quasi-simultanée. Par analogie avec les télécommunications, on nomme multiplexage ce procédé. S'il y a plusieurs processeurs, l'exécution des processus est distribuée de façon équitable sur ces processeurs.

Ressources et Communication

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).

Exécution

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 et également associer les processus aux utilisateurs, qui sont les récipiendaires d'un ensemble de droits d'accès : un processus a les droits de l'utilisateur qui l'a initialisé.

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).

Quand un arrêt de processus n'est pas un arrêt normal, il peut être important d'en être prévenu. Cela peut se faire par des systèmes de supervision (aussi appelé monitoring)

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.097 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
Version anglaise | Version allemande | Version espagnole | Version portugaise