마스터 부트 레코드 크기 제한에 대한 참고 사항

마스터 부트 레코드 크기 제한에 대한 참고 사항

마스터 부트 레코드 레이아웃에 대해 읽고 있는데, 특히 파티션 레이아웃으로 인해 MBR이 있는 장치에서 사용할 수 있는 저장소 크기가 제한되는 방식에 관심이 있습니다.

MBR의 각 파티션은 16바이트 항목을 사용하여 정의됩니다. 이 16바이트의 용도는 다음과 같습니다.

  • 값이 80인 경우 첫 번째 바이트는 활성 파티션을 나타냅니다.
  • 두 번째 바이트는 파티션이 시작되는 숫자 1입니다. 이는 MBR이 256개의 서로 다른 헤드를 처리할 수 있음을 의미합니다.
  • 세 번째 바이트의 처음 6비트는 파티션의 섹터 1의 섹터 번호를 캡처하는 데 사용됩니다. 이는 MBR이 64개의 서로 다른 섹터를 처리할 수 있음을 의미합니다.
  • 4번째 바이트 + 3번째 바이트의 마지막 2자리(총 10자리)는 파티션이 시작되는 트랙 번호를 저장합니다. 이는 MBR 파티션 항목을 사용하여 총 1024개의 트랙을 처리할 수 있음을 의미합니다.
  • 바이트 5(운영 체제 표시기)
  • 6번째 바이트 파티션 끝의 1번
  • 7번째 바이트, 처음 6비트는 파티션의 마지막 섹터의 섹터 번호를 캡처하는 데 사용됩니다.
  • 8번째 바이트의 저장 파티션 끝의 트랙 번호 + 7번째 바이트의 마지막 2자리
  • 바이트 9, 10, 11 및 12는 파티션이 시작되기 전에 얼마나 많은 섹터가 있는지 캡처합니다.
  • 바이트 13, 14, 15 및 16은 파티션에 있는 섹터 수를 캡처합니다.

MBR에 파티션이 1개만 있다고 가정하고 이를 활성 파티션으로 설정했습니다. 섹터 0은 MBR 자체가 차지하고 첫 번째 파티션은 섹터 1에서 시작됩니다. 그러면 파티션의 총 섹터 수는 다음과 같습니다.

2^10 = 1024 (number of tracks)
2^6 = 64 (number of sectors)
2^8 = 256 (number of heads)

1024 * 64 * 256 = 16,777,216 sectors

각 섹터에는 512바이트가 포함되어 있어 최대 파티션 크기는 8,589,934,592(8.5GB)입니다. 이것이 맞다면(의심스럽습니다) 최대 MBR 주소 지정 가능 디스크 크기는 8.5GB가 되어야 하지 않습니까? 어디에서나 2.1TB에 대해 이야기하는 것을 볼 수 있지만 그것이 무엇을 의미하는지 이해할 수 없습니다.

답변1

CHS(실린더/헤드/섹터)는 디스크를 매핑하는 오래된 방법입니다. 알다시피 이는 사용할 수 있는 디스크 크기를 제한합니다.

1990년대에 시스템은 LBA(Logical Block Address) 모드를 사용하기 시작했습니다. 9->16바이트에서 볼 수 있는 시작/길이 4바이트 값입니다. 2002 ATA 표준은 CHS 모드를 포기했습니다.

BIOS 부팅의 LBA 모드를 지원하지 않는 구형 컴퓨터에서는 운영 체제를 로드하려면 부팅 파티션이 디스크 전면에 있어야 할 수도 있습니다. 그러면 운영 체제는 BIOS를 사용하지 않으므로 디스크의 나머지 부분을 읽을 수 있습니다. 정말 오래된 컴퓨터에는 디스크의 처음 504MB에 부팅 파티션이 있어야 합니다!

최신 PC에서는 더 이상 MBR 레코드를 사용하지 않지만 디스크 끝에 저장되는 GPT를 사용합니다. 왜냐하면 이제 디스크는 48비트 LBA 주소를 지원할 수 있고 이는 4바이트에 맞지 않기 때문입니다.

따라서 MBR에서 볼 수 있는 CHS 값은 PC 초창기부터 그대로 유지되지만 실제로는 더 이상 사용되지 않습니다.

관련 정보