Что всем пользователям iPhone и Mac нужно знать о новой файловой системе Apple. Новая файловая система apple apfs
Что всем пользователям iPhone и Mac нужно знать о новой файловой системе Apple
Недавно компания Apple выпустила очередную бета-версию iOS 10.3, включив в нее поддержку файловой системы APFS. Новый способ организации хранения данных рано или поздно придет на все "яблочные" продукты, включая Apple Watch, iPhone, iPad, Mac и Apple TV, заменив собой устаревшую систему HFS+, использующуюся с 1998 года. Что от этого выиграют обычные пользователи, объясняют Вести.Hi-tech.
Что такое APFS?
Apple File System ("Файловая система Apple") — это собственная разработка компании, которая была анонсирована летом прошлого года. В APFS реализована поддержка практически всех возможностей HFS+ (Mac OS Extended), однако она больше отвечает требованиям современных "яблочных" продуктов.
Читайте также: Новая версия iOS "похоронит" почти 200 тысяч приложений
В отличие от HFS+, APFS оптимизирована для флеш- и SSD-накопителей, поддерживает усиленное шифрование, создание "снимков" системы, копирование при записи метаданных, клонирование файлов и папок, атомарные примитивы и многие другие функции, которые позволят i-устройствам работать быстрее и надежнее. Как ожидается, APFS станет файловой системой по умолчанию на iOS, macOS, tvOS и watchOS в этом году.
В чем преимущества?
Рядовые пользователи вряд ли заметят процесс перехода на APFS, но разница в скорости, скорее всего, будет ощутимой. Во-первых, новая система иначе подсчитывает объемы свободного и занятого пространства, поэтому после перехода на APFS может оказаться, что места на диске больше, чем было. Это уже заметили разработчики, установившие на "айфоны" iOS 10.3 beta 1.
Во-вторых, APFS быстрее перемещает и копирует файлы, а значит, на загрузку ОС и установку приложений будет уходить меньше времени. Преимущества APFS перед HFS+ на сцене WWDC 2016 наглядно продемонстрировал инженер Apple Эрик Тамура, скопировав iTunes на флеш-накопитель, отформатированный под новую систему. Когда APFS уже завершила работу, диск на HFS+ продолжал копировать еще 17 секунд.
Сроки релиза
Официально о переходе на APFS компания объявит дополнительно. В прошлый четверг вышла уже седьмая редакция бета-версии iOS 10.3, а значит, финальный релиз не за горами. Пользователям волноваться не о чем: новая ОС автоматически сконвертирует текущую файловую систему HFS+ в APFS. Однако создать резервную копию устройства или хотя бы самых важных данных на нем перед обновлением будет не лишним – мало ли что. Ожидается, что поддерживать APFS будут все смартфоны и планшеты, для которых сейчас доступна iOS 10.
Источник: 9to5mac
Поделитесь новостью:
hitech.vesti.ru
APFS – новая файловая система от Apple – Проект AppStudio
Самые вкусные новости часто остаются за кулисами презентаций Apple. Причина в том, что некоторые из них подходят преимущественно для разработчиков, а на другие банально не хватает времени — немудрено, при таких-то масштабных анонсах iOS 10! Появление новой файловой системы от Apple под названием APFS (The Apple File System) прошло без шума и пыли, однако утечка просочилась Интернет, и теперь ничего не мешает внимательно изучить её.
APFS представляет собой файловую систему нового поколения, которая может работать на всех устройствах, начиная с Apple Watch и заканчивая Mac Pro. The Apple File System оптимизирована под SSD/Flash-накопители, то есть ставка делается уже не на жёсткие диски, а максимальный приоритет присваивается шифрованию. На сегодняшний день широкое распространение получила более старая купертиновская разработка – HFS+, с которой стоит сравнить APFS. Но сначала, как ни странно, опишем список ограничений APFS:
- Отформатированные в APFS разделы не могут быть использованы в качестве загрузочных дисков.
- APFS чувствительна к большим и маленьким буквам в названиях файлов.
- Резервные копии Time Machine не поддерживаются в APFS.
- Отформатированные в APFS разделы не подходят для шифрования через FileVault.
- Конструкция Fusion Drive пролетает мимо APFS.
Кроме того, сейчас APFS не является проектом с открытым кодом, да и сама Apple вряд ли имеет на неё подобные планы. Тем более, что купертиновцы только в следующем году собираются публично заявить о своей файловой системе нового поколения.
Расписав недостатки, способные отпугнуть рядового пользователя, стоит обозначить и достоинства APFS:
- Конечно же, плодотворная работа с твердотельными накопителями.
- Использование так называемых контейнеров в качестве ячеек хранения, которые сильнее защищены от сбоев. Кроме того, каждый контейнер может экспортировать один или несколько разделов, или файловых систем, имеющих собственные имена, файлы и директории. Заметьте, что изначально не заявлена прямая поддержка RAID, однако APFS может быть объединена с разделом Apple RAID, чтобы работали RAID 0, RAID 1 и JBOD. Подключаемые RAID-массивы также смогут подружиться с APFS.
- APFS поддерживает 64-битные индексные дескрипторные числа, в то время как файловые идентификаторы HFS+ сосредоточены на 32-х битах. APFS в состоянии уместить квинтиллион файлов в одном разделе. Поверьте, это много :)
- Временные интервалы в APFS делятся по наносекундам, а не секундам, как в HFS+.
- APFS поддерживает разреженные файлы, структура которые позволяет экономить пространство на диске.
- Распределитель блоков устроен более умным образом: в APFS он определяет размер объём хранилища, в то время как в HFS+ всегда привязан к жёстким рамкам.
- APFS обладает серьёзной защитой от потери данных вследствие сбоя.
- APFS поддерживает расширенные атрибуты файлов.
- TRIM в файловой системе APFS работает несинхронно при удалении и распределении свободного пространства, из-за чего метаданные изменяются единожды и обеспечивается высокая стабильность системы
- Шифрование — заключительная и ключевая составляющая The Apple File System. Файловая система использует полноценное шифрование AES-XTS или AES-CBC (в зависимости от «железа»), объединяет принципы, заложенные со времён OS X 10.7 Lion и iOS 4, и работает с множеством ключей.
Подытожить данную новость-статью следует информацией о совместимости, так как с APFS смогут работать только OS X Yosemite, El Capitan и Sierra — более старые версии банально её не распознают. Отформатированные в APFS разделы могут быть раскрыты через SMB, но протокол AFP окажется недоступным. И, наконец, сторонним разработчикам придётся провести масштабное обновление своих продуктов ради поддержки файлового системы нового поколения от Apple.
Файловая система APFS (Apple File System)
64-битные иноды, атомарные транзакции, метки времени в наносекундах, клонирование директорий, встроенное шифрование
На вчерашней презентации WWDC 2016 компания Apple показала новые версии операционных систем macOS (Sierra) 10.12, iOS 10, tvOS 10, watchOS 3, приложение для обучения детей программированию Swift Playgrounds и новые эмодзи.
Казалось бы, ничего интересного. Однако, Apple всё-таки выкатила кое-что фундаментальное. Самая значительная разработка из всего упомянутого на презентации — это файловая система нового поколения Apple File System (APFS) в операционной системе macOS (Sierra) 10.12.
На сайте для разработчиков вскоре после презентации опубликована документация с основными характеристиками и описанием файловой системы, которая повторяет отдельные функции мощной свободной файловой системы ZFS.Сейчас в компьютерах Apple используется файловая система HFS+, расширенная версия HFS (Hierarchical File System, иерархическая файловая система), созданной более 30 лет назад. Подобно своей предшественнице, HFS+ использует древовидную структуру, называемую B*-дерево, для хранения большей части метаданных. Отсюда и название «иерархическая файловая система».
Официальное представление HFS+ состоялось 19 января 1998 года, вместе с MacOS 8.1. С 2002 года в системе реализовано журналирование для повышения надёжности хранения информации. С версии OS X 10.3 журналирование включено по умолчанию, появилась возможность работать в режиме с учётом регистра имён.
Вплоть до версии OS X 10.7 разработчики продолжали дорабатывать HFS+ и реализовывать на уровне файловой системы новые функции для OS X. Но факт остаётся фактом: HFS изначально разрабатывалась во времена флоппи-дисков и крутящихся винчестеров, когда размеры файлов измерялись в килобайтах или мегабайтах. Сегодня многие работают с накопителями SSD, где хранятся миллионы файлов — гигабайты или терабайты данных. К файловой системе выдвигаются совершенно иные требования. Вместо доработки старого кода компания Apple решила наконец-то написать новую файловую систему с нуля.
Файловая система APFS нового поколения пока находится на стадии developer preview, то есть её не планируется выкатывать в массовое использование в ближайшее время. В данный момент нельзя использовать том APFS как загрузочный диск, его также нельзя применять в системе резервного копирования Time Machine, в Fusion Drive или с шифрованием File Vault. Но можно для обычного незагрузочного тома.
Предстоит ещё долгая доработка и тестирование, но уже потом APFS станет основной файловой системой Apple на десятилетия вперёд.
APFS, в отличие от HFS+, изначально различает регистр символов в названиях файлов и папок, и эту функцию нельзя отключить. Это следует иметь в виду всем, кто решит использовать APFS.
В принципе, Apple рекомендует для начала поэкспериментировать с APFS на внешнем накопителе, на котором не хранится ничего важного. Для этого предлагается использовать утилиту hdiutil.
Основные характеристики
В официальной документации перечислены общие характеристики файловой системы APFS в сравнении с HFS+.
Контейнеры и тома
Контейнер — это основной объект для хранения данных в APFS. Конейнеры обычно полностью совпадают с записями GUID Partition Table (GPT), у них собственная схема защиты от сбоев и распределения дискового пространства. Каждый контейнер содержит один или больше томов или файловых систем, в каждой из которых есть собственное пространство имён, то есть набор файлов и директорий.
APFS напрямую не поддерживает программный RAID, но её можно использовать с томами Apple RAID для поддержки Striping (RAID 0), Mirroring (RAID 1) и Concatenation (JBOD).
64-битные индексные дескрипторы (inode)
64-битные иноды значительно увеличивает пространство имён, по сравнению с 32-битными индентификаторами в HFS+. В 64-битной файловой системе APFS поддерживается более 9 квинтиллионов файлов на каждом томе. Этого должно хватить каждому, как говорил Билл Гейтс.
Наносекундные метки времени
В APFS значительно увеличена точность меток времени (таймстампов). APFS поддерживает установку меток времени с точностью до наносекунды. Для сравнения, в HFS+ метки времени выставлялись с точностью до секунды.
Наносекундные таймстампы очень важны в современных файловых системах, потому что они помогают реализовать атомарности и атомарных транзакций — одного из основных требований ACID к транзакционной системе (например, к СУБД). Атомарность гарантирует, что никакая транзакция не будет зафиксирована в системе частично. Будут либо выполнены все её подоперации, либо не выполнено ни одной.
Защита от сбоев
В APFS реализована инновационная схема метаданных copy-on-write, которую Apple называет «защитой от сбоев» (“Crash Protection”). Она гарантирует, что изменения в файловой системе и записи в журнал остаются в синхронизированном виде, если что-то происходит во время записи — например, пропадает электропитание.
Схема copy-on-write в ZFS
Разреженные файлы (sparse files)
Файл с атрибутом «разреженный» предполагает содержание блоков нулевых байт, не хранимых на накопителе, а подразумеваемых. В HFS+ не было поддержки разреженных файлов.
Расширенные атрибуты
APFS имеет встроенную поддержку расширенных файловых атрибутов, которая в HFS+ реализовалась через файл Attributes, то есть через B-дерево.
Шифрование
Apple заявляет, что шифрование является фундаментальным свойством, которое встроено в APFS на уровне файловой системы. Для каждого тома в контейнере APFS устанавливается одна из моделей шифрования: без шифрования, шифрование с одним ключом, шифрование с несколькими ключами. В последнем случае отдельные ключи применяются для шифрования файлов и метаданных. В зависимости от оборудования, APFS использует режим шифрования AES-XTS или AES-CBC.
Клонирование файлов и директорий
Клонирование — практически мгновенное копирование файла или директории, при котором не требуется дополнительное место для хранения данных. При модификации клона файловая система записывает только изменение данных. Таким образом, новая файловая система может хранить много версий больших файлов, отнимая меньше дискового пространства.
Снапшоты
Снапшоты — открытые только для чтения «слепки» файловой системы в томе. Операционная система может использовать снапшоты для более эффективной процедуры резервного копирования. То есть наконец-то Time Machine будет работать нормально (быстро).
Конечно, по своим возможностям APFS значительно уступает 128-битной файловой системе ZFS, которую поддерживают Linux, FreeBSD и другие свободные ОС, но со стороны Apple это шаг в правильном направлении.
Странно, что в предварительной документации не упомянута функция компрессии, которую HFS+, кстати, поддерживает.
Apple долго пыталась перенести ZFS на систему OS X, по этому поводу велась активная дискуссия в списках рассылки ZFS, были опубликованы предварительные снапшоты для следующей версии OS X. Позже была сделана реализация OpenZFS для OS X (O3X) и MacZFX.
Файловая система ZFS распространяется с открытым исходным кодом, и Apple вполне могла позаимствовать некоторые идеи для файловой системы APFS. Реализация open source для APFS пока не готова, компания Apple планирует опубликовать задокументировать и опубликовать формат APFS в 2017 году.
На конференции WWDC сегодня вечером состоится первая формальная сессия, где разработчикам более подробно продемонстрируют новые возможности APFS.
При написании статьи были использованы материалы https://geektimes.ru/
Вас могут заинтересовать:
ddr5.ru
Файловая система Apple File System (APFS) / Хабр
64-битные иноды, атомарные транзакции, метки времени в наносекундах, клонирование директорий, встроенное шифрование
На вчерашней презентации WWDC 2016 компания Apple показала новые версии операционных систем macOS (Sierra) 10.12, iOS 10, tvOS 10, watchOS 3, приложение для обучения детей программированию Swift Playgrounds и новые эмодзи.Казалось бы, ничего интересного. Однако, Apple всё-таки выкатила кое-что фундаментальное. Самая значительная разработка из всего упомянутого на презентации — это файловая система нового поколения Apple File System (APFS) в операционной системе macOS (Sierra) 10.12.
На сайте для разработчиков вскоре после презентации опубликована документация с основными характеристиками и описанием файловой системы, которая повторяет отдельные функции мощной свободной файловой системы ZFS. Сейчас в компьютерах Apple используется файловая система HFS+, расширенная версия HFS (Hierarchical File System, иерархическая файловая система), созданной более 30 лет назад. Подобно своей предшественнице, HFS+ использует древовидную структуру, называемую B*-дерево, для хранения большей части метаданных. Отсюда и название «иерархическая файловая система».
Официальное представление HFS+ состоялось 19 января 1998 года, вместе с MacOS 8.1. С 2002 года в системе реализовано журналирование для повышения надёжности хранения информации. С версии OS X 10.3 журналирование включено по умолчанию, появилась возможность работать в режиме с учётом регистра имён.
Вплоть до версии OS X 10.7 разработчики продолжали дорабатывать HFS+ и реализовывать на уровне файловой системы новые функции для OS X. Но факт остаётся фактом: HFS изначально разрабатывалась во времена флоппи-дисков и крутящихся винчестеров, когда размеры файлов измерялись в килобайтах или мегабайтах. Сегодня многие работают с накопителями SSD, где хранятся миллионы файлов — гигабайты или терабайты данных. К файловой системе выдвигаются совершенно иные требования. Вместо доработки старого кода компания Apple решила наконец-то написать новую файловую систему с нуля.
Файловая система APFS нового поколения пока находится на стадии developer preview, то есть её не планируется выкатывать в массовое использование в ближайшее время. В данный момент нельзя использовать том APFS как загрузочный диск, его также нельзя применять в системе резервного копирования Time Machine, в Fusion Drive или с шифрованием File Vault. Но можно для обычного незагрузочного тома.
Предстоит ещё долгая доработка и тестирование, но уже потом APFS станет основной файловой системой Apple на десятилетия вперёд.
APFS, в отличие от HFS+, изначально различает регистр символов в названиях файлов и папок, и эту функцию нельзя отключить. Это следует иметь в виду всем, кто решит использовать APFS.
В принципе, Apple рекомендует для начала поэкспериментировать с APFS на внешнем накопителе, на котором не хранится ничего важного. Для этого предлагается использовать утилиту hdiutil.
Основные характеристики
В официальной документации перечислены общие характеристики файловой системы APFS в сравнении с HFS+.Контейнеры и тома
Контейнер — это основной объект для хранения данных в APFS. Конейнеры обычно полностью совпадают с записями GUID Partition Table (GPT), у них собственная схема защиты от сбоев и распределения дискового пространства. Каждый контейнер содержит один или больше томов или файловых систем, в каждой из которых есть собственное пространство имён, то есть набор файлов и директорий.APFS напрямую не поддерживает программный RAID, но её можно использовать с томами Apple RAID для поддержки Striping (RAID 0), Mirroring (RAID 1) и Concatenation (JBOD).
64-битные индексные дескрипторы (inode)
64-битные иноды значительно увеличивает пространство имён, по сравнению с 32-битными индентификаторами в HFS+. В 64-битной файловой системе APFS поддерживается более 9 квинтиллионов файлов на каждом томе. Этого должно хватить каждому, как говорил Билл Гейтс.Наносекундные метки времени
В APFS значительно увеличена точность меток времени (таймстампов). APFS поддерживает установку меток времени с точностью до наносекунды. Для сравнения, в HFS+ метки времени выставлялись с точностью до секунды.Наносекундные таймстампы очень важны в современных файловых системах, потому что они помогают реализовать атомарности и атомарных транзакций — одного из основных требований ACID к транзакционной системе (например, к СУБД). Атомарность гарантирует, что никакая транзакция не будет зафиксирована в системе частично. Будут либо выполнены все её подоперации, либо не выполнено ни одной.
Защита от сбоев
В APFS реализована инновационная схема метаданных copy-on-write, которую Apple называет «защитой от сбоев» (“Crash Protection”). Она гарантирует, что изменения в файловой системе и записи в журнал остаются в синхронизированном виде, если что-то происходит во время записи — например, пропадает электропитание.Схема copy-on-write в ZFS
Разреженные файлы (sparse files)
Файл с атрибутом «разреженный» предполагает содержание блоков нулевых байт, не хранимых на накопителе, а подразумеваемых. В HFS+ не было поддержки разреженных файлов.Расширенные атрибуты
APFS имеет встроенную поддержку расширенных файловых атрибутов, которая в HFS+ реализовалась через файл Attributes, то есть через B-дерево.Шифрование
Apple заявляет, что шифрование является фундаментальным свойством, которое встроено в APFS на уровне файловой системы. Для каждого тома в контейнере APFS устанавливается одна из моделей шифрования: без шифрования, шифрование с одним ключом, шифрование с несколькими ключами. В последнем случае отдельные ключи применяются для шифрования файлов и метаданных. В зависимости от оборудования, APFS использует режим шифрования AES-XTS или AES-CBC.Клонирование файлов и директорий
Клонирование — практически мгновенное копирование файла или директории, при котором не требуется дополнительное место для хранения данных. При модификации клона файловая система записывает только изменение данных. Таким образом, новая файловая система может хранить много версий больших файлов, отнимая меньше дискового пространства.Снапшоты
Снапшоты — открытые только для чтения «слепки» файловой системы в томе. Операционная система может использовать снапшоты для более эффективной процедуры резервного копирования. То есть наконец-то Time Machine будет работать нормально (быстро). Конечно, по своим возможностям APFS значительно уступает 128-битной файловой системе ZFS, которую поддерживают Linux, FreeBSD и другие свободные ОС, но со стороны Apple это шаг в правильном направлении.Странно, что в предварительной документации не упомянута функция компрессии, которую HFS+, кстати, поддерживает.
Apple долго пыталась перенести ZFS на систему OS X, по этому поводу велась активная дискуссия в списках рассылки ZFS, были опубликованы предварительные снапшоты для следующей версии OS X. Позже была сделана реализация OpenZFS для OS X (O3X) и MacZFX.
Файловая система ZFS распространяется с открытым исходным кодом, и Apple вполне могла позаимствовать некоторые идеи для файловой системы APFS. Реализация open source для APFS пока не готова, компания Apple планирует опубликовать задокументировать и опубликовать формат APFS в 2017 году.
На конференции WWDC сегодня вечером состоится первая формальная сессия, где разработчикам более подробно продемонстрируют новые возможности APFS.
habr.com
Файловая система Apple File System – что это такое
iOS 10.3 и macOS Sierra 10.12.4, вышедшие в понедельник, работают на новой файловой системе Apple File System или APFS. На первый взгляд, в этом нет ничего особенного – главное, чтобы устройства после апдейта не превратились в «кирпичи». Но интересного в переходе на новую систему больше, чем кажется.
Что такое Apple File System
Apple File System – новая файловая система, которая будет использоваться на всех устройствах начиная с Apple Watch и заканчивая Mac. Она «заточена» под флеш-память и пришла на смену устаревшей HFS+. Главные нововведения APFS: улучшенные алгоритмы шифрования, оптимизация использования памяти, защита от сбоев, функции клонирования файлов и папок и умное использование пространства. На практике это обеспечит более стабильную работу ОС, увеличит скорость чтения/записи данных и еще больше защитит пользовательскую информацию.
Почему Apple переходит на APFS
30-летняя HFS+, на которой основаны файловые системы современных гаджетов Apple, создавалась для компьютеров с несколькими накопителями, которые обрабатывали большие объемы файлов. На мобильных устройствах вроде iPhone или Apple Watch приоритеты другие – пользователям нужно, чтобы быстро открывались приложения, а ОС вовремя реагировала на запросы. Для этого в APFS применяются такие функции как клонирование (мгновенное копирование файла или директории, при котором не требуется дополнительное место для хранения данных) и рязрежение (сжатие данных, при котором экономится дисковое пространство и увеличивается скорость записи). А за счет использования «снапшотов» (открытых только для чтения «слепков» файловой системы в томе) ускорится резервное копирование, а именно создание бэкапов с помощью Time Machine.
APFS спроектирована для дальнейшего расширения. В отличие от HFS+, где используется 32-битный каталог записи, в APFS используется 64-битный индексный дескриптор (это такая структура данных в файловых системах). Другими словами, APFS сможет хранить 9 квинтильонов (миллион триллионов!) файлов, что не так актуально для iOS-устройств, но с излишком хватит на ближайший десяток лет для macOS и внешних накопителей.
Какие преимущества для пользователей
Помимо более быстрой и стабильной работы операционной системы, пользователи получат доступ к надежным инструментам шифрования данных на диске. Благодаря APFS iPhone больше не будут превращаться в «кирпичи» после неудачных обновлений – Apple защитит данные на накопителе от повреждений, вызванных сбоями. Наконец, используя функцию Space Sharing, все тома диска смогут «делиться» свободным пространством.
Инженер UiPservice Владислав Юдченко дал комментарий редакции UiP:
«APFS даст возможность операционкам меньше крэшиться, она быстро копирует файлы и оптимизирует пространство. Пока что разница будет не так ощутима, но в новых апдейтах станет заметной. Вскоре и вовсе привыкнем, переход всех устройств на APFS даже не заметим»
Например, второй системой (через Bootcamp) у вас установлена Windows и вы выделили для нее 100 ГБ. С Apple File System больше не придется вручную перераспределять отведенный объем памяти. Если 100 ГБ окажется мало, система сама «заберет» нужное количество свободного дискового пространства. При этом функция клонирования файлов и папок позволит быстрее копировать и перемещать данные.
Ограничения Apple File System
Сейчас в APFS нельзя форматировать системные диски. Не поддерживают новую файловую систему гибридные Fusion Drive, функции FileVault и Time Machine.
Как начать использовать APFS
Если вы обновили iPhone или iPad до iOS 10.3 – устройство уже использует Apple File System. С Mac сложнее, здесь APFS – нечто вроде бета-версии. Отформатировать можно внешний диск, карту SD или флешку, да и то только с помощью Терминала. Словом, пока лучше не экспериментировать.
Новая информация об APFS появится только на конференции разработчиков WWDC в июне. Есть шансы, что именно там Apple анонсирует следующую версию ОС для компьютеров Mac, в которой Apple File System станет стандартной файловой системой.
uip.me
Новая файловая система Apple разрешает называть файлы только по-английски
Проблема имен в APFS
Файловая система APFS, представленная компанией Apple в марте 2017 г., не дает пользователю возможность именовать файлы на каком-либо языке, кроме английского. Имя файла или папки лучше составлять только из символов кодировки ASCII, в противном случае с этим объектом возникнут проблемы. Дело в том, что APFS не поддерживает нормализацию символов универсальной системы кодирования Unicode. От этого страдают в первую очередь письменные символы различных языков, которые отличаются от букв английского алфавита.
APFS была разработана компанией с нуля и ориентирована в первую очередь на работу с флэш-накопителями и более совершенное шифрование данных. В настоящий момент APFS работает на всех устройствах, где установлена версия iOS 10.3 или выше. Таким образом, указанная проблема наблюдается только на iPhone и iPad, на которых у пользователя нет прямого доступа к файлам. Однако, поскольку до конца 2017 г. APFSбудет развернута и в macOS, исследователи уже сейчас имеют возможность зафиксировать проблему имен файлов и для этого случая.
Нормализация Unicode
В систему кодирования Unicode включены алфавиты практически всех языков мира, имеющих письменность, а также цифры, математические знаки и т. д. За каждым таким символом закреплен уникальный код, который делает его частью общей системы. Некоторые символы обозначаются сразу несколькими кодовыми комбинациями. Например, буква «é» может быть представлена в кодировке UTF-8 как два шестнадцатеричных байта c3 a9, а может выглядеть как три шестнадцатеричных байта 65 cc 81. Тем не менее, визуально это одна и та же буква, и компьютер должен прочитывать ее единообразно, для чего и требуется нормализация.
В стандарте Unicode предусмотрено четыре системы нормализации. Предыдущая файловая система Apple, которая называется HFS+, использует форму нормализации D. То есть, две разные «é» автоматически приводятся к одному виду и предстают в виде трех байтов 65 cc 81. В HFS+ это делается на уровне файловой системы. Таким образом, все, что выполняется на Mac, будь то приложения, команды или сама macOS, работает с нормализованными именами файлов и папок. HFS+ не позволяет создавать какие-либо «ненормальные» имена.
Как работает APFS
В APFS нормализация символов не выполняется на уровне файловой системы. APFS не меняет поступившие к ней кодовые комбинации Unicode независимо от того, были они нормализованы или нет. Нормализация встроена в системные команды более высокого уровня, которые работают с файлами и папками.
Файлы, поименованные символами неанглийских алфавитов, APFS считает пустыми
Чтобы избежать проблем, Apple рекомендует разработчикам использовать для работы с файловой системой высокоуровневые Foundation API, такие как NSFileManager или NSURL. Или же прибегать к функции fileSystemRepresentation объектов NSURL при создании и открытии файлов с помощью API более низкого уровня, таких как POSIX, а также при сохранении файлов APFS за ее пределами.
Проблема и ее последствия
В ответ разработчики поясняют, что не всякое ПО может работать по такой схеме, и что некоторые высокоуровневые API еще не поддерживают запросы, необходимые для выполнения этой процедуры. Ситуация благоприятствует возникновению в APFS ошибок, и этот риск возрастает, когда для именования файлов используется любой язык кроме английского, поскольку английский алфавит наименее нуждается в нормализации Unicode. Переход с одной файловой системы на другую влечет за собой смешанную нормализацию.
Поскольку в HFS+ символы нормализуются на уровне файловой системы, командные оболочки этим не занимаются. Например, инструмент Terminal сам по себе прописывает в названии файла café.txt двухбитный, ненормализованный «é». А инструмент Finder, как и обещает Apple, приводит букву к трехбитному виду. Некоторые оболочки могут получить доступ только к файлам и папкам с нормализованными именами, то есть они не видят ненормализованный café.txt, как, например, Icon view. Terminal видит, но испытывает проблемы при выполнении операций с этим файлом. Apfelstrudel считает, что два файла café.txt с нормализованным и ненормализованным «é» названы одинаково, а Finder – что по-разному.
Проблема может привести к сбою в работе многих инструментов, пишет ресурс The Eclectic Light Company, тем более, что ввод команд напрямую или через оболочки часто используется в macOS. Теперь пользователь не может быть на 100% уверен, какой символ он сейчас ввел. Чтобы исправить ситуацию, придется внедрять механизм нормализации в сами инструменты, но это будет непросто.
www.cnews.ru
Новая файловая система APFS в macOS Sierra
В 2017 году компания Apple начнёт использовать в своих устройствах новую файловую систему Apple File System (APFS), которая придёт на смену системе HFS+, используемой на компьютерах Maс 1998 года, а та основана на HFS выпуска 1985 года.
APFS представляет собой совершенно новую файловую систему, разработанную для современного аппаратного обеспечения и облачных технологий. Она улучшает шифрование, безопасность и надёжность по сравнению со старыми системами Apple. Как обычно в таких случаях, будут проблемы с совместимостью, но у Apple есть время для их решения, прежде чем новая система станет доступной широкому кругу пользователей.
Первый взгляд на APFS
Пока APFS доступна в бета-версии macOS Sierra 10.12 (преемница OS X Capitan 10.11) для разработчиков.
В ней можно создать образ диска APFS, но с ним доступно не особо много действий – копирование файлов в него и из него, при этом нельзя использовать диск APFS как загрузочный. Всё это должно измениться в 2017 году с появлением новых моделей Mac, iPhone и iPad.
Улучшенная безопасность и постоянное клонирование
Большинство пользователей не заметят ничего радикально нового в устройствах с поддержкой APFS на жёстком диске, но внутри скрыто множество значительных отличий. APFS использует интегрированное шифрование вместо устанавливаемых сторонних техник в существующей функции OS X FileVault, которая медленно шифрует и дешифрует диск целиком.
APFS может шифровать целые диски и отдельные файлы с разными ключами для файла и метаданных, давая гибкий контроль, который может позволить пользователям модифицировать данные в файле без доступа к другим участкам диска.
APFS также позволяет мгновенное копировать папки и диски. Эта технология повысит скорость встроенной функции Sierra, которая автоматически выполняет резервное копирование файлов из папок Рабочий стол и Документы в облачное хранилище iCloud (функцию можно отключить) — об этой возможности мы уже рассказывали в статье «macOS Sierra: новые возможности преемницы OS X«. Функциональность работает уже и на существующих устройствах, но должна стать быстрее с APFS.
Наносекундная точность, улучшенное резервное копирование
Текущая файловая система Apple помечает файлы временными метками с точностью до одной секунды, чего недостаточно для фиксирования изменений в файлах при нынешних скоростях работы устройств. APFS помечает файлы временными метками с точностью до одной наносекунды, что в совокупности с технологией резервного копирования позволяет хранить разные версии файлов, занимая минимум пространства.
Можно ждать в macOS Sierra наличия новой версии функции Apple Time Machine, которая воспользуется преимуществами файловой системы для повышения производительности создания резервных копий. Microsoft создала похожую функциональность в файловой системе NTFS много лет назад, а пользователи Mac теперь смогут работать с похожей технологией «теневого копирования», как в Windows.
Улучшенное распределение пространства
Другие преимущества дисков APFS включают в себя гибкое распределение пространства, так что два «диска» APFS могут одалживать его друг у друга, не довольствуясь только местом, выданным им при создании.
APFS обладает поддержкой «разреженных файлов», которые не заполняют всё распределённое место на диске. Прежние версии OS X уже поддерживают разреженные файлы, но не самым удобным образом и только для разработчиков.
А благодаря быстрому встроенному управлению файлами, нам обещают более надёжную защиту против потери данных при падениях системы.
Оптимизация для флеш-памяти
Другие внутренние новшества включают в себя оптимизацию для работы с флеш-памятью, тогда как технологии в HFS+ созданы для вращающихся жёстких дисков. Те, кто когда-либо подолгу ждали, когда OS X скажет, сколько места занимает та или иная папка, будут рады узнать, что функция быстрого определения размера директорий APFS решит эту проблему.
Если вы собираетесь пользоваться своим компьютером Mac следующие 25 лет, лучше обновиться до APFS до 6 февраля 2040, так как HFS+ после этой даты не сможет создавать временные метки файлов.
Недостатки APFS
Главным является совместимость. Если у Mac есть созданный программой Apple Boot Camp раздел для Windows, то понадобистя драйвер Windows, который сможет прочитать диск APFS, как драйвер от Apple для Windows позволяет читать диски HFS+. Наверняка Apple предоставит такой драйвер до публичного релиза APFS.
Точно так же двойная загрузка с применением Sierra и старых версий OS X не даст доступа к разделу APFS с раздела со старыми версиями. Обычный сетевой доступ к и с диска APFS не будет проблемой, так как APFS поддерживает стандартный сетевой протокол SMB, используемый Windows и всеми остальными.
Вместо заключения
Только разработчикам нужно думать о том, что им предстоит изучать APFS. Остальным новая файловая система даст большую скорость работы системы, усиленную безопасность и надёжность. В июле выйдет публичная бета-версия macOS Sierra, тогда доступ к новой файловой системе смогут получить все желающие.
Вконтакте
Google+
- 5
- 4
- 3
- 2
- 1
osdaily.ru