Tengo una CPU moderna de 64 bits. ¿Mi BIOS todavía funciona en modo REAL de 16 bits?
11
Como todavía es necesario arrancar, me pregunto, en un sistema x64 / AMD64 de 64 bits, ¿el BIOS todavía usa instrucciones de 16 bits? ¿Funciona también en MODO REAL?
Wikipedia: "Las limitaciones del BIOS (modo de procesador de 16 bits, solo 1 espacio direccionable MiB, dependencias de hardware de PC AT, etc.) se consideraron claramente inaceptables para las plataformas informáticas más nuevas. La interfaz de firmware extensible (EFI) es una especificación que reemplaza el tiempo de ejecución interfaz del BIOS heredado " .
Daniel Beck
@Daniel Beck, pensé que EFI era solo para Mac e Itanium.
unixman83
77
@ unixman83: la mayoría de las nuevas placas base Intel se ejecutan en EFI desde que llegó Sandy Bridge. Es probable que AMD haga lo mismo cuando Bulldozer golpee. El verdadero obstáculo ha sido que los discos formateados con MFT no son arrancables si son mayores de 2 TB ... un límite que se acaba de alcanzar. Necesita EFI para arrancar un disco con formato GPT (que puede ser mucho, mucho más grande)
Shinrai
@ unixman83: eliminé tu "respuesta" porque no es una respuesta, sino solo una copia / pegado del comentario de Shinrai.
studiohack
No hay nada que impida que el BIOS lea y comprenda GPT, y los gestores de arranque también pueden acceder a mucho más de 2 TB utilizando llamadas de BIOS, por lo que la "necesidad de EFI" para discos grandes es un mito (tristemente extendido).
Patrick Georgi
Respuestas:
6
Los procesadores x86 aún comienzan en modo real. Los BIOS son libres (y a veces forzados) para cambiar a modos protegidos o largos mientras inicializan su hardware, pero cuando transfieren el control al Sistema Operativo (o más bien a su gestor de arranque), tienen que volver al modo real, porque eso es lo que Estos cargadores esperan que el sistema esté instalado.
coreboot y UEFI cambian al modo protegido bastante temprano, mientras que para PCBIOSes (phoenix / award, ami, etc.), no podemos decirlo. Son de código cerrado y generalmente no dicen mucho acerca de sus componentes internos, y sus interfaces están especificadas como modo real.
Para los sistemas que se ejecutan con RAM ECC, puede estar relativamente seguro de que cambian a algún modo que sea capaz de direccionar toda la RAM, por lo que pasan al menos al modo protegido, eso es porque necesitan inicializar la memoria (escriba algún valor en cada dirección ) en el arranque o el sistema se detendría si algún código posterior lee direcciones en las que nunca se escribió (debido a la detección de errores que podría producir un falso positivo). Pero como se dijo, eso es interno al BIOS, y nada en lo que los simples mortales puedan darse cuenta fácilmente o en lo que tengan que pensar.
tl; dr: BIOS está en modo real en todos los puntos donde es visible externamente, por lo que para todos los efectos puede ejecutarse en modo real todo el tiempo.
Respuestas:
Los procesadores x86 aún comienzan en modo real. Los BIOS son libres (y a veces forzados) para cambiar a modos protegidos o largos mientras inicializan su hardware, pero cuando transfieren el control al Sistema Operativo (o más bien a su gestor de arranque), tienen que volver al modo real, porque eso es lo que Estos cargadores esperan que el sistema esté instalado.
coreboot y UEFI cambian al modo protegido bastante temprano, mientras que para PCBIOSes (phoenix / award, ami, etc.), no podemos decirlo. Son de código cerrado y generalmente no dicen mucho acerca de sus componentes internos, y sus interfaces están especificadas como modo real.
Para los sistemas que se ejecutan con RAM ECC, puede estar relativamente seguro de que cambian a algún modo que sea capaz de direccionar toda la RAM, por lo que pasan al menos al modo protegido, eso es porque necesitan inicializar la memoria (escriba algún valor en cada dirección ) en el arranque o el sistema se detendría si algún código posterior lee direcciones en las que nunca se escribió (debido a la detección de errores que podría producir un falso positivo). Pero como se dijo, eso es interno al BIOS, y nada en lo que los simples mortales puedan darse cuenta fácilmente o en lo que tengan que pensar.
tl; dr: BIOS está en modo real en todos los puntos donde es visible externamente, por lo que para todos los efectos puede ejecutarse en modo real todo el tiempo.
fuente