Modes de fonctionnement Intel 80386 : Réel, Protégé et Virtual 8086 comparés
L'Intel 80386 (1985) fut le premier CPU x86 à supporter l'informatique 32 bits tout en maintenant une compatibilité descendante totale. Il introduisit trois modes de fonctionnement distincts :
| Caractéristique | Mode Réel | Mode Protégé | Mode Virtual 8086 |
|---|---|---|---|
| Défaut au reset | Oui | Non (Basculement via bit PE dans CR0) | Non (Porte tâche / Drapeau VM86 dans EFLAGS) |
| Largeur bus d'adresse | 20 bits (A0–A19) | 32 bits (4 Go Physique) | 20 bits (Émulé) |
| Mémoire adressable max | 1 Mo | 4 Go Physique / 64 To Virtuel | 1 Mo par VM |
| Modèle de segmentation | Segments fixes 64 Ko (Base = Sélecteur × 16) | Basé descripteurs (GDT/LDT/IDT), Limite 4 Go par segment | Style Mode Réel, mais piégé par l'hyperviseur |
| Support pagination | Non | Oui (Pages 4 Ko, CR3/PDBR) | Non (OS hôte utilise pagination) |
| Anneaux de protection | Aucun (Ring 0 seulement) | 4 Anneaux (0–3) | S'exécute en Ring 3 (Traps vers Ring 0) |
| Multitâche | Coopératif (TSR) | Préemptif, Commutation tâches matérielle (TSS) | Multiples tâches VM86 sous OS Mode Protégé |
| Environnement OS typique | MS-DOS, DR-DOS, Chargeurs d'amorçage précoces | Windows NT/95+, Linux, OS/2, Unix | Apps DOS sous Windows 3.x / 9x / NTVDM |
| Jeu d'instructions | 8086 + Registres 32 bits (Préfixes override opérande/adresse) | 32 bits complet (Registres 32 bits, Adressage, Opérandes) | Sous-ensemble 8086 (Instructions privilégiées piégées) |
Signification historique
- Mode Protégé a permis les OS modernes préemptifs (Windows NT, Linux) avec protection mémoire et mémoire virtuelle.
- Mode Virtual 8086 fut la "killer feature" pour le marché PC : il permit l'intégration transparente d'applications DOS legacy (Windows 3.x, 95, 98, NTVDM dans NT) dans un environnement mode protégé.
- Mode Réel fut relégué à l'exécution du BIOS, chargeurs d'amorçage, et initialisation très précoce du noyau avant bascule vers Mode Protégé.
