Ветви ресурсов

В Lion ветви ресурсов имеют длинную историю, восходя корнями к оригинальной Mac OS. Чтоб упростить работу пользователя, Apple создала ветвящуюся файловую систему, в которой сложные объекты (такие как приложения) отображаются как один значок. Ветвящиеся файловые системы, например Mac OS Extended, позволяют нескольким фрагментам данных отображаться в файловой системе как один объект. В данном случае файл будет отображаться как один объект, но в действительности он состоит из двух отдельных частей: ветви данных и ветви ресурсов. Это позволяет Mac OS поддерживает стандартные типы файлов в ветви данных, в то время как дополнительная, специфичная для Mac информация хранится в ветви ресурсов. В течение многих лет Mac OS использует ветвящиеся файлы для хранения как приложений, так и файлов.

Lion не только продолжает, но также и расширяет использование ветвей ресурсов, давая разработчикам возможность добавлять произвольное число дополнительных именованных ветвей. Это позволяет компании Apple и другим разработчикам реализовывать уникальные решения для файловой системы без необходимости изменять существующую файловую систему. Например, начиная с Mac OS X vl0.6, стал поддерживаться сжатый программный код. То есть все исполняемые программные файлы были сжаты для экономии места и автоматом разархивируются на лету, когда нужно. Чтобы избежать неправильной обработки этих сжатых исполняемых файлов предыдущими версиями Mac OS X или более старыми приложениями, Apple предпочла скрыть сжатые биты в различных ветвях данных и ветви ресурсов.

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