Espace d’adressage

Définition, exemples et bonnes pratiques

À retenir

  • C'est la limite numérique des adresses utilisables par un système.
  • Sa taille dépend de l'architecture du processeur (32 bits vs 64 bits).
  • Il permet l'isolation des programmes pour éviter les conflits et les piratages.

L'espace d’adressage représente l'ensemble total des emplacements mémoire (adresses) qu'un programme ou un matériel peut utiliser. On peut le comparer à un plan de ville où chaque maison possède un numéro unique : l'espace d'adressage définit l'étendue de ces numéros, du premier au dernier disponible, pour que les données arrivent au bon endroit.

Étymologie

Vient du latin spatium (étendue) et de l'ancien français adresser. En informatique, c'est un calque de l'anglais address space. Le terme a évolué avec l'architecture des processeurs, passant de quelques kilo-octets aux téraoctets actuels.

Exemples d'usage

  • Sur un système 32 bits, l'espace d'adressage est limité à environ 4 Go de données.
  • Chaque logiciel lancé sur Windows ou macOS dispose de son propre espace d'adressage virtuel, ce qui l'empêche de lire ou modifier par erreur les données d'un autre programme.

Cas d'usage

Ce concept est fondamental dans la gestion de la mémoire par le système d'exploitation. Il permet d'isoler les applications (sécurité) et de gérer la correspondance entre la mémoire vive physique (les barrettes de RAM) et la vision simplifiée qu'en a le processeur.

Bonnes pratiques

En programmation système (C, C++), il faut veiller à ne jamais tenter d'accéder à une adresse en dehors de l'espace alloué, sous peine de provoquer un plantage immédiat (souvent appelé Segmentation Fault).

Synonymes

plage d'adresses plan d'adressage adressage mémoire

Conseil

Pour bien comprendre, imaginez que l'espace d'adressage est un cahier : chaque page est une adresse. Si votre processeur est limité, votre cahier a peu de pages. En 64 bits, votre cahier est virtuellement infini pour les besoins actuels.

Questions fréquentes

Quelle est la différence entre espace physique et virtuel ?

L'espace physique correspond aux puces de RAM réelles, tandis que l'espace virtuel est une couche d'abstraction gérée par le système pour simplifier le travail des logiciels.

Pourquoi parle-t-on de 64 bits ?

Parce qu'un processeur 64 bits peut gérer un espace d'adressage colossal (des milliards de fois plus grand que le 32 bits), permettant d'utiliser d'énormes quantités de mémoire vive.

Un programme peut-il déborder de son espace ?

Normalement non, le matériel et le système d'exploitation surveillent les limites. Si un débordement survient, c'est souvent une faille de sécurité ou un bug important.