
Tengo una Surface Pro 3 que ejecuta Windows 8.1 de 64 bits de forma nativa. Por extensión, la UEFI del dispositivo tiene un cargador de arranque de 64 bits.
Estoy intentando configurar el dispositivo para permitir un arranque VHD en un sistema operativo Windows 8.1 de 32 bits. Cuando finalmente inicio la imagen VHD, termino con un mensaje de error que indica que la imagen está corrupta.
Los pasos que tomé fueron los siguientes. Primero creé el archivo vhdx:
diskpart
create vdisk file=D:\windows8.vhdx maximum=40960 type=expandable
select vdisk file=D:\windows8.vhdx
attach vdisk
create partition primary
assign letter=F
format quick label=VHDX
exit
Luego monté la imagen de Windows 8.1 de 32 bits en mi E:\
disco y apliqué la imagen al archivo .vhdx:
dism /Apply-Imaeg /ImageFile:E:\Sources\install.wim /index:1 /ApplyDir:F:\
Después de hacerlo, utilicé bcdboot para generar las entradas del cargador de arranque:
F:\Windows\system32\bcdboot.exe F:\Windows /s F: /f ALL /d /addlast
Luego, busqué la entrada del cargador de arranque y agregué el tipo de inicio del hipervisor y una descripción adecuada:
bcdedit /v
bcdedit /set {GUID-FROM-ABOVE} hypervisorlaunchtype auto
bcdedit /set {GUID-FROM-ABOVE} description Windows 8.1 32-bit (VHDX)
Luego reinicié el dispositivo para poder seleccionar la imagen de arranque VHD:
shutdown /r /o /t 0
Cuando finalmente inicié la imagen recibí el siguiente error:
Your PC needs to be repaired
File: \windows\system32\winload.efi
Error code: 0xc0000359
The application or operating system couldn't be loaded because a required file is missing or contains errors.
¿Qué estoy haciendo mal aquí?
Respuesta1
Información adicional actualizada sobreArranque UEFI multiplataforma de Windows.
Soporte de Windows para UEFI
Microsoft comenzó con soporte para EFI 1.10 en servidores y luego agregó soporte para UEFI tanto en clientes como en servidores.
Con UEFI 2.3.1, existen versiones de UEFI x86 y x64. Windows 10 admite ambos. Sin embargo, UEFI no admite el arranque multiplataforma. Esto significa que una computadora que tiene UEFI x64 solo puede ejecutar un sistema operativo de 64 bits y una computadora que tiene UEFI x86 solo puede ejecutar un sistema operativo de 32 bits.
Adición de información sobre el arranque desde Windows 10, Windows To Go para UEFI vs Legacy | 32 frente a 64 bits.
https://technet.microsoft.com/en-us/library/mt185782(v=vs.85).aspx
Comprobación de la compatibilidad arquitectónica entre la PC host y la unidad Windows To Go
Además de la compatibilidad con el arranque USB en el BIOS, la imagen de Windows 10 en su unidad Windows To Go debe ser compatible con la arquitectura del procesador y el firmware de la PC host, como se muestra en la siguiente tabla.
También tengo una Surface Pro 3 y he encontrado y experimentado algunas peculiaridades.
Surface Pro 3 tiene las siguientes características/problemas:
- Es unDispositivo UEFI "únicamente"
- No hay compatibilidad con BIOS/CSM (modo de compatibilidad) heredado(La mayoría de las máquinas tendrán una configuración en el firmware que le permitirá habilitarlo, pero no en esta máquina)
- Por eso,arrancar sistemas operativos antiguosen estas máquinas nuevas no es compatible.
- No parece ser compatible y lo más probable es que no se pueda hacer; a menos que alguien encuentre un truco o una solución alternativa (no respaldada oficialmente por Microsoft).
- Además, Surface Pro 3 se envía de fábrica con arranque seguro, TPM y su disco duro y particiones están de forma predeterminada en estado de bloqueo de bits.
- Estas 3 cosas causan una serie completamente diferente de problemas con el arranque de los sistemas operativos.
- Para el arranque nativo de VHD tuve que desactivarlos.
¿Por qué es esto un problema y por qué sucede esto?
Un ejemplo en una nota similar:
- Tuve muchos problemas al intentar iniciar Windows 7 x64 SP1 en una computadora portátil Toshiba el año pasado a pesar de que tenía el modo CSM heredado.
- tenia algunosFirmware/controlador GOPcuestiones como se señala aquí en MSFN. http://www.msfn.org/board/topic/172462-migrate-windows-7-or-8-install-from-bios-machine-to-native-boot-vhd/
- No entiendo completamente cuál fue el problema del Partido Republicano y no puedo explicarlo más.
Resumen esencial: En máquinas más nuevas (como Surface Pro 3 y esa computadora portátil Toshiba), los OEM han comenzado a eliminar ciertas cosas (ejemplos enumerados anteriormente) que ayudarían con la compatibilidad con versiones anteriores para arrancar y ejecutar sistemas operativos más antiguos.
Citando con algo similarhiloyresponderpor "JHoff80" en los foros de Microsoft:
Lo siento, pero creo que eres SOL. Según tengo entendido, UEFI debe tener la misma arquitectura que el sistema operativo que estás intentando ejecutar. Surface Pro UEFI es de 64 bits, por lo que solo puedes ejecutar un sistema operativo de 64 bits allí.
Desafortunadamente, Surface tampoco tiene la opción "Legacy Boot" para emular un BIOS como lo tienen muchas otras PC.
Artículos e información adicionales sobre el arranque UEFI de 32 bits:
Parece que hay problemas y limitaciones en torno al arranque UEFI de 32 bits, especialmente con una variedad de combinaciones de hardware + firmware + partición + sistema operativo.
Me encontré con lo siguiente y podría tener cierta relevancia aquí para ayudar a las personas a depurar y resolver sus problemas.
Sitio de Ubuntu citado a continuación. https://help.ubuntu.com/community/UEFI
Para instalar Ubuntu en modo UEFI:
- Utilice un disco de 64 bits de Ubuntu. (Ubuntu32bit no se puede instalar fácilmente en modo UEFI. Esto es un problema si UEFI de 32 bits es la única forma en que su computadora puede arrancar, por ejemplo, si tiene una computadora portátil moderna basada en Intel Atom. En este caso, necesitaráuna solución complicada.)
Arranque UEFI de 32 bits usando E2B:
http://rmprepusb.blogspot.com/2014/09/32-bit-uefi-booting-using-e2b.html
- Easy2Boot y RMprepUSB deestebanson herramientas para realizar arranque múltiple en una gran variedad de sistemas: http://www.easy2boot.com|http://rmprepusb.com
Algunas tabletas basadas en Intel Atom son UEFI únicamente de 32 bits (incluso si la CPU Atom en sí es una CPU de 64 bits).
El problema es que si la tableta del usuario es un sistema UEFI de 32 bits (que no admite el modo CSM\MBR), entonces necesita encontrar un sistema operativo que sea de arranque UEFI de 32 bits, ¡y no hay muchos de estos por ahí!
Nota: Si son de arranque UEFI de 32 bits, contendrán el archivo \EFI\boot\bootia32.efi (entre otros). Si no contienen ese archivo, no arrancarán desde una unidad USB E2B en un sistema UEFI de 32 bits.
Las instrucciones (encontradas por Karan) para iniciar Ubuntu desde el Asus T100 están [aquí][5]. Karan descubrió que podía copiar el archivo bootia32.efi desde [aquí][6] a un archivo .imgPTN de Ubuntu 14.04 de 64 bits (\EFI\boot\bootia32.efi) y su sistema Intel Atom arrancó. Sospecho que esto solo funcionará si su firmware es UEFI de 32 bits pero su CPU es de 64 bits, como el [Notion Ink CN89553G][7] de Karan.
Similar:https://superuser.com/a/889802/183467
Algunos sistemas no admiten el arranque Legacy\CSM\MBR. Busque estas opciones en la configuración del firmware y también desactive el arranque rápido. Los sistemas sin la opción Legacy\CSM\MBR solo pueden iniciar mediante UEFI. LinuxLive y E2B son para sistemas de arranque Legacy\CSM\MBR.