Apple 파티션 맵

Apple Partition Map

APM(Apple Partition Map)은 68kPowerPC Macintosh 컴퓨터에서 사용하도록 포맷된 디스크의 데이터 하위 구성을 정의하는 데 사용되는 파티션 구성표입니다.그것은 매킨토시 [1]II와 함께 도입되었다.

Apple 파티션 맵을 사용하는 디스크는 논리 블록으로 나뉘며, 일반적으로 각 블록에 512바이트가 속합니다.첫 번째 블록인 블록0에는 MFS 또는 HFS [2]파티션에서 로드하기 전에 Macintosh Toolbox ROM에서 드라이버 업데이트 및 패치를 로드하기 위한 "Driver Descriptor Map"이라는 Apple 고유의 데이터 구조가 포함되어 있습니다.APM에서는 32비트 상당의 논리 블록을 사용할 수 있으므로 작은 블록을 사용하여[3] APM 포맷된 디스크의 이력 크기는 [4]2TiB로 제한됩니다.

사용된 비맵 파티션만 설명하는 최소 x86 마스터 부트 레코드와 달리 Apple 파티션 맵은 디스크에서 사용된 공간(맵 포함)과 사용되지 않은 공간(빈 공간)을 모두 매핑합니다.즉, 디스크의 모든 블록(첫 번째 블록, 블록 0 제외)이 파티션에 속합니다.

일부 하이브리드 디스크에는 ISO 9660 기본 볼륨 설명자와 Apple 파티션 맵이 모두 포함되어 있어 디스크를 Apple 시스템을 비롯한 다양한 유형의 컴퓨터에서 사용할 수 있습니다.

인텔 기반 Mac

볼륨에 액세스하려면 Mac OS X Tiger(10.4) 이상에서 APM 파티션과 GPT 파티션을 모두 표준 방식으로 사용할 수 있습니다.운영체제 부팅 시 PowerPC 기반 시스템은 APM 디스크에서만[5] 부팅할 수 있는 반면 인텔 기반 시스템은 일반적으로 GPT [1][6][7]디스크에서 부팅할 수 있습니다.단, 오래된 인텔 기반 Mac은 EFI-CSM이라는 BIOS 에뮬레이션을 사용하여 APM, GPT(GUID 파티션 테이블) 및 MBR(마스터 부트 레코드)에서 부팅할 수 있습니다.즉, EFI가 제공하는 호환성 지원 모듈입니다.

Mac OS X Tiger(10.4) 또는 Leopard(10.5)가 프리 인스톨 된 인텔 기반 모델은 PowerPC 기반 [8]시스템과 호환성을 유지하기 위해 분할된 이러한 범용 버전의 Mac OS X 설치 미디어 때문에 APM과 GPT 디스크 모두에서 부팅할 수 있어야 했습니다.다만, 인텔 베이스의 Mac에 OS X 를 인스톨 하는 경우는, GPT 파티션 디스크가 필요하거나, 계속 인스톨 하는 것을 거부합니다.PowerPC 베이스의 시스템에 인스톨 하는 경우와 마찬가지로, APM 파티션의 행선지 볼륨이 필요합니다.이미 설치된 OS X를 인텔 시스템상의 APM 파티션에 복제하면 2011년 인텔 기반 Mac에서도 부팅 가능한 상태로 유지됩니다.이러한 명백한 APM 지원에도 불구하고 애플은 인텔 기반 시스템의 내장 APM 디스크에서 부팅하는 것을 공식적으로 지원하지 않았습니다.Mac OS X(Tiger 또는 Leopard)의 유니버설 버전에 대한 유일한 예외는 PowerPC 및 [9]Intel에서 사용하기 위해 듀얼 부터블 외장 APM 디스크를 설정하는 방법을 설명하는 Apple 공식 문서입니다.

레이아웃

파티션 테이블의 각 엔트리는 1개의 데이터 블록 크기이며, 보통 512바이트입니다.[1][10]테이블의 각 파티션 엔트리는 데이터 블록 또는 섹터 크기입니다.파티션 테이블 자체도 파티션이기 때문에 이 첫 번째 파티션의 크기는 파티션 테이블 자체의 엔트리 수를 제한합니다.

