Открыть сервис

APFS

APFS (Apple File System) — это проприетарная файловая система, разработанная компанией Apple Inc. для использования на её устройствах под управлением операционных систем macOS, iOS, tvOS и watchOS. Она была представлена в 2016 году на конференции Worldwide Developers Conference (WWDC) и пришла на смену файловой системе HFS+ (Hierarchical File System Plus), которая использовалась Apple с 1998 года. APFS оптимизирована для работы с твердотельными накопителями (SSD) и флеш-памятью, хотя поддерживает также и традиционные жёсткие диски (HDD). Ключевыми особенностями APFS являются высокая производительность, надёжность, встроенное шифрование, поддержка снимков состояния (snapshots) и эффективное управление пространством.

История

Разработка APFS началась в ответ на растущие ограничения HFS+, которая была создана в эпоху, когда основными носителями были механические жёсткие диски, а объёмы данных были значительно меньше. С появлением SSD, флеш-памяти и устройств с большими объёмами данных (например, фотографии, видео, приложения) HFS+ перестала отвечать современным требованиям по производительности, масштабируемости и безопасности. Apple решила создать новую файловую систему «с чистого листа», взяв за основу опыт работы с ZFS (Zettabyte File System) и другими современными разработками.

Первая публичная демонстрация APFS состоялась в июне 2016 года. В сентябре 2016 года Apple выпустила бета-версию для разработчиков. Официально APFS стала основной файловой системой для iOS и tvOS с выходом iOS 10.3 и tvOS 10.2 соответственно (март 2017 года). Для macOS она была представлена в качестве опциональной файловой системы при обновлении до macOS Sierra (10.12.4) в марте 2017 года, а начиная с macOS High Sierra (10.13) в сентябре 2017 года стала файловой системой по умолчанию при чистой установке. На watchOS APFS используется с версии watchOS 3.2.

Архитектура и ключевые особенности

APFS построена на принципах 64-битной адресации, что позволяет адресовать до 9 квинтиллионов (9 × 10^18) файлов в одном томе. Это значительно превосходит возможности HFS+, которая использует 32-битную адресацию. Архитектура APFS включает несколько ключевых технологий:

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

В APFS используется концепция контейнера (container) — логической области на диске, которая может содержать один или несколько томов (volumes). В отличие от HFS+, где каждый том (раздел) был независим и имел своё пространство, в APFS тома внутри одного контейнера динамически делят общее свободное пространство. Это позволяет гибко перераспределять место между томами без необходимости переразметки диска. Например, в macOS контейнер APFS может содержать том «Macintosh HD» (системный) и том «Macintosh HD — Data» (пользовательские данные), которые используют общий пул свободного пространства.

Клонирование (Cloning)

APFS поддерживает клонирование файлов и папок на уровне метаданных. При копировании файла в пределах одного тома APFS не создаёт физическую копию данных, а создаёт ссылку на те же самые блоки. Только при изменении одного из клонов (записи новых данных) система выделяет новое пространство для изменённых блоков (копирование при записи, copy-on-write). Это значительно ускоряет операции копирования и экономит дисковое пространство. Клонирование активно используется в macOS для быстрого дублирования файлов, создания резервных копий Time Machine и работы приложений.

Снимки состояния (Snapshots)

Снимок состояния — это моментальная копия файловой системы на определённый момент времени, доступная только для чтения. APFS позволяет создавать снимки тома без остановки работы системы. Снимки используются для резервного копирования (например, Time Machine в macOS High Sierra и новее), для создания точек восстановления системы и для отката изменений. Снимки не требуют дополнительного дискового пространства, пока данные не изменяются; они хранят только различия между текущим состоянием и состоянием на момент снимка.

Шифрование

APFS поддерживает встроенное шифрование на уровне томов. Доступны три режима:

Шифрование прозрачно для пользователя: файлы автоматически расшифровываются при чтении и шифруются при записи. В macOS шифрование настраивается через FileVault, а в iOS — через настройки защиты данных.

Копирование при записи (Copy-on-Write)

APFS использует механизм copy-on-write для всех операций записи. Это означает, что при изменении данных система не перезаписывает существующие блоки, а сначала записывает новые данные в свободное место, а затем обновляет указатели метаданных. Это предотвращает повреждение данных при сбоях (например, при внезапном отключении питания), так как старые данные остаются нетронутыми до завершения записи. Однако этот механизм может приводить к фрагментации данных, особенно на механических жёстких дисках.

Быстрое изменение размера тома

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

Производительность и надёжность

APFS была оптимизирована для современных носителей. На SSD она демонстрирует значительно более высокую производительность по сравнению с HFS+, особенно в операциях с большим количеством мелких файлов (например, при обновлении приложений или работе с фотографиями). В тестах Apple скорость операций копирования и удаления файлов на APFS может быть в несколько раз выше, чем на HFS+.

Надёжность APFS обеспечивается несколькими механизмами:

Однако APFS имеет и некоторые недостатки. На механических жёстких дисках (HDD) производительность может быть ниже, чем у HFS+, из-за copy-on-write и фрагментации. Кроме того, APFS не поддерживает прямую работу с некоторыми старыми функциями, такими как сжатие файлов (которое было в HFS+), хотя Apple реализовала сжатие на уровне приложений (например, в Time Machine). Также APFS несовместима с некоторыми сторонними утилитами и загрузчиками, не поддерживающими её.

Применение

APFS используется на всех современных устройствах Apple:

На macOS пользователь может выбрать APFS при форматировании диска в Дисковой утилите (Disk Utility). Для внешних дисков APFS рекомендуется для SSD, но для HDD часто предпочтительнее HFS+ или exFAT (для совместимости с Windows). APFS также поддерживается на некоторых версиях macOS Server для хранения данных сервера.

Критика и ограничения

Несмотря на преимущества, APFS подвергалась критике по ряду причин:

Apple периодически выпускает обновления APFS для устранения ошибок и улучшения производительности. Например, в macOS Catalina (10.15) была введена поддержка отдельного тома для данных, а в macOS Big Sur (11) — системный том стал полностью доступен только для чтения.

Интересные факты

Источники

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →