Що насправді відбувається, коли ви дублюєте файл на iOS?

Скільки місця займають дублікати файлів на вашому iPad? Теоретично вони не використовують додаткового сховища. Завдяки дизайну файлової системи Apple (APFS), що використовується на iOS та macOS, дублювання файлу насправді не створює копії. Він просто створює посилання, яке вказує на вихідний файл на диску.

Але як щодо постачальників файлів, iCloud та всього іншого? Я вирішив глибоко зануритися і дізнатися, чи дійсно можна створити мільйон копій файлу без штрафу. Результати були, м’яко кажучи, заплутаними.

Дублікати безкоштовні

APFS має функцію клонування APFS. Найясніше пояснення, яке я знайшов походить від Майка Бомбіча, розробник програми резервного копіювання Mac Carbon Copy Cloner. Я вставлю його сюди, щоб ви його прочитали:

Клонування APFS дозволяє користувачеві миттєво створювати копії файлів на одному томі, не займаючи зайвого місця для зберігання. При клонуванні файлу файлова система не створює копії даних, а створює друге посилання на файл, яке можна змінити незалежно від першого файлу.

Два файли будуть спільно зберігати на диску ті частини файлів, які залишаться ідентичними, але зміни до будь -якого файлу будуть записані в різні частини диска. Клонування файлу APFS працює лише тоді, коли ви копіюєте файл на тому ж томі (наприклад, дублювати файл або папку у Finder).

Це було написано про APFS на Mac, але також має стосуватися і iOS. Наприклад, якщо ви зробите 10 копій файлу об’ємом 1 ГБ, він все одно займе лише 1 ГБ. Інші «копії» - це лише посилання на цей оригінальний файл. Однак, якщо ви зміните одне з цих посилань, воно перетвориться на справжній повторюваний файл. Поки що так просто.

Чи постачальники файлів працюють однаково?

Але що робити, якщо ваші програми використовують Постачальники файлів? Чи зараховуються вони до окремих томів? Чи означає це, що iOS зробить справжню копію під час переміщення файлів у ці місця та з них?

По -перше, що таке постачальник файлів? Перегляньте додаток Файли. Ліворуч стовпець із зазначенням розташувань:

Ці " місця" зліва - це постачальники файлів.
Ці "місця" зліва - це постачальники файлів.
Фото: Культ Мака

Це постачальники файлів. Деякі надають доступ до хмарного сховища (наприклад, Dropbox), але деякі є локальними. Сторонні програми, наприклад AudioShare від Kymatica та Документи Readdle скористайтеся Постачальником файлів, щоб відкрити сховище в додатку для будь-якої іншої програми, яка цього хоче. Отже, моє запитання: чи вважаються файлові провідники окремими томами зберігання чи частиною основного тому?

Немає хороших даних

iMazing майже точно узгоджується з власними даними iPad, але iTunes розповідає іншу історію.
iMazing майже точно узгоджується з власними даними iPad, але iTunes розповідає іншу історію.
Фото: Культ Мака

Проблема усунення цього в iOS полягає в тому, що важко отримати надійний номер для фактичного обсягу використовуваного сховища. Я вирішив взяти номери з трьох джерел: iTunes та iMazing на підключеному Mac, а також звіт про сховище з самого iPad. Я відзначив цифри, потім зробив сім копій того самого файлу об’ємом 1,54 ГБ. Файл - завантаження зразків драм -машин - знаходився у програмі Readdle’s Documents, і я перемістив його до сховища AudioShare за допомогою програми Файли.

Ось як три джерела повідомили про сховище перед операцією копіювання. Усі розміри в ГБ і цифри в дужках я розрахував, використовуючи 512 ГБ як загальний розмір накопичувача:

  • iTunes: (173,06 б / у) 338.94 безкоштовно
  • iPad: 148,3 використовується (363.7 безкоштовно)
  • iMazing: Використовується 241,48, 270 ГБ безкоштовно

Не вдалий початок. Ці цифри не наближаються один до одного. Проте, можливо, вони домовляться про різницю в просторі для зберігання під час тесту до/після.

До і після

Я копіював один і той же файл сім разів - від постачальника файлів Documents до постачальника файлів AudioShare. Копія зайняла кілька хвилин. Здається, що неможливо скопіювати майже 10 ГБ даних за такий короткий час. Тільки з цієї інформації я здогадався, що ці копії насправді були клонами APFS. Але що сказали цифри?

  • iTunes: (Використовується 173,14), 338.86 безкоштовно
  • iPad: 159,1 використовується, (352.9 безкоштовно)
  • iMazing: Використовується 252,3, 259.7 безкоштовно

