Modo real


El modo real , también llamado modo de dirección real , es un modo operativo de todas las CPU compatibles con x86 . El modo recibe su nombre del hecho de que las direcciones en modo real siempre corresponden a ubicaciones reales en la memoria. El modo real se caracteriza por un espacio de direcciones de memoria segmentada de 20 bits (que proporciona exactamente 1 MB de memoria direccionable) y acceso directo ilimitado al software a toda la memoria direccionable, direcciones de E / S y hardware periférico. El modo real no brinda soporte para protección de memoria, multitarea o niveles de privilegios de código.

Antes del lanzamiento del 80286 , que introdujo el modo protegido , el modo real era el único modo disponible para las CPU x86; [1] y para compatibilidad con versiones anteriores , todas las CPU x86 se inician en modo real cuando se reinician, aunque es posible emular el modo real en otros sistemas cuando se inician en otros modos.

La arquitectura 286 introdujo el modo protegido , lo que permite (entre otras cosas) protección de memoria a nivel de hardware. Sin embargo, el uso de estas nuevas funciones requería un nuevo sistema operativo diseñado específicamente para el modo protegido. Dado que una especificación de diseño principal de los microprocesadores x86 es que son totalmente compatibles con el software escrito para todos los chips x86 anteriores a ellos, el chip 286 se hizo para comenzar en 'modo real', es decir, en un modo que apagaba la nueva memoria. funciones de protección, de modo que pueda ejecutar sistemas operativos escritos para el 8086 y el 8088 . A partir de 2018, las CPU x86 actuales (incluidas las x86-64 CPU) pueden arrancar sistemas operativos en modo real y pueden ejecutar software escrito para casi cualquier chip x86 anterior sin emulación o virtualización.

El BIOS de la PC que IBM introdujo funciona en modo real, al igual que los sistemas operativos DOS ( MS-DOS , DR-DOS , etc.). Las primeras versiones de Microsoft Windows se ejecutaron en modo real. Windows / 386 hizo posible hacer algún uso del modo protegido, y esto se realizó de manera más completa en Windows 3.0, que podría ejecutarse en modo real o hacer uso del modo protegido a la manera de Windows / 386. Windows 3.0 en realidad tenía varios modos: "modo real", "modo estándar" y "modo 386 mejorado", este último requería algunas de las funciones de virtualización del procesador 80386 y, por lo tanto, no se ejecutaría en un 80286. Windows 3.1 eliminó la compatibilidad. para el modo real, y fue el primer entorno operativo convencional que requirió al menos un procesador 80286. Ninguna de estas versiones podría considerarse un sistema operativo x86 moderno, ya que cambiaron al modo protegido solo para ciertas funciones. Unix , Linux , OS / 2 , Windows NT3.xy posteriores Windows NT, etc. se consideran sistemas operativos modernos, ya que cambian la CPU al modo protegido al inicio, nunca regresan al modo real y brindan todos los beneficios del modo protegido todo el tiempo. Los sistemas operativos de 64 bits usan el modo real solo en la etapa de inicio, y el kernel del sistema operativo cambiará la CPU a modo largo . [2] Vale la pena señalar que el modo protegido del 80286 es considerablemente más primitivo que el modo protegido mejorado introducido con el 80386; este último a veces se denomina modo protegido 386, y es el modo en el que se ejecutan los sistemas operativos x86 modernos de 32 bits.