Apple File System (APFS)

Аватара пользователя
iOS
Сообщения: 15
Зарегистрирован: 2015-09-18 22:41:20

Apple File System (APFS)

Непрочитанное сообщение iOS » 2017-08-10 13:46:40

Изображение

Apple File System

Apple File System (APFS)

В 2014 году в компании Apple начали разрабатывать
новую файловую систему Apple File System (APFS),
которая спустя три года была анонсирована на WWDC 16
и будет использоваться в компьютерах
Mac, iPhone, iPad, Apple TV и других продуктах.

Первыми устройствами с APFS стали компьютеры под управлением macOS Sierra
— разработчики получили возможность использовать
developer preview новой файловой системы на незагрузочных дисках.

А начиная с iOS 10.3 в мобильных устройствах компании Apple – iPhone и iPad
— будет использоваться APFS.

Сам по себе стандарт файловой системы достаточно долговечен
и крайне редко подвергается радикальным изменениям.

Компания Apple использовала в своих компьютерах
иерархическую файловую систему HFS начиная с 1985 года
и лишь в 1998 году реализовала переход на обновленную версию HFS+,
которая использовалась вплоть до 2016 года,
а теперь будет постепенно уступать место APFS.

Проблема HFS и HFS+ заключается в том,
что эти файловые системы были разработаны в то время,
когда флеш-память была слишком дорогой для массового рынка.

Теперь же SSD-накопители очень популярны и доступны,
однако их поддержка в HFS+ реализована за счет дополнительного модуля,
изначально созданного для плееров iPod.

Фактически за время своего развития HFS+
обросла слишком большим количеством дополнительного кода и «костылей»,
так что вместо ее модернизации намного более простым и логичным шагом
было создание новой файловой системы — такой,
чтобы она изначально соответствовала особенностям актуальных устройств,
имела большой запас прочности на будущее
и решала многие проблемы предшественника.

 Шифрование

.

Защиту пользовательских данных в компании Apple
считают одним из приоритетных направлений,
поэтому в новой файловой системе шифрование является фундаментальным свойством.

Для каждого тома в контейнере APFS устанавливается одна из моделей шифрования:
1. без шифрования,
2. шифрование данных пользователя одним ключом,
3. шифрование метаданных и данных пользователя несколькими ключами.

В зависимости от оборудования,
APFS использует режим шифрования AES-XTS или AES-CBC.

.



 Клонирование файлов и директорий

.

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

.



 Разреженные файлы (sparse files) и расширенные атрибуты

.

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

Для пользователей это означает большую экономию дискового пространства,
увеличение быстродействия за счет отсутствия временных затрат на запись нулевых байт
и увеличение срока службы накопителей.

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

.



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

.

В APFS реализована инновационная схема метаданных copy-on-write,
которая гарантирует, что изменения в файловой системе
и соответствующие им записи в журнал остаются в синхронизированном виде
даже при возникновении непредвиденной ситуации,
например отключении электричества.

Кроме того, APFS в принципе записывает данные по шаблонам другого типа,
которые лучше распознаются флеш-дисками, и поддерживает команду TRIM,
которая обеспечивает корректную работу операционной системы
с удаленными файлами и свободным дисковым пространством.

.



 Наносекундные метки времени

.

В APFS значительно увеличена точность меток времени.
В отличие от HFS+, где время выставлялось с точностью до секунды,
APFS расставляет метки с указанием наносекунд.

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

.



 64-битные индексные дескрипторы

.

64-битные индексные дескрипторы значительно увеличивает пространство имен,
по сравнению с 32-битными идентификаторами в HFS+.

APFS поддерживает более 9 квинтиллионов файлов на каждом томе.

.



 Снапшоты и резервные копии

.

Снапшоты — открытые только для чтения «слепки» файловой системы в томе.
Операционная система может использовать их
для более эффективной процедуры резервного копирования,
поскольку APFS добавляет в образ только изменившиеся файлы или части файлов,
не дублируя одни и те же данные в разных резервных копиях.

Впрочем, в настоящий момент macOS Sierra, сторонние приложения и даже Time Machine
не поддерживают новый механизм резервного копирования.
Его анонс — это в первую очередь задел на будущее.

.



 Работа с разделами дискового пространства

.

Любопытная особенность APFS касается работы накопителей,
разделенных на два и более раздела.

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

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

.


Вернуться в «Apple iOS»