UEFI GPT 부팅에서 NTDETECT 및 NTOSKRNL을 사용할 수 있습니까?

UEFI GPT 부팅에서 NTDETECT 및 NTOSKRNL을 사용할 수 있습니까?

ESP가 부팅 관리자를 호출하여 부팅 로더 로드를 시작하고 커널로 전달한 후의 프로세스를 이해할 수 없습니다.

제가 언급한 마지막 단계에서는 여기에서 NTDETECT 또는 NTOSKRNL이 호출되고 WINLOGON 또는 LTASS가 호출되는지 이해할 수 없습니다. 아니면 UEFI GPT 부팅과 다를까요?

누구든지 설명할 수 있나요?

답변1

ESP가 부팅 관리자를 호출하여 부팅 로더 로드를 시작하고 커널로 전달한 후의 프로세스를 이해할 수 없습니다.

부팅 프로세스는 ESP가 아닌 펌웨어(EFI)에 의해 수행됩니다. "ESP"는 펌웨어에서 사용하는 파일(부트로더 등)을 보관하는 파티션일 뿐입니다.

EFI 펌웨어에는 NVRAM에 설정을 저장하는 부팅 관리자가 내장되어 있습니다. 이를 통해 ESP에서 실제로 로드할 파일을 알 수 있습니다.

그러나 BOOTMGR 또는 NTLDR과 같은 것에 대해 이야기할 때 펌웨어는 실제로 부팅 관리자와 부트 로더를 구별하지 않습니다. 둘 다 펌웨어에 의해 시작되는 .efi 응용 프로그램일 뿐입니다. (또한 BIOS에서는 둘 다 동일한 종류의 부트 섹터입니다.)

응용 프로그램이 OS를 선택하는 메뉴 표시를 지원하는 경우(예: NTLDR 또는 BOOTMGR) 이를 부팅 관리자라고 합니다. WINLOAD처럼 OS 커널 자체 시작을 지원하는 경우 이를 부트 로더라고 합니다. 하지만 펌웨어에서는 여전히 동일한 유형의 프로그램입니다.

BIOS에서는 다음과 같습니다.

  1. 펌웨어는 NVRAM 데이터(일반적으로 "CMOS" 또는 "BIOS 설정"이라고 함)를 읽어 사용할 디스크의 MBR을 알려줍니다.
  2. 펌웨어는 MBR 부팅 섹터를 시작한 다음 Windows 시스템 파티션에서 BOOTMGR(Windows 부팅 관리자의 BIOS 변형)을 시작합니다.
  3. Windows 부팅 관리자는 BCD를 읽고 필요한 경우 메뉴를 표시한 다음 기본 Windows 파티션에서 WINLOAD.EXE(Windows 부팅 로더의 BIOS 변형)를 시작합니다.
  4. Windows 부트 로더는 NTOSKRNL.EXE(기본 Windows 커널)를 시작합니다.

그리고 UEFI에서는:

  1. *.EFI펌웨어는 NVRAM 데이터(EFI 변수)를 읽어 어떤 파일을 사용할지, 어떤 디스크에서 찾을지 알려줍니다 .
  2. 펌웨어는 EFI 시스템 파티션에서 BOOTMGFW.EFI(Windows 부팅 관리자의 EFI 변형)를 시작합니다.
  3. Windows 부팅 관리자는 BCD를 읽고 필요한 경우 메뉴를 표시한 다음 기본 Windows 파티션에서 WINLOAD.EFI(Windows 부팅 로더의 EFI 변형)를 시작합니다.
  4. Windows 부트 로더는 NTOSKRNL.EXE(기본 Windows 커널)를 시작합니다.

둘 다 결국 동일한 커널을 시작합니다. 이후의 프로세스는 두 펌웨어 유형 모두 동일합니다. LSASS와 같은 Windows 구성 요소상관 안해EFI 모드로 부팅하든 BIOS 모드로 부팅하든 상관없이 시작될 때 펌웨어의 주요 작업은 이미 완료되었습니다.

관련 정보