일반적으로 64개의 섹터(64 × 512 = 32KB)가 Apple 파티션 맵에 의해 사용됩니다. 즉, 드라이버 기술자 맵에 블록 0, 파티션 테이블 자체에 블록, 최대 62개의 데이터 [11]파티션에 블록이 사용됩니다.

각 파티션 엔트리는 시작 섹터와 크기뿐만 아니라 이름, 유형, 데이터 영역의 위치 및 가능한 부트 코드도 포함한다.또한 해당 파티션 테이블의 [12]총 파티션 수도 포함됩니다.이렇게 하면 첫 번째 파티션테이블 엔트리를 읽은 후 각 파티션테이블 엔트리를 처리하기 위해 미디어에서 읽어야 할 블록 수가 펌웨어에 의해 인식됩니다.모든 엔트리는 빅엔디안 바이트 [citation needed]순서입니다.

주소. 크기
바이트 단위
내용물 필요합니까?
십진수 16진수
0 0x0000 1 signature1(ASCII 값)"P") 아니요.
1 0x0001 1 signature2(ASCII 값)"M") 아니요.
2–3 0x0002 2 예약되어 있다 아니요.
4–7 0x0004 4 파티션 수(합계) 네.
8–11 0x0008 4 파티션의 시작 섹터 네.
12–15 0x000C 4 파티션 크기(섹터 단위) 네.
16–47 0x0010 32 파티션 이름(고정 ASCII 오른쪽 NULL 패딩) 아니요.
48–79 0x0030 32 파티션 유형(고정 ASCII 오른쪽 NULL 패딩) 아니요.
80–83 0x0050 4 파티션의 데이터 영역 시작 섹터 아니요.
84–87 0x0054 4 파티션의 데이터 영역 크기(섹터 단위) 아니요.
88–91 0x0058 4 칸막이 상태 아니요.
92–95 0x005C 4 부트 코드 시작 섹터 아니요.
96–99 0x0060 4 부트 코드 크기(바이트) 아니요.
100–103 0x0064 4 부트로더 코드 주소 아니요.
104–107 0x0068 4 예약되어 있다 아니요.
108–111 0x006C 4 부트 코드 진입점 아니요.
112–115 0x0070 4 예약되어 있다 아니요.
116–119 0x0074 4 부트 코드 체크섬 아니요.
120–135 0x0078 16 프로세서 타입(고정 ASCII 우측 NULL 패딩) 아니요.
136–511 0x0088 376 예약되어 있다 아니요.

파티션 식별자

"Apple_"로 시작하는 유형은 Apple에 의해 할당되도록 예약되어 있으며, 다른 모든 사용자 정의 유형은 자유롭게 사용할 수 있습니다.다만, 애플에의 등록은 장려되고 있습니다.

식별자/유형 목차/파일 시스템 이름(표준) 언급
Apple_Boot 부트 로더 MOSX_OF3_Booter,eXternal booter 이 부팅 파티션은 메인 파티션의 파일 시스템이 소프트웨어 RAID 구성과 같이 Open Firmware에서 지원되지 않거나 HFS+ 대소문자를 구분하거나 UFS 파일 시스템을 사용하는 경우 New World Mac(Open Firmware 3.0 이상)에서 Mac OS X에 의해 사용됩니다.HFS 파일시스템상의 BootX 가 포함되어 있습니다.
Apple_Boot_RAID 부트 로더 Raid Partition
Apple_Bootstrap New World 부트 블록 일반적인 Open Firmware(New World) 부팅 파티션이지만 전원 로드를 위해 yaboot GRUB에 의해 특별히 사용됩니다.PC Linux 및 Mac OS X에서는 자동 마운트되지 않습니다. Open Firmware에서 액세스할 수 있도록 HFS 포맷이어야 합니다.
Apple_Driver 디바이스 드라이버 Macintosh 클래식 Mac OS 드라이버 파티션
Apple_Driver43 SCSI Manager 4.3 디바이스 드라이버 Macintosh 클래식 Mac OS 드라이버 파티션
Apple_Driver43_CD SCSI CD롬 디바이스 드라이버 Macintosh 클래식 Mac OS 드라이버 파티션
Apple_Driver_ATA ATA 디바이스 드라이버 Macintosh 클래식 Mac OS 드라이버 파티션
Apple_Driver_ATAPI ATAPI 디바이스 드라이버 Macintosh 클래식 Mac OS 드라이버 파티션
Apple_Driver_IOKit I/O 키트 드라이버 Macintosh 클래식 Mac OS 드라이버 파티션
Apple_Driver_OpenFirmware Macintosh
Apple_Extra 미사용의 이 식별자는 미사용 파티션 맵엔트리를 마스크합니다.
Apple_Free 빈 공간 Extra 이 식별자는 빈 공간을 파티션 맵엔트리로 마스크합니다.
Apple_FWDriver 파이어와이어 디바이스 드라이버 Macintosh 클래식 Mac OS 드라이버 파티션
Apple_HFS 계층형 파일 시스템 Apple_HFS 일반적으로 Mac OS 및 Mac OS X용 HFS 또는 HFS+ 볼륨이지만 MS-DOS 형식의 파일 시스템(Mac OS 및 Mac OS X에서 액세스할 수 있는 파일 할당 테이블)을 포함할 수도 있습니다.
Apple_HFSX HFS Plus 이 파티션에는 HFS 래퍼 없이 HFS+ 볼륨이 포함되어 있습니다.HFSX는 Mac OS X 10.3에서 도입되어 대소문자를 구분하는 HFS+와 같은 특수한 경우에만 사용됩니다.HFSX는 Intel 기반 Mac(APM 대신 GPT 사용)에서 표준 파티션 유형입니다.
Apple_Loader SecondaryLoader 맘에 들다Apple_Boot 그러나 구세계 Mac에서는 Open Firmware에서 읽을 수 없는 파일 시스템에 Mac OS X를 설치할 때 사용됩니다.이 파티션에는 파일시스템이 포함되어 있지 않습니다.대신 XCOFF 형식BootXmachine 코드가 포함되어 있습니다.이 파티션 유형은 Mac OS X 10.3에서 단종되었습니다.
Apple_MDFW 펌웨어 firmware 이 파티션은 iPod에서 펌웨어/OS를 로드하는 데 사용됩니다.
Apple_MFS Macintosh 파일 시스템 이 파티션은 Mac OS에서 1984년에 Macintosh 128K에 도입된 Macintosh 파일 시스템(MFS)에 사용됩니다.
Apple_partition_map 파티션 맵 Apple 파티션 맵도 자체 파티션입니다.포함할 수 있는 파티션 수에 따라 크기가 달라질 수 있습니다.
Apple_Patches 패치 Patch Partition Mac OS의 클래식 패치 파티션
Apple_PRODOS ProDOS ProDOS 파일 시스템
Apple_RAID RAID Apple_RAID_OfflineV2 이 식별자는 소프트웨어 RAID 구성에서 사용되는 Mac OS X 파티션을 표시합니다.일반적으로 HFS/HFS+ 또는 UFS와 같은 일반 Mac OS X 설치와 동일한 파일 시스템을 포함합니다.개별 부트 파티션Apple_Boot는필수입니다.
Apple_Rhapsody_UFS Unix 파일 시스템 Mac OS X Server 이 파티션에는 Apple Rhapsody 운영 체제(OPENSTEP에서 Mac OS X로의 이행을 나타내는 개발명)에서 사용되는 Unix File System(UFS)이 포함되어 있으며 Mac OS X Server 1.0에서 1.2 v3에서도 사용됩니다.
Apple_Scratch 이 식별자는 빈 파티션을 표시합니다.
Apple_Second 2단계 부트로더
Apple_UFS Unix 파일 시스템 Mac OS X 이 파티션에는 Unix File System(UFS)이 포함되어 있으며 Mac OS X, Mac OS X Server(버전 10.0 이상) 및 다양한 Unix 유사 운영 체제에서 사용됩니다.
Apple_UNIX_SVR2 A/UX, Unix 원래 68k에서 A/UX(System V Release 2에 기반한 Apple Unix 운영 체제, 따라서 SVR2)용으로 도입되었지만 나중에 확장 파일 시스템을 사용하는 MkLinux에 재사용되었습니다.Linux 및 NetBSD포함한 많은 Unix 계열 운영 체제의 표준 파티션 식별자입니다.설치된 운영 체제에 적합한 파일 시스템을 포함할 수 있습니다.부트 가능한 경우 Open Firmware 부트로더가 읽을 수 있는 파일시스템Apple_Bootstrap(예: yaboot)을 사용해야 합니다.
Apple_Void ISO9660 패딩 부트 미디어에서 파티션을 올바르게 정렬하기 위한 더미 파티션 맵 엔트리.
Be_BFS Be 파일 시스템 이 파티션에는 BFS(Be File System)가 포함되어 있으며 일반적으로 BeOS에서 사용됩니다.
MFS TiVo 미디어 파일 시스템 MFS application region,MFS media region Apple 파티션 맵을 사용하여 포맷된 TiVo 하드 드라이브의 전용 미디어 파일 시스템을 유지하기 위해 사용됩니다.

파티션 상태

파티션 상태는 다음 플래그로 구성된 비트필드입니다

가치 묘사 시스템.
0x00000001 입력이 유효합니다. A/UX
0x00000002 엔트리가 할당되어 있다. A/UX
0x00000004 사용 중인 엔트리 A/UX
0x00000008 엔트리에는 부트 정보가 포함되어 있습니다. A/UX
0x00000010 파티션을 읽을 수 있습니다. A/UX
0x00000020 파티션에 쓸 수 있습니다. A/UX, Macintosh
0x00000040 부트 코드는 위치에 의존하지 않습니다. A/UX
0x00000100 파티션에 체인 호환 드라이버가 포함되어 있습니다. 매킨토시
0x00000200 파티션에 실제 드라이버가 포함되어 있습니다. 매킨토시
0x00000400 파티션에 체인 드라이버가 포함되어 있습니다. 매킨토시
0x40000000 시작 시 자동으로 마운트 매킨토시
0x80000000 스타트업 파티션 매킨토시

「 」를 참조해 주세요.

레퍼런스

  1. ^ a b c "Technical Note TN2166 – Secrets of the GPT". Apple. Retrieved 2013-02-24. ...a standard block size of 512 bytes...Apple did consider extending APM to support larger disks. However, as such a change would break all existing partitioning tools...
  2. ^ Mac OS: 디스크 볼륨 구조의 기술적 개요
  3. ^ Apple 지원 커뮤니티:GUID 파티션 또는 Apple 파티션?(2012)
  4. ^ MacTech 매거진:Criss Myers에 의한 Apple 파티션 맵에서 GUID 파티션 테이블로의 이행
  5. ^ Apple 메일링 리스트: 제목: 관련 정보: Apple Partition Scheme 또는 GUID Partition Scheme Archived 2009-04-06 at the Wayback Machine, Timothy Standing, 2006-04-30
  6. ^ Apple 지원 커뮤니티:디스크 유틸리티를 사용하여 부터블 클론을 만듭니다(2014).APM 파티션드라이브를 사용하여 인텔 Mac에서 부팅하려고 하는 문제의 예.
  7. ^ Apple 지원 커뮤니티:외장 부팅 드라이브에서 Mavericks + FCPX를 실행하고 있습니까? (2014):OS X Mavericks는 APM 파티션 드라이브에서 부팅되지 않습니다.
  8. ^ OWC: APM 포맷 드라이브로 인텔 Mac 부팅, M. Christopher Stevens
  9. ^ Mac OS X 10.5: 부터블 '유니버설' 외장 디스크 작성 및 유지보수
  10. ^ Rebe, René; Klaus, Susanne (2007). "Creating custom Linux solutions – Apple Partition Map". T2 System Development Environment. While the original intent was to handle various block sizes, in practice only 512 byte blocks are supported.
  11. ^ "Yellow Dog Solutions – Attaching Firewire Disks to a Linux Box". Fixstars Corporation. Archived from the original on 2009-10-13. Retrieved 2013-02-24. Comment: The command pdisk -l /dev/sda shows a size of 63 blocks for the Apple_partition_map. There is a multitude of examples like this to be found on the internet.
  12. ^ "IOApplePartitionScheme.h". Apple. 2009. Retrieved 2016-08-07.

외부 링크