Un système d'exploitation informatique moderne utilise généralement la mémoire virtuelle pour fournir des espaces d'adressage séparés ou des régions d'un seul espace d'adressage...
Worldlex WikiFrancaisLecture gratuite
Un système d'exploitation informatique moderne utilise généralement la mémoire virtuelle pour fournir des espaces d'adressage séparés ou des régions d'un seul espace d'adressage, appelés espace utilisateur et espace noyau . Cette séparation assure principalement la protection de la mémoire et du matériel contre les comportements logiciels malveillants ou erronés.
Aperçu
Le terme « espace utilisateur » (ou « userland » ) désigne tout code exécuté en dehors du noyau du système d'exploitation. L'espace utilisateur désigne généralement les différents programmes et bibliothèques utilisés par le système d'exploitation pour interagir avec le noyau : logiciels d' entrée/sortie , de manipulation des objets du système de fichiers , logiciels d'application , etc.
Chaque processus utilisateur s'exécute généralement dans son propre espace mémoire virtuel et, sauf autorisation explicite, ne peut accéder à la mémoire des autres processus. C'est le principe de base de la protection de la mémoire dans les systèmes d'exploitation courants actuels et un élément fondamental de la séparation des privilèges . Un mode utilisateur distinct peut également servir à créer des machines virtuelles performantes (voir les exigences de virtualisation de Popek et Goldberg ). Disposant de privilèges suffisants, les processus peuvent demander au noyau de mapper une partie de l'espace mémoire d'un autre processus, comme c'est le cas pour les débogueurs . Les programmes peuvent également demander le partage de régions de mémoire avec d'autres processus, bien que d'autres techniques permettent la communication interprocessus .