드라이브가 부팅 가능한지 여부를 BIOS가 정확히 결정하는 것은 무엇입니까?
BIOS는 MBR 코드 영역 다음 에 존재하는 16 바이트 파티션 레코드를 기반으로 드라이브를 부팅 할 수 있는지 여부를 결정합니다 (446 번째 바이트 에서 시작하는 테이블에 유지 ). 각 파티션 레코드의 첫 번째 바이트는 드라이브의 부팅 가능 상태를 나타냅니다 ( 0x80
부팅 가능 또는 0x00
그렇지 않은 경우). 일부 BIOS는 MBR의 다른 부분 (예 : 파티션 유형, 체크섬)을 검사 할 수 있지만 기본 요구 사항은 부팅 가능한 플래그입니다.
시스템에 둘 이상의 드라이브가 설치된 경우 부팅 순서는 드라이브 # 1에서 어떻게 건너 뛰고 드라이브 # 2에서 부팅을 계속합니까?
이는 구현에 따라 다르므로 부팅 순서를 올바르게 선택해야합니다. 대부분의 경우 BIOS는 설정 한 순서대로 각 저장 매체를 살펴보고 MBR 데이터를 통해 해당 장치에서 부팅 할 수 있는지 여부를 결정합니다. 가능하다면 그렇지 않은 경우 다른 장치를 반복해서 반복합니다 (선택한 순서대로).
BIOS가 "부팅 가능한"파티션이없는 드라이브 # 1의 부트 로더에 제어권을 전송 한 후-두 번째 드라이브의 부트 로더는 정확히 어떻게 호출됩니까?
유효한 부팅 장치가 발견되면 (즉, 부팅 가능한 플래그가 설정되고 다른 추가 검사가 통과 된 경우) BIOS는 MBR 섹터를 RAM에 복사합니다. 그런 다음 BIOS는 명령 포인터를 JUMP
MBR 코드 세그먼트가있는 이 위치의 시작 부분으로 이동 한 다음 컴퓨터를 시작합니다.
BIOS가 BIOS Boot Specification을 지원하는 경우 MBR 코드는 특정 명령으로 BIOS에 제어권을 반환하여 부팅 실패를 알리고 다음 장치를 시도하라는 메시지를 표시 할 수 있습니다. 오래된 BIOS는 오류 메시지를 출력합니다. BIOS가 지원하는지 잘 알면 USB로 부팅 할 수 있는지 여부입니다.
제 이해는 BIOS가 일반적으로 MBR에서 확인하는 유일한 것은 512 바이트 섹터의 맨 끝에있는 서명이며, 부팅 섹터의 첫 번째 446 바이트에 위치한 초기 부트 로더로 제어권을 넘깁니다.
대부분의 최신 BIOS는 GUID 파티션 테이블과 기존의 기존 MBR 스타일 테이블을 찾습니다.
디스크를 부팅 할 수없는 경우에도 부트 섹터의 처음 446 바이트에 의미있는 부트 로더 코드가 포함되어야 함을 의미합니까?
아니요 , 그러나 드라이브 에는 유효한 MBR 또는 GUID 파티션 테이블이 있어야합니다. 그렇지 않으면 컴퓨터가이를 감지하지 못합니다. MBR의 코드 부분은 실제로 비어있을 수 있지만 드라이브의 첫 번째 섹터에는 올바른 형식의 MBR / GPT가 있어야합니다.