2015-01-09 3 views

답변

1

Here 긴 모드를 시작하고 종료하는 방법에 대한 자습서를 찾을 수 있습니다. 나는 그것을 직접 시도하지 않았지만, 코드는 작동하는 것처럼 보인다.

-3

UEFI에서 32 비트 모드로 전환 할 수 없습니다. CPU를 교체하고 기계를 재부팅해도 UEFI가 폭발합니다! 나머지 UEFI 펌웨어 (BIOS)는 x64 모드를 필요로하기 때문에. 32 비트 응용 프로그램을 실행할 32 비트 가상 머신을 만드는 방법은 하나뿐입니다. 64 비트 Windows가 32 비트 응용 프로그램을 실행하는 것과 정확히 같습니다.

+0

32 비트 호환 모드로 전환하면 문제가 없습니다. 물론, UEFI 서비스를 호출 할 때 64 비트 모드로 다시 전환해야합니다. – user2707695

+0

그러나 UEFI에서로드 된 경우 32 비트 창을 고려하십시오. 32 비트 커널이 긴 모드에서 시작되면 "폭발"하고 호환 모드에서는 가상 x86 모드로 들어갈 수 없습니다. 따라서 아마도 Windows 커널을 시작하기 전에 부트 로더가 실제로 레거시 모드로 전환됩니다. UEFI를 호출 할 때 부트 로더가 올바른 모드로 실행되고 32 비트 커널을 시작할 때 올바른 모드인지 확인하면됩니다. – skyking

+0

@ user2707695 사람들이 당신에게 "마이너스"를 줄 때 그들이 말하는 것을 실제 단서가없는 것은 싫지만. "... UEFI 부팅 응용 프로그램에서 64 비트 긴 모드에서 32 비트 호환 모드로 전환하려면"여기의 키는 "UEFI 부팅 응용 프로그램"입니다. 나는 나 자신을 반복 할 것이다! UEFI 환경에서는 CPU를 32 비트 모드로 전환 할 수 없습니다. 기간. 그것은 날아갈 것이다. UEFI가 단일 스레드 환경이고 인터럽트가 없더라도 드라이버 기반 아키텍처이며 드라이버는 하드웨어에 대한 알림 메커니즘을 사용합니다 (소프트웨어는 통신합니다). – Alex

관련 문제