Como escribí en mi respuesta a esa pregunta, la sabiduría popular recibida sobre el tema, como desafortunadamente ejemplificada por otras respuestas allí (y en otra parte en SuperUser), está atrapada en el mundo como lo fue alrededor de 1991, a pesar de la gran cantidad de referencias técnicas disponibles que explican como es ahora lo contrario.
No habría estado tan confundido si hubiera leído mi respuesta, porque no estaría preguntando sobre "BIOS cargado desde ROM" en primer lugar.
Su "chip BIOS" no es ROM; no hay código de máquina entre el inicio del procesador y la primera instrucción en el firmware; y la "M" en "RAM" y "ROM" significa "memoria".
Como escribí antes, en las PC modernas, el firmware de la máquina se almacena en RAM no volátil . No es ROM como solía ser. Consulte la respuesta anterior para obtener detalles del chip NVRAM conectado al bus LPC. (Por ejemplo: en una máquina desarmada a mi lado mientras escribo esto, la NVRAM que contiene el firmware es un Pm49FL004T, un chip LPC Flash RAM).
Las CPU de 32 bits no se inician en modo real y no comienzan con una dirección que esté por debajo de la línea de 1MiB. Eso es basura desactualizada décadas atrás de los tiempos de los procesadores x86 de 16 bits. Comienzan en lo que se conoce coloquialmente como modo irreal , y nuevamente en mi respuesta anterior di los detalles de lo que realmente ha sido el caso desde la llegada del 80386 . Cargan su primera instrucción de una dirección que es, de hecho, a la derecha en la parte superior del espacio de direcciones de 32 bits, FFFFFFF0
.
En mi respuesta anterior, le dije en detalle dónde el firmware de la máquina se asigna principalmente al espacio de direcciones físicas en máquinas x86 de 32 bits y 64 bits. Recuerde: tanto la RAM como la ROM son memoria . Las direcciones físicas son direcciones de memoria , en el bus del sistema. Pueden abordar RAM o ROM. (Incluso pueden abordar otras cosas también, pero eso solo complica esta discusión). La dirección física FFFFFFF0
está 16 bytes por debajo de la parte superior del rango de 512 KB, donde los 512 KB superiores del firmware, en la RAM no volátil, siempre se asignan en el bus de sistema por el "chipset".
No hay "carga" de algún chip ROM mítico que se inicia en la inicialización o reinicio del procesador. El chip que contiene el firmware es RAM no volátil . Conserva su contenido, escrito cuando se "flashea", a través de los ciclos de energía. Y la CPU solo lee las instrucciones y los datos del firmware, a través del bus del sistema y sobre un bus LPC (y posiblemente un puente LPC / FWH) conectado al bus del sistema a través del chipset, utilizando una dirección de memoria física.
Otras lecturas