¿Qué es el modo real?

El modo real es un esquema de direccionamiento de memoria y un estado operativo para microprocesadores de computadora. En modo real, la memoria a la que puede acceder un programa, generalmente la memoria de acceso aleatorio (RAM), no es administrada ni almacenada en búfer de ninguna manera por el hardware, el software o los servicios básicos de entrada y salida (BIOS). Esto significa que un programa puede acceder a todas las direcciones de memoria accesibles, independientemente de para qué se esté utilizando la memoria, y debe administrar todos los aspectos de lectura y escritura en las ubicaciones de la memoria por sí mismo. Varias restricciones vienen con el uso del modo real, incluido el hecho de que la cantidad de memoria accesible está limitada a 1 megabyte, porque el procesador en este modo permite que las direcciones tengan solo 20 bits de longitud. Desde una perspectiva práctica, el software de computadora ya no usa el modo real, porque fue reemplazado por un modo de direccionamiento más seguro, expandible y más flexible conocido como modo protegido.

La unidad central de procesamiento (CPU) de una computadora es donde se puede activar el modo real, y la mayoría de los aspectos del modo realmente tratan con problemas que generalmente se ven en aplicaciones escritas en lenguaje ensamblador, porque son de naturaleza bastante atómica. Los chips de procesador que se basan en la arquitectura 8086 original comienzan en modo real cuando se encienden para poder ejecutar programas que fueron escritos para hardware anterior, aunque esto a menudo requeriría software de emulación para tener éxito. El modo protegido ha reemplazado casi por completo el direccionamiento real, a partir de 2011, hasta el punto en que hay muy pocos compiladores disponibles que puedan incluso compilar un programa que pueda usar direccionamiento real y aún menos sistemas operativos convencionales que puedan ejecutarlo.

La memoria en modo real es básicamente una secuencia lineal única de bytes a la que se puede acceder libremente con una dirección compuesta por una dirección de segmento de 16 bits y un desplazamiento de 4 bits dentro del segmento, lo que hace una dirección completa de 20 bits cuando se combina. Un programa puede acceder a cualquier punto de la memoria y leer o escribir cualquier cosa, independientemente de la ubicación. Esto significa que, sin la administración y el conocimiento adecuados, un programa que utilice el modo de direccionamiento real podría sobrescribir fácilmente el sistema operativo y el BIOS del sistema, desencadenar una interrupción física del hardware o enviar accidentalmente una señal a un dispositivo periférico. Esto no solo podría hacer que un sistema se congelara o bloqueara, sino que también podría causar la pérdida de datos o daños físicos al hardware.

A medida que avanzaba la arquitectura del procesador, el modo protegido finalmente reemplazó al modo real en casi todo el software. Con el tiempo, el uso del modo de direccionamiento real se volvió innecesario, porque era incapaz de acceder a más de 1 megabyte de RAM y no podía usar más de 20 bits del bus del sistema, lo que significa que solo podía usar una fracción de los recursos disponibles en la mayoría de los casos. ordenadores. El direccionamiento real también plantea un riesgo de seguridad significativo. Una de las pocas formas de escribir un programa que usa el modo de direccionamiento real es usar lenguaje ensamblador y ejecutar el programa bajo un sistema operativo de disco especial (DOS) que no cambia automáticamente al modo protegido al inicio.