Отже, відмінності у використаному просторі наступні:

  • iTunes: 0,08 ГБ
  • iPad: 10,8 ГБ
  • iMazing: 10,82 ГБ

Ось і ми! Це набагато корисніша інформація. Сім копій цього 1,54 ГБ файлу мають загальну суму 10,78 ГБ. Як власний інструмент зберігання iPad, так і iMazing повідомляють про таку кількість зайвого місця. Але iTunes каже, що додаткового сховища не було використано. Це дивно. Може, ми знайдемо більше інформації?

Сховище додатків

Окремі програми повідомляють про зміни в пам’яті.
Окремі програми повідомляють про зміни в пам’яті.
Фото: Культ Мака

Тут ми можемо побачити розміри пам’яті для Документів та для AudioShare. Документи залишаються незмінними, як і слід було очікувати - ми копіюємо від це. AudioShare показує збільшення на 10,78 ГБ. Це точний розмір цих семи скопійованих файлів. Що відбувається?

Ну, цілком можливо, що iTunes або неправильний, або правильний. Якщо це правильно, то звіти про iPad неправильні. Без цього більше нема чого сказати з цього приводу. Але як щодо ще одного тесту? Давайте скопіюємо файл на власний iPad На моєму iPad папку, а потім копіювати цей файл кілька разів в іншу папку. Ми повністю проігноруємо постачальників файлів для цього тесту, а потім порівняємо наші результати з обох тестів.

Тест 2: звичайні копії старих файлів

Я видалив копії, які ми зробили в першому тесті, очистив сміття iPad, очистив власний смітник AudioShare і перемістив тестовий файл у папку для завантаження iPad. (Цікаво, що файли, які я видалив із постачальника файлів AudioShare не з'явився у власному додатку Файли Нещодавно видалено розділ, він же смітник iPad).

Потім я синхронізував з iTunes і натиснув перезавантажити на iMazing. Метод, який використовувався для запуску тесту, був точно таким же, як і в попередньому тесті, тільки я спочатку скопіював файл у іншу папку в розділі «На моєму iPad», а потім за допомогою команди «Дублювати» створити всього сім копії.

Цього разу я пощаджу вас про фактичні вимірювання і просто представлю висновки, тобто різниця у використанні для зберігання до/після:

  • iTunes: 0,74 ГБ
  • iPad: 10,8 ГБ
  • iMazing: 10,79 ГБ

Коротше кажучи, вони майже ідентичні першому набору результатів. Копії між силосами постачальника файлів дають той самий результат, що і копії файлів у «рідній» зоні зберігання iPad.

APFS - це магія

Власна специфікація Apple APFS говорить, що файли дублюються на тому ж обсязі є клонами, а не копіями. В обох наших тестах результат був однаковим: iTunes не повідомив про збільшення обсягу використовуваної пам’яті, тоді як iPad та iMazing погодилися, що ці файли насправді займають більше місця.

У цьому випадку один висновок полягає в тому, що iTunes має рацію, оскільки він узгоджується з описом APFS власного Apple. І якщо це так, то переміщення файлів у та з постачальників файлів - це те ж саме, що переміщення їх у тій самій папці.

Якщо ви знаєте більше про те, як це працює, будь ласка, дайте мені знати або в коментарях, або через Twitter/мікроблог/електронну пошту.

Остання публікація в блозі

IOS 11 дозволяє надсилати текстові запити до Siri замість розмови
September 12, 2021

iOS 11 дозволяє надсилати текстові запити до Siri замість розмовиУ iOS нарешті з'явився командний рядок.Фото: Сміт Сміт/Культ МакаРозмова з Siri мо...

Як використовувати заміну тексту, щоб не вводити слова, які ви ненавидите
October 21, 2021

Що, якби ви могли ввести будь -яку свою адресу електронної пошти, просто натиснувши одну і ту ж клавішу кілька разів? Або Google так само легко зді...

Як швидко шукати налаштування в iOS
October 21, 2021

Додаток "Налаштування iOS" більше схожий на хаотичний ящик для сміття, ніж на чітко організовану шафу для зберігання документів. Коли iPhone був за...