Was ist der echte Modus?
Der Real-Modus ist ein Speicheradressierungsschema und ein Betriebszustand für Computer-Mikroprozessoren. Im Real-Modus wird der Speicher, auf den ein Programm zugreifen kann - normalerweise Arbeitsspeicher (RAM) - von der Hardware, Software oder den grundlegenden Eingabe- und Ausgabediensten (BIOS) in keiner Weise verwaltet oder gepuffert. Dies bedeutet, dass ein Programm auf alle erreichbaren Speicheradressen zugreifen kann, unabhängig davon, wofür der Speicher verwendet wird, und alle Aspekte des Lesens und Schreibens in Speicherorte selbst verwalten muss. Die Verwendung des Real-Modus unterliegt mehreren Einschränkungen, einschließlich der Tatsache, dass der verfügbare Speicher auf 1 Megabyte begrenzt ist, da der Prozessor in diesem Modus nur Adressen mit einer Länge von 20 Bit zulässt. Aus praktischer Sicht verwendet Computersoftware nicht mehr den Real-Modus, da dieser durch einen sichereren, erweiterbaren und flexibleren Adressierungsmodus, den so genannten geschützten Modus, ersetzt wurde.
In der zentralen Prozessoreinheit (CPU) eines Computers kann der Real-Modus aktiviert werden, und die meisten Aspekte des Modus befassen sich mit Problemen, die normalerweise in Anwendungen auftreten, die in Assemblersprache geschrieben sind, da sie relativ atomar sind. Prozessorchips, die auf der ursprünglichen 8086-Architektur basieren, werden beim Einschalten im Real-Modus gestartet, um Programme ausführen zu können, die für frühere Hardware geschrieben wurden, obwohl dies häufig eine Emulationssoftware erfordert, um erfolgreich zu sein. Der geschützte Modus hat die reale Adressierung ab 2011 fast vollständig abgelöst, so dass nur noch wenige Compiler zur Verfügung stehen, die sogar ein Programm kompilieren können, das die reale Adressierung verwendet, und noch weniger Hauptbetriebssysteme, auf denen es ausgeführt werden kann.
Der Speicher im Real-Modus ist im Grunde genommen eine einzelne lineare Folge von Bytes, auf die mit einer Adresse, die aus einer 16-Bit-Segmentadresse und einem 4-Bit-Versatz innerhalb des Segments besteht, frei zugegriffen werden kann, wodurch eine vollständige 20-Bit-Adresse entsteht, wenn sie kombiniert wird. Ein Programm kann auf jeden Punkt im Speicher zugreifen und alles lesen oder schreiben, unabhängig davon, was sich am Speicherort befindet. Dies bedeutet, dass ein Programm, das den Real-Adressierungsmodus verwendet, ohne ordnungsgemäße Verwaltung und Kenntnisse das Betriebssystem und das System-BIOS leicht überschreiben, einen physischen Hardware-Interrupt auslösen oder versehentlich ein Signal an ein Peripheriegerät senden kann. Dies kann nicht nur dazu führen, dass ein System einfriert oder abstürzt, sondern auch zu Datenverlust oder physischer Beschädigung der Hardware.
Im Zuge der Weiterentwicklung der Prozessorarchitektur ersetzte der geschützte Modus in fast jeder Software den realen Modus. Im Laufe der Zeit wurde die Verwendung des Real-Adressierungsmodus unnötig, da auf mehr als 1 MB RAM nicht zugegriffen werden konnte und nicht mehr als 20 Bit des Systembusses verwendet werden konnten. Dies bedeutet, dass nur ein Bruchteil der auf den meisten verfügbaren Ressourcen verwendet werden konnte Computers. Eine echte Adressierung birgt auch ein erhebliches Sicherheitsrisiko. Eine der wenigen Möglichkeiten, ein Programm zu schreiben, das den realen Adressierungsmodus verwendet, besteht darin, die Assemblersprache zu verwenden und das Programm unter einem speziellen Festplattenbetriebssystem (DOS) auszuführen, das beim Start nicht automatisch in den geschützten Modus wechselt.