기본 및 보조 부트 로더

기본 및 보조 부트 로더

에서http://www.ibm.com/developerworks/library/l-bootload/index.html

부트 로더는 일반적으로 기본 부트 로더 또는 보조 부트 로더의 두 가지 방법 중 하나로 구성됩니다.

기본 부트 로더는 부트 로더의 첫 번째 단계가 MBR에 설치되는 곳입니다(이전 설명에 따라).

보조 부트 로더는첫 번째부트로더 단계는 부팅 가능한 파티션에 설치됩니다.

별도의 부트로더그런 다음 MBR에 설치하고 보조 부트 로더에 제어권을 전달하도록 구성해야 합니다.

"보조 부트 로더"에서 "첫번째"여야 합니다.첫 번째부트 로더의 단계가 부팅 가능한 파티션에 설치되었습니다."가 대신 "두 번째"가 됩니까?

보조 부트 로더는 어디에 저장되어 있나요? 기본 부트 로더가 저장된 MBR에 없나요?

마지막 문장에서 "별도의 부트로더"란 무엇입니까? 기본 부트 로더인가요, 아니면 보조 부트 로더인가요?

기본 부트 로더는 초기 프로그램 로더(IPL, 동일한 링크에 언급됨)와 동일한 개념입니까?

BIOS가 액세스할 수 있는 데이터의 양이 매우 적기 때문에 대부분의 부트 로더는 두 단계로 로드됩니다. 부팅의 첫 번째 단계에서 BIOS는 초기 프로그램 로더(IPL)라고 알려진 부트 로더의 일부를 로드합니다. IPL은 파티션 테이블을 조사한 후 다양한 미디어에 데이터가 존재할 수 있는 위치에 데이터를 로드할 수 있습니다. 이 작업은 처음에 로더의 나머지 부분을 보유하는 두 번째 단계 부트 로더를 찾는 데 사용됩니다. 두 번째 단계의 부트 로더는 부트 로더의 핵심입니다. 많은 사람들은 이것이 부트로더의 유일한 실제 부분이라고 생각합니다. 여기에는 사용자 인터페이스 및 커널 로더와 같이 디스크를 많이 사용하는 로더 부분이 포함됩니다. 이러한 사용자 인터페이스는 간단한 명령줄부터 노래하고 춤추는 GUI까지 다양합니다.

감사해요!

답변1

실제로 해당 텍스트에는 모호한 부분이 있습니다. 기본 부트 로더는 부트 로더의 첫 번째 단계를 의미하지 않으며, 보조 부트 로더는 부트 로더의 두 번째 단계를 의미하지 않습니다.

부트 로더의 첫 번째 단계는 MBR 부트 로더 코드 크기가 표준의 경우 448바이트로 제한되어 있기 때문에 OS를 완전히 로드할 수 없는 매우 기본적인 디스크 I/O 작업을 처리하는 기능과 파티션 정보를 보유하는 MBR 데이터에 있는 프로그램입니다. MBR 레코드(파티션 테이블이 4*16바이트를 보유하므로 특정 OS 구현의 경우 더 낮음)

부트 로더 작업의 첫 번째 단계는 이제 OS 관련 기능을 포함하고 훨씬 더 많은 코드 공간을 갖는 두 번째 단계를 로드하는 것입니다. 내가 기억하는 한, NTFS 두 번째 부트 로더에는 OS 커널(8KB)을 로드하기 위한 16개의 512바이트 섹터가 있습니다.

부팅하도록 선택할 OS가 여러 개 있는 경우 기본 및 보조 용어가 사용됩니다. 각 OS에는 첫 번째 단계와 두 번째 단계가 있는 부트 로더가 있으며, MBR의 기본 부트 로더는 모든 부트 로더의 두 번째 단계의 세부 사항을 알 수 없기 때문에 각 부트 로더는 1단계부터 시작해야 합니다.

두 번째 단계는 VBR(볼륨 부트 레코드)이라고 하는 파티션 자체의 시작 부분에 저장됩니다.

부팅할 OS가 하나인 경우 MBR 프로그램(IPL)이 첫 번째 단계이고 VBR 프로그램이 두 번째 단계입니다. 여러 O.S가 있는 경우 MBR 프로그램은 기본 부트 로더의 첫 번째 단계가 되며, 해당 단계는 전체 메뉴와 옵션을 완전히 로드하는 두 번째 단계인 일부 파티션에 일부 코드가 있다는 것을 알고 이를 로드합니다. 두 번째 단계에서는 VBR이 있는 파티션에 대해 알고 있으며 VBR로 계속 진행됩니다. 이제 VBR은 보조 부트 로더가 되었습니다.

예, 저는 "MBR의 기본 부트 로더는 모든 부트 로더의 두 번째 단계의 세부 사항을 알 수 없기 때문에 각 부트 로더는 1단계부터 시작해야 합니다"라고 말했습니다. 이것이 VBR 코드 자체에도 MBR 코드가 있는 이유입니다. Windows VBR 코드에 있습니다.

답변2

디스크와 MBR이 있는 PC만 있는 것은 아닙니다. 1차, 2차, 3차 부트로더는 비휘발성 부트 메모리가 있고 파일 시스템이 없는 보드에서도 보다 일반적인 형태로 나타나는 경우가 많습니다.

즉, 임베디드 환경에서 기본 부트 로더는 일반적으로 SoC의 ROM 부트로더이고, 보조는 주변 장치 및 DDR을 초기화하고 OS를 로드할 수 있도록 일반적으로 작은 로드된 첫 번째 프로그램입니다. PC에서 보조 부트 로더는 DDR을 초기화하고 다른 부트 로더/관리자를 GRUB로 로드하는 MB 펌웨어로 볼 수 있습니다.

관련 정보