Sommario:
Definizione - Cosa significa Modalità protetta?
La modalità protetta è una modalità operativa della CPU compatibile con Intel 80286. Consente al software di sistema di utilizzare funzionalità come la memoria virtuale, il paging e il multitasking sicuro. È inoltre progettato per aumentare il controllo del sistema operativo sul software applicativo.
Questo termine è anche noto come modalità di indirizzo virtuale protetto.
Techopedia spiega la modalità protetta
La modalità protetta è stata incorporata nell'architettura x86 di Intel all'inizio del 1982. Quindi si è evoluta in una base di base per tutte le ulteriori architetture Intel x86. Le versioni iniziali non consentivano di tornare alla modalità reale o di abilitare la modalità protetta. Tuttavia, è stata fornita un'opzione per salvare i puntatori dello stack, i registri e la maschera di interruzione nella RAM tramite un controller della tastiera. Successivamente, con l'avvento del processore 386, la modalità protetta potrebbe essere abilitata facilmente, eliminando i passaggi complessi coinvolti nell'architettura 286, che non aveva alcun meccanismo interno per uscire dalla modalità protetta.
- Livelli di privilegi: esistono quattro livelli di privilegi (chiamati anche anelli), dove l'anello 3 è il meno privilegiato e l'anello 0 è il più privilegiato. Questi anelli consentono al software di sistema di impedire alle attività di accedere ai dati. In genere, un'applicazione viene eseguita sull'anello 3 mentre il sistema operativo viene eseguito sull'anello 0.
- Modalità 8086 virtuale: Intel definisce la modalità protetta come modalità virtuale, che consente l'esecuzione di codice precedentemente scritto per 8086 su nuovi sistemi (compatibilità con le versioni precedenti) senza alcuna modifica, garantendo stabilità e sicurezza del sistema.
- Compatibilità delle applicazioni in modalità reale: Windows 3.x, insieme ai suoi successori, fornisce una compatibilità binaria con la modalità reale per eseguire applicazioni Windows 2.x, anche in modalità protetta.
- Indirizzamento del segmento: in modalità protetta, la parte del segmento viene sostituita da un selettore a 16 bit. I 13 bit superiori contengono l'indice di una voce all'interno della tabella dei descrittori. Questa voce contiene alcuni flag, un valore limite per la dimensione del segmento e l'indirizzo di linea reale del segmento. I due bit più bassi definiscono il privilegio della richiesta da 0 a 3. L'ultimo bit specifica se l'operazione è contro GDT o LDT.
- Multitasking: questa è la capacità del sistema operativo di eseguire più attività contemporaneamente. Può essere implementato solo se ogni attività è pianificata per l'esecuzione su processori diversi. Durante il passaggio da un'attività all'altra, i processori salvano le informazioni sul contesto corrente in un segmento di stato dell'attività. Quando l'attività originale deve essere riprogrammata per l'esecuzione, le informazioni salvate vengono utilizzate dai processori per impostare i loro registri interni per riprendere l'esecuzione.
- Protezione: la modalità di protezione protegge dai bug del software e aiuta il sistema operativo a eseguire il multitasking affidabile. I controlli vengono effettuati prima dell'inizio del ciclo di memoria e la conclusione di qualsiasi ciclo di memoria offensivo, generando un'eccezione. La stabilità di tutti gli strumenti di sviluppo software è garantita bloccando riferimenti di memoria illegali.
- Paging: le pagine sono sezioni di memoria. Il sistema operativo può creare un indirizzo virtuale diverso per ogni attività, impedendo a un'attività di manipolare la memoria di un'altra. Le pagine possono anche essere trasferite dalla memoria principale a quella secondaria, consentendo più spazio per la memorizzazione.
- Supporto per il debug: come parte della modalità protetta, 80386 fornisce un set di registri di debug configurabili. È possibile impostare un punto di interruzione specificando l'indirizzo di memoria desiderato in uno dei registri di debug e il tipo di ciclo per attivare il punto di interruzione. Quando viene raggiunto il punto di interruzione, viene generata un'eccezione e il debugger ottiene il controllo per visualizzare le informazioni relative allo stato interno del processore.