Файловая система Apple (APFS) анонсирована на 2017 год, масштабируется «от Apple Watch до Mac Pro» и ориентирована на шифрование

Хотя это и не вошло в основную презентацию, одной из важнейших новостей для разработчиков сегодня является то, что Apple выпускает новую файловую систему для хранения данных для всех своих продуктов:

Файловая система Apple (APFS) — это файловая система нового поколения, разработанная для масштабирования от Apple Watch до Mac Pro. APFS оптимизирована для Flash/SSD-хранилищ и создана с упором на шифрование как ключевую функцию. Узнайте о преимуществах APFS по сравнению с HFS+ и о том, как обеспечить совместимость кода вашей файловой системы.

Подробностей немного, но разработчики могут получить информацию о новой файловой системе здесь, однако она имеет ряд существенных оговорок/ограничений, которые изначально будут сдерживать её использование:

  • Загрузочный диск: Тома APFS в настоящее время не могут использоваться в качестве загрузочного диска.
  • Чувствительность к регистру: В настоящее время имена файлов поддерживают только чувствительность к регистру.
  • Time Machine: Резервное копирование с Time Machine в настоящее время не поддерживается.
  • FileVault: Тома APFS в настоящее время не могут быть зашифрованы с использованием FileVault.
  • Fusion Drive: Fusion Drive в настоящее время не могут использовать APFS.
В настоящее время файловая система не является открытым исходным кодом, и Apple пока не сообщает, станет ли она в конечном итоге таковой. Apple планирует задокументировать и опубликовать формат томов APFS, когда файловая система Apple будет выпущена в следующем году.

Общие характеристики

Файловая система Apple — это файловая система нового поколения для продуктов Apple.

HFS+ и её предшественница HFS насчитывают более 30 лет. Эти файловые системы были разработаны в эпоху гибких дисков и вращающихся жестких дисков, где размеры файлов измерялись в килобайтах или мегабайтах. Сегодня твердотельные накопители хранят миллионы файлов, составляющие гигабайты или терабайты данных. Теперь также уделяется большее значение обеспечению безопасности и конфиденциальности конфиденциальной информации от посторонних глаз.

Необходима новая файловая система, чтобы удовлетворить текущие потребности продуктов Apple и поддерживать новые технологии на протяжении десятилетий.

В следующих разделах описываются общие характеристики файловой системы Apple в отношении её функциональности по сравнению с файловой системой HFS+:

Контейнеры и тома

A Контейнер — это базовая единица хранения для APFS. Он обычно соответствует записи в таблице разделов GUID (GPT) в соотношении 1:1 и управляет собственными распределениями пространства и схемой защиты от сбоев. Каждый контейнер экспортирует один или несколько томов, или файловых систем, каждый из которых имеет свои собственные пространства имен, или наборы файлов и каталогов.

64-битные номера Inode

APFS поддерживает 64-битные номера инодов, что является улучшением по сравнению с 32-битными идентификаторами файлов, поддерживаемыми HFS+. Как 64-битная файловая система, APFS поддерживает более 9 квинтиллионов файлов на одном томе.

Гранулярность временных меток в наносекундах

APFS поддерживает гранулярность временных меток в 1 наносекунду, что является улучшением по сравнению с гранулярностью в 1 секунду у HFS+.

Расширяемый распределитель блоков

APFS имеет расширяемый распределитель блоков, что позволяет использовать произвольно большие объемы хранения на одном устройстве. При инициализации очень больших дисков распределитель блоков может лениво инициализировать свои структуры данных только по мере необходимости для повышения производительности. HFS+, для сравнения, ограничена размером блока распределения и инициализирует весь объем хранения файловой системы при создании.

Разреженные файлы

APFS поддерживает разреженные файлы, в то время как HFS+ — нет.

Защита от сбоев

APFS использует новую схему метаданных copy-on-write для обеспечения отказоустойчивости обновлений файловой системы. Этот подход также снижает дополнительные накладные расходы на журналирование, которые возникают в HFS+.

Расширенные атрибуты

APFS имеет встроенную поддержку расширенных атрибутов файлов. HFS+ реализовала эту функциональность с помощью файла Attributes, B-дерева, которое позволяет реализовать именованные форки.

Операции TRIM

Как и HFS+, APFS поддерживает операции TRIM. В APFS операции TRIM выполняются асинхронно после удаления файлов или освобождения пространства, что гарантирует выполнение этих операций только после того, как изменения метаданных будут сохранены в постоянном хранилище.

Шифрование

Безопасность и конфиденциальность являются основополагающими принципами при разработке файловой системы Apple.

В OS X полнодисковое шифрование доступно начиная с OS X 10.7 Lion. В iOS версия защиты данных, которая шифрует каждый файл индивидуально собственным ключом, доступна с iOS 4, как описано в Руководстве по безопасности iOS. APFS объединяет обе эти функции в унифицированную модель, которая шифрует метаданные файловой системы.

APFS нативно поддерживает шифрование. Вы можете выбрать одну из следующих моделей шифрования для каждого тома в контейнере: без шифрования, шифрование одним ключом или многоключевое шифрование с ключами для данных каждого файла и отдельным ключом для конфиденциальных метаданных. Шифрование APFS использует AES-XTS или AES-CBC, в зависимости от оборудования. Многоключевое шифрование обеспечивает целостность пользовательских данных даже при компрометации их физической безопасности.

Совместимость

  • Существующие сторонние утилиты потребуют обновления для поддержки файловой системы Apple. Обратитесь к документации утилиты или свяжитесь с поставщиком для получения информации о совместимости.
  • Тома, отформатированные в APFS, не распознаются в OS X 10.11 Yosemite и более ранних версиях.
  • Вы можете делиться томами, отформатированными в APFS, используя сетевой протокол общего доступа к файлам SMB. Протокол AFP устарел и не может использоваться для общего доступа к томам, отформатированным в APFS.