ICQ
Навигация
Главная
Карта сайта
Форум сайта
Поиск по сайту
Обратная связь

Разделы
Разное про ICQ
Для мобильного
Для компьютера
Сетевые новости

ICQ
Статус ICQ на сайте
Проверка ICQ статуса
Информер статуса ICQ

Загрузки
Файлы
IPDBrute
Скачать ICQ
Скачать JIMM
Мобильная ICQ

Магазин
On-Line ICQ магазин

RSS канал
Нас посетили
Понедельник1030
Вторник858
Среда1109
Четверг963
Пятница1037
Суббота810
Воскресенье553
Сейчас online:43
Было всего:6386046
Рекорд:28766
Ваш IP адрес

Ваш IP: 54.80.82.9
 

Файловая система APFS разрешает называть файлы только по-английски

  | Сетевые новости 

Файловая система APFS разрешает называть файлы только по-английски

Новая файловая система APFS не поддерживает нормализацию символов Unicode на уровне файловой системы, поэтому файлы безопаснее всего именовать в рамках кодировки ASCII, сообщает Cnews. Это фактически сводит выбор имени к английскому языку, не требующему нормализации. Иначе ряд инструментов и командных оболочек не сможет работать с файлом.

Файловая система APFS, представленная Apple в июне 2016 года, не дает пользователю возможность именовать файлы на каком-либо языке, кроме английского. Имя файла или папки лучше составлять только из символов кодировки ASCII, в противном случае с этим объектом возникнут проблемы. Дело в том, что APFS не поддерживает нормализацию символов универсальной системы кодирования Unicode. От этого страдают в первую очередь письменные символы различных языков, которые отличаются от букв английского алфавита.

APFS была разработана компанией с нуля и ориентирована в первую очередь на работу с флэш-накопителями и более совершенное шифрование данных. В настоящий момент APFS работает на всех устройствах, где установлена версия iOS 10.3 или выше. Таким образом, указанная проблема наблюдается только на iPhone и iPad, на которых у пользователя нет прямого доступа к файлам. Однако, поскольку до конца 2017 года APFS будет развернута в macOS High Sierra, эксперты уже сейчас имеют возможность зафиксировать проблему имен файлов и для этого случая.

В систему кодирования Unicode включены алфавиты практически всех языков мира, имеющих письменность, а также цифры, математические знаки и т. д. За каждым таким символом закреплен уникальный код, который делает его частью общей системы. Некоторые символы обозначаются сразу несколькими кодовыми комбинациями. Например, буква «é» может быть представлена в кодировке UTF-8 как два шестнадцатеричных байта c3 a9, а может выглядеть как три шестнадцатеричных байта 65 cc 81. Тем не менее, визуально это одна и та же буква, и компьютер должен прочитывать ее единообразно, для чего и требуется нормализация.

В стандарте Unicode предусмотрено четыре системы нормализации. Предыдущая файловая система Apple, которая называется HFS+, использует форму нормализации D. То есть, две разные «é» автоматически приводятся к одному виду и предстают в виде трех байтов 65 cc 81. В HFS+ это делается на уровне файловой системы. Таким образом, все, что выполняется на Mac, будь то приложения, команды или сама macOS, работает с нормализованными именами файлов и папок. HFS+ не позволяет создавать какие-либо «ненормальные» имена.

В APFS нормализация символов не выполняется на уровне файловой системы. APFS не меняет поступившие к ней кодовые комбинации Unicode независимо от того, были они нормализованы или нет. Нормализация встроена в системные команды более высокого уровня, которые работают с файлами и папками.

Чтобы избежать проблем, 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 – что по-разному.

Проблема может привести к сбою в работе многих инструментов, тем более, что ввод команд напрямую или через оболочки часто используется в macOS. Теперь пользователь не может быть на 100% уверен, какой символ он сейчас ввел. Чтобы исправить ситуацию, придется внедрять механизм нормализации в сами инструменты, но это будет непросто.


   Вернуться назад  
Поиск по сайту




Подписка на новости

Введите свой Email:



Опрос
Кто какой программой для общения пользуется на смартфоне или планшете?

WhatsApp
Viber
Skype
Telegram
Facebook Messenger
Instagram
Vkontakte
Одноклассники
Mail.ru Агент
ICQ
ooVoo
Другая

  

  Результаты: 1889
На форуме
 1. Services DDoS attacks
Время : 18/05/2018 в 12:39:43
Trinity
 2. Комплексный прогон сайтов ru и en
Время : 17/05/2018 в 03:51:54
kysovue
 3. Socialkit.ru - программа для продвижения и накрутки в Инстаграм
Время : 13/05/2018 в 19:56:28
Socialkit
 4. Services DDoS attacks
Время : 08/05/2018 в 11:16:21
Trinity
 5. Мега-распродажа красивых 5/6-знаков
Время : 05/05/2018 в 10:30:51
vovan-f
© Copyright 2005-2017 «Русская аська