APFS (Apple File System)는 스토리지 시스템에서 데이터를 구성하고 구조화하는 시스템입니다. 원래 macOS로 출시 된 APFS Sierra는 30 년 된 HFS +를 대체합니다.
HFS +와 HFS (Hierarchical File System의 약간 이전 버전)는 원래 하드 드라이브를 돌리는 것이 제 3 자에 의해 제공되는 값 비싼 선택이었던 Mac 용 기본 저장 매체 인 플로피 디스크로 제작되었습니다.
과거에는 Apple이 HFS +를 대체 한 것을 보았지만 iOS, tvOS 및 watchOS에 이미 포함 된 APFS는 이제 macOS High Sierra 이상의 기본 파일 시스템입니다.
APFS는 오늘날과 미래의 스토리지 기술을 위해 최적화되었습니다.
HFS +는 800KB 플로피가 왕이되었을 때 구현되었습니다. 현재의 Mac은 플로피를 사용하지 않을 수도 있지만 회전하는 하드 드라이브는 고풍처럼 보입니다. Apple이 모든 제품에서 플래시 기반 스토리지를 강조하면서 회전식 미디어로 작업 할 수 있도록 최적화 된 파일 시스템과 디스크 회전을 기다리는 고유 지연이 많은 의미를 갖지는 않습니다.
APFS는 SSD 및 기타 플래시 기반 스토리지 시스템 용으로 설계되었습니다. APFS는 솔리드 스테이트 스토리지의 작동 방식에 최적화되어 있지만 현대의 하드 드라이브에서도 잘 작동합니다.
미래 교정
APFS는 64 비트 inode 번호를 지원합니다. inode는 파일 시스템 오브젝트를 식별하는 고유 식별자입니다. 파일 시스템 객체는 무엇이든 될 수 있습니다. 파일, 폴더. 64 비트 아이 노드를 사용하면 APFS는 약 9 억 개의 파일 시스템 객체를 보유 할 수 있으며 이전의 제한 인 21 억 개를 초과 할 수 있습니다.
9 개의 quintillion은 꽤 큰 숫자처럼 보일 수 있습니다. 그리고 실제로 많은 저장 장치가 실제로 많은 수의 개체를 보관할 수있는 충분한 공간을 가질 것인지 물을 수 있습니다. 이에 대한 해결책은 스토리지 추세를 살피는 것입니다. Apple은 이미 기업 수준의 스토리지 기술을 Mac 및 계층 형 스토리지 사용 능력과 같은 소비자 수준의 제품으로 이전하기 시작했습니다. 이것은 고성능 SSD와 더 느리지 만 훨씬 더 큰 하드 드라이브간에 데이터를 이동시킨 Fusion 드라이브에서 처음 발견되었습니다. 자주 액세스하는 데이터는 빠른 SSD에 보관되는 반면 자주 사용되지 않는 파일은 하드 드라이브에 저장되었습니다.
MacOS에서 Apple은 iCloud 기반 스토리지를 혼합하여이 개념을 확장했습니다. 이미 시청 한 영화 및 TV 프로그램을 iCloud에 저장하여 로컬 저장 공간을 확보 할 수 있습니다. 이 마지막 예는이 계층 형 스토리지 시스템에서 사용중인 모든 디스크에서 통합 된 inode 번호 매기기 시스템을 요구하지 않지만 Apple이 이전 할 수있는 일반적인 방향을 보여줍니다. 사용자의 요구에 가장 잘 부합하는 여러 스토리지 기술을 결합하여 운영 체제에 단일 파일 공간으로 보게합니다.
APFS 기능
APFS는 이전 파일 시스템과 차별화 된 여러 기능을 가지고 있습니다.
- 클론 - 클론은 추가 공간을 사용하지 않고 거의 즉각적인 파일 복사를 허용합니다. 한 위치에서 다른 위치로 파일을 조금씩 복사하는 대신 복제본은 원본 파일을 참조하여 두 파일간에 동일한 데이터 블록을 공유합니다. 하나의 파일을 변경하면 변경된 데이터 블록 만 새 복제본에 기록되고 원본과 복제본은 변경되지 않은 데이터 블록을 계속 공유합니다. 이것은 파일 복사 및 저장을 특히 빠르게 할뿐만 아니라 저장 공간 요구를 절약합니다.
- 스냅 샷 - APFS는 특정 시점을 나타내는 볼륨 스냅 샷을 생성 할 수 있습니다. 스냅 샷을 사용하여 효율적인 백업을 수행 할 수있을뿐 아니라 특정 시점의 상황으로 되돌아 갈 수 있습니다. 스냅 샷은 원래 볼륨 및 해당 데이터에 대한 읽기 전용 포인터입니다. 새로운 스냅 샷은 원래 볼륨에 대한 포인터를 저장하는 데 필요한 공간을 제외한 실제 공간을 차지하지 않습니다. 시간이 지나고 원래 볼륨으로 변경되면 스냅 샷은 변경된 사항으로 만 업데이트됩니다.
- 암호화 - APFS는 AES-XTS 또는 AES-CBC 모드를 사용하여 강력한 전체 디스크 암호화를 지원합니다. 파일과 메타 데이터 모두 암호화됩니다. 지원되는 암호화 방법은 다음과 같습니다.
- 지우기 (암호화 없음).
- 단일 키.
- 데이터와 메타 데이터 모두에 대해 파일 단위 키가있는 다중 키.
- 공간 공유 - 공간 공유는 파티션 크기를 미리 정의 할 수 있습니다. 대신 모든 볼륨이 드라이브의 기본 여유 공간을 공유합니다. 공간 공유를 통해 드라이브의 여러 볼륨을 다시 분할 할 필요없이 필요에 따라 동적으로 확장 및 축소 할 수 있습니다.
- Copy-On-Write -이 데이터 보호 체계를 사용하면 변경이없는 한 데이터 구조를 공유 할 수 있습니다. 변경이 요청되면 (쓰기) 원본을 그대로 유지하면서 새로운 고유 사본이 만들어집니다. 쓰기가 완료된 후에 만 파일 정보가 새 데이터를 가리 키도록 업데이트됩니다.
- Atomic Safe-Save - 쓰기시 복사와 비슷하지만 파일 또는 디렉토리의 이름 바꾸기 또는 이동과 같은 모든 파일 작업에 적용됩니다. 이름 바꾸기를 예제로 사용하면 이름을 바꿀 파일이 새 데이터 (파일 이름)로 복사됩니다. 복사 프로세스가 완료 될 때까지 파일 시스템이 새 데이터를 가리 키도록 업데이트됩니다. 이렇게하면 전원 장애 또는 일부 유형의 CPU 딸꾹질과 같은 이유로 인해 쓰기가 완료되지 않으면 원본 파일이 손상되지 않습니다.
- 스파 스 파일 - 파일 공간을 할당하는이보다 효율적인 방법은 파일 공간이 실제로 필요할 때만 커질 수있게합니다. 비 스파 스 파일 시스템에서는 저장할 준비가 된 데이터가없는 경우에도 파일 공간을 미리 예약해야합니다.