Êtes-vous un étudiant de l'EPFL à la recherche d'un projet de semestre?
Travaillez avec nous sur des projets en science des données et en visualisation, et déployez votre projet sous forme d'application sur Graph Search.
Le mode protégé est un mode de fonctionnement des processeurs basés sur l'architecture x86 d'Intel à partir du 80286. Il est aussi présent dans les séries x86-64 sous deux formes possibles : et . L'introduction du mode protégé a pour but d'ajouter, à côté du mode dit réel compatible avec l'existant, de nouvelles fonctionnalités pour favoriser le multitâche et la stabilité du système en proposant une assistance matérielle pour les points suivants : protection de la mémoire (niveaux de privilèges) ; support de la mémoire virtuelle (segmentation puis, à partir du 80386, pagination) ; commutation de contexte ; adressage sur à partir du 80386. La plupart des systèmes d'exploitation modernes x86, de Linux à FreeBSD en passant par Windows depuis la version 3.1, fonctionnent dans ce mode. Pour des raisons de compatibilité, un ordinateur se lance en mode réel et le basculement en mode protégé s'effectue ensuite. Il s'agit d'une des premières tâches faites par le système d'exploitation après l'amorçage. La segmentation ne peut pas être complètement désactivée en mode protégé. Mais à la différence du mode réel, les segments sont entièrement programmables. C’est avec la segmentation que sont instaurés les niveaux de privilèges (anneaux, voir ci-dessous). Chaque segment possède un niveau de 0 à 3. La segmentation sert aussi de support à la mémoire virtuelle. En effet, un segment est constitué d’une base (adresse physique — appelée linéaire si la pagination est activée — de départ dans la mémoire) et d’une limite qui définit sa longueur. À l’intérieur d’un segment, l’adresse logique 0 correspond à la base de ce segment. Un segment peut donc être déplacé avec ses données de façon transparente. De plus le descripteur de chaque segment contient un bit P pour « présent » qui indique si les données sont en mémoire vive ou pas. Si ce bit est éteint, lors d'un accès à ce segment, une exception se déclenche qui permet au système d’exploitation d’aller chercher les données où elles se trouvent et de les copier en mémoire vive.
Edoardo Charbon, Pouyan Keshavarzian, Jiuxuan Zhao, Francesco Gramuglia, Myung Jae Lee
Joan Decker, Chunmin Zhang, Fang Liu
Edoardo Charbon, Fabio Sebastiano, Alessandro Catania