Station MinuitPortail personnel de révision

IFT-2001 — Systèmes d’exploitationAutomne 2026

Semaine 3 — Processus et appels système

2. Programme, processus et espace d'adressage

LECTURE 05 / 233 repèresSynthèse avec omissions acceptées

2. Programme, processus et espace d'adressage

2.1 Programme contre processus

Un programme est une entité passive : un fichier exécutable ou un ensemble d'instructions stocké. Un processus est une instance active de ce programme, avec un état CPU, de la mémoire, des ressources et un identifiant. Deux lancements du même exécutable créent normalement deux processus distincts.

Le processus peut être vu comme une photographie évolutive de l'exécution :

  • le compteur ordinal désigne la prochaine instruction;
  • les registres contiennent les opérandes, résultats intermédiaires et données de contrôle;
  • la mémoire contient le code et les données du programme;
  • le noyau conserve les métadonnées nécessaires à la gestion de l'ensemble.

Cette distinction évite une confusion fréquente : le fichier exécutable ne « s'exécute » pas tout seul. Le chargeur et le noyau créent une entité d'exécution à partir de lui.

2.2 Organisation logique de la mémoire

L'espace d'adressage d'un processus comprend typiquement :

Tableau 1 — Zone · Rôle
Zone Rôle
Texte Instructions binaires du programme; généralement non modifiables
Données Variables globales et statiques
Tas Allocations dynamiques produites notamment par malloc ou new
Pile Paramètres, variables locales, adresses de retour et registres sauvegardés des appels de fonctions
Zones mappées Bibliothèques partagées, fichiers mappés et autres régions selon le système

La pile croît par cadres d'appels. Une récursion non bornée peut l'épuiser. Le tas répond à des durées de vie plus souples, mais exige un mécanisme de libération ou de collecte.

L'espace d'adressage est une vue logique privée. Le système empêche normalement un processus d'écrire directement dans la mémoire d'un autre. Cette isolation protège les données et les informations de contrôle comme les adresses de retour. Elle ne signifie pas que toute page physique est nécessairement unique : le noyau peut partager des pages tant que le comportement observable reste celui de mémoires indépendantes.

Retour au sommaire de l’unitéHaut de page
Récupérer manuellement les données locales

Copier séparément les données ci-dessous dans des fichiers texte avant de fermer la page ou de modifier le stockage. Une valeur illisible ou incompatible reste en place. Aucun effacement ni rétablissement écrasant n’est effectué automatiquement. L’export/import JSON est disponible sur la page Progression du cours. Cette récupération séparée reste utile pour une valeur brute ou un conflit.

Clé de ce cours : . Format v1 porté par cette clé; dates UTC et identifiants durables.

Si l’accès est refusé, la valeur persistée peut rester inaccessible. Réautoriser le stockage dans le navigateur puis rouvrir ce cours permet de la relire. Une réinitialisation exige une décision explicite après récupération; aucune commande de suppression n’est proposée ici. Les données restent sur cette origine et cet appareil, sans transfert automatique.