EXT 파일 시스템 계열: 첫 번째 슈퍼블록이 오프셋 1024에서 시작하는 이유는 무엇입니까?

EXT 파일 시스템 계열: 첫 번째 슈퍼블록이 오프셋 1024에서 시작하는 이유는 무엇입니까?

나는 파일 시스템 구조를 자세히 조사하고 있으며 여러 리소스에서 첫 번째 슈퍼 블록이 1024바이트의 오프셋에서 시작한다고 말합니다. 나는 1024를 선택한 이유를 설명하는 모든 종류의 문서를 찾기 시작했는데, 너무 임의적인 것 같습니다. 내가 찾을 수 있는 것은 다음과 같습니다.

"블록 그룹 0의 특수한 경우, 첫 번째 1024바이트는 x86 부트 섹터 및 기타 이상한 것들을 마운트하는 데 사용되지 않습니다. 슈퍼블록은 오프셋 1024바이트에서 시작되며, 어느 블록이든지 (보통 0) 입니다. 그러나 만약 어떤 이유로 블록 크기 = 1024이면 블록 0은 사용 중인 것으로 표시되고 슈퍼 블록은 패딩 없이 블록 1로 이동합니다."

Ext4 디스크 레이아웃

나는 이 영역이 그럽의 후기 단계와 관련이 있다고 생각하여 좀 더 조사한 결과 다음 기사를 발견했습니다.

PC용 GRUB에 대한 세부정보

DOS 호환성 영역 섹션에 따르면 첫 번째 "실린더" 전체가 예약되어 있고 최대 63개의 섹터를 가질 수 있으며 이는 1024바이트 오프셋을 훨씬 초과하므로 지금은 혼란스럽습니다.

내 질문:

디스크가 바이트 0부터 EXT 파일 시스템의 첫 번째 슈퍼블록까지 어떻게 배치되는지 설명할 수 있나요?

답변1

디스크 시작 부분에 있는 MBR(마스터 부트 레코드)에는 코드가 446바이트만 포함되어 있어 크기가 작아서 많은 작업을 수행할 수 없습니다. 따라서 일반적인 부팅 기술은 MBR이 활성 파티션의 시작 부분에서 코드를 로드하고 해당 코드로 점프하는 소위 "체인 로드"를 수행하는 것입니다. EXT 파일 시스템이 활성 파티션에 있는 경우 EXT 파일 시스템에서는 처음 두 섹터를 비워 두어 파티션의 시작 부분을 이러한 체인 로딩 코드에 사용할 수 있습니다. 이 시작 프로세스의 작동 방식에 대한 자세한 내용은 여기에서 확인할 수 있습니다.

http://wiki.osdev.org/Boot_Sequence#The_Traditional_Way

관련 정보