Skip to main content

Qual è la modalità reale?

La modalità reale è uno schema di trasmissione della memoria e uno stato operativo per i microprocessori del computer.In modalità reale, la memoria a cui è possibile accedere da un programma mdash;di solito memoria di accesso casuale (RAM) e mdash;non è gestito o buffer in alcun modo dall'hardware, software o servizi di input e output di base (BIOS).Ciò significa che un programma è in grado di accedere a tutti gli indirizzi di memoria raggiungibili, indipendentemente da ciò per cui viene utilizzata la memoria e deve gestire tutti gli aspetti della lettura e della scrittura in posizioni di memoria da solo.Diverse restrizioni arrivano con l'utilizzo della modalità reale, incluso il fatto che la quantità di memoria accessibile è limitata a 1 megabyte, perché il processore in questa modalità consente agli indirizzi di avere solo 20 bit di lunghezza.Da una prospettiva pratica, il software per computer non utilizza più la modalità reale, perché è stato sostituito da una modalità di indirizzamento più sicura, espandibile e più flessibile nota come modalità protetta.

L'unità di elaborazione centrale (CPU) di un computer è dove la modalità reale puòessere attivato e la maggior parte degli aspetti della modalità si tratta effettivamente di problemi di solito visti nelle applicazioni scritte in linguaggio assembly, perché sono abbastanza atomiche di natura.I chip del processore basati sull'architettura 8086 originali iniziano in modalità reale quando sono in grado di eseguire programmi che sono stati scritti per hardware precedente, anche se questo spesso richiederebbe un successo del software di emulazione.La modalità protetta ha quasi completamente sostituito il vero indirizzamento, a partire dal 2011, al punto in cui ci sono pochissimi compilatori disponibili che possono persino compilare un programma in grado di utilizzare un indirizzo reale e ancora meno sistemi operativi mainstream che potrebbero eseguirlo.

Memoria in veraLa modalità è fondamentalmente una singola sequenza lineare di byte a cui è possibile accedere liberamente con un indirizzo costituito da un indirizzo di segmento a 16 bit e un offset di 4 bit all'interno del segmento, facendo un indirizzo completo a 20 bit quando combinato.Un programma può accedere a qualsiasi punto in memoria e leggere o scrivere qualsiasi cosa, indipendentemente da ciò che è nella posizione.Ciò significa che, senza una corretta gestione e conoscenza, un programma che utilizza la modalità di indirizzamento reale potrebbe facilmente sovrascrivere il sistema operativo e il BIOS del sistema, attivare un interruzione hardware fisica o inviare accidentalmente un segnale a un dispositivo periferico.Questo non solo potrebbe causare il congelamento o il crash di un sistema, ma potrebbe anche causare perdita di dati o danni fisici all'hardware.

Come architettura del processore avanzata e la modalità protetta alla fine ha sostituito la modalità reale in quasi tutti i software.Nel tempo, l'uso della modalità di indirizzamento reale non è diventato inutile, perché non era in grado di accedere a più di 1 megabyte di RAM e incapace di utilizzare più di 20 bit del bus di sistema, il che significa che poteva usare solo una frazione delle risorse disponibili sulla maggior partecomputer.L'indirizzamento reale rappresenta anche un rischio significativo per la sicurezza.Uno dei pochi modi per scrivere un programma che utilizza la modalità di indirizzamento reale è utilizzare il linguaggio dell'assembly ed eseguire il programma in uno speciale sistema operativo per disco (DOS) che non passa automaticamente alla modalità protetta all'avvio.