У будь-якій техніці є різні складні речі, про які мало замислюються прості користувачі. Будь-які нанометри процесора, апертура камери, вати зарядки тощо. Людям важливо не знати цифр, а розуміти, що вони отримають. Так вийшло і цього разу, але тепер нововведення, яке знайшли в Android 13 стосується файлової системи. Для багатьох це взагалі темний ліс та й яка різниця, як воно там зберігається? Головне, щоб гігабайтів було більше і файли не пропадали. Так воно так, але зараз ми маємо справу не тільки з назвою, але і з повноцінним нововведенням, які змінить роботу пам’яті Android-телефонів. Принаймні для деяких користувачів.
Що таке exFAT
Спочатку трохи теорії, а потім пояснення, у чому переваги нововведення. exFAT – пропрієтарна файлова система, призначена в основному для флеш-накопичувачів. Вперше вона була представлена Microsoft для вбудованих пристроїв Windows Embedded CE 6.0. Розмір кластера exFAT за замовчуванням становить від 4 КБ до 128 КБ у залежності від розміру тома. А максимальний допустимий за специфікацією – 32 МБ.
Файловая система Android 13
Важливо й те, що максимальний теоретичний розмір файлу становить 16 ексобайт. Тобто він майже нескінченний, а зменшення кількості перезаписів одного і того ж сектора важливе для флеш-накопичувачів (флешки, карти пам’яті, вбудована пам’ять смартфона), у яких осередки пам’яті необоротно зношуються після певної кількості операцій.
Android 13 вперше надасть пристрої Pixel можливість обробляти файли розміром більше 4 ГБ у дисковій пам’яті. Але історія про те, як файлова система exFAT стала підтримуватися на Pixel 6 , збиралася частинами протягом тривалого періоду часу.
Ми повинні подякувати Мішаалу Рахмана , технічного редактора Esper, за те, що він виявив, що підтримка exFAT доступна тільки на його Pixel 6 Pro після того, як він перейшов на бета-версію Android 13.
Підтримка нової файлової системи довгий час не була у пошані у виробників смартфонів. Багато в чому тому, що це просто не потрібно для кишенькових пристроїв. Мало хто зберігав у них великі файли або змушував систему працювати з ними. Але тепер часи змінюються, як змінюються потреби користувачів.
Як давно існує exFAT
З 2006 року exFAT розпочала свій шлях по впровадженню на комп’ютерах, але лише у 2019 році Samsung однією з перших подумала: ”а чому б і ні”, використавши його в портативних пристроях. Після того, як Microsoft в 2019 році опублікувала exFAT і заохочувала його інтеграцію в Linux , спільнота почала працювати над тим, як це зробити. Драйвер Samsung exFAT був змінений і зрештою був обраний для включення в Linux 5.7.
Розробники ядра Android та розробники нижче по ланцюжку не люблять так швидко перемикатися між версіями, воліючи забезпечувати довгострокову підтримку будь-якої конкретної версії, щоб забезпечити більшу стабільність платформи. У будь-якому випадку технічно вже на пристрої Android 12 на базі ядра 5.10 була підтримка exFAT. Але що заважало раннім пристроям працювати з дисками, відформатованими в цій файловій системі?
Виявляється, служба монтування для exFAT перевіряє, чи має вона доступ до пари спеціальних «допоміжних» двійкових файлів. Якщо їх там немає, служба не проходить перевірку та не працює. Схоже, що в збірках Android 12, на яких працював Pixel 6 Pro, не було цих двійкових файлів, тому що вони не викликали призначену бібліотеку. Тепер ситуація може змінитися і нова версія файлової системи почне нормально працювати з великими файлами. Принаймні, у нас є, як мінімум, один доказ того, що робота в цьому напрямку ведеться.
Звичайно, якщо справа буде доведена до кінця, тільки однією підтримкою Pixel справа не обмежиться, і система exFAT буде доступна всім користувачам сумісних смартфонів. При цьому доступ буде організований безпосередньо з AOSP, що полегшить інтеграцію.
Google і Huawei
Цей приклад показує, що команда Android останнім часом шукає щось нове. Це ще цікавіше з огляду на те, що Google і Huawei перестали працювати один з одним після накладання санкцій на китайську компанію в 2019 році.