Перейти до основного вмісту

Пам’ять

Живий розподіл пам’яті (Вільна/Неактивна/Активна/Зарезервована) з діаграмами розподілу та історією.

Огляд

Інструмент «Пам’ять» показує, як розподіляється оперативна пам’ять (RAM) вашого пристрою, скільки її можна швидко звільнити, і як цей розподіл змінюється з часом.

Він допомагає відповісти на практичні питання, наприклад:

  • «Чи відчуває пристрій зараз дефіцит пам’яті?»
  • «Пам’ять утримується системою (зарезервована), додатками (активна) чи кешами (неактивна)?»
  • «Чи стабільне використання пам’яті з часом, чи є стрибки?»

У Lirum Доступна пам’ять — це обсяг пам’яті, який iOS зазвичай може швидко звільнити: Вільна + Неактивна.

Зміст

Вкладки

  • Огляд
  • Деталі
  • Історія

Вкладка Огляд

Вкладка «Огляд» зосереджена на Доступній пам’яті:

  • Кругова шкала, що показує відсоток доступної пам’яті.
  • Доступний обсяг і загальний обсяг RAM.
  • Компактна таблиця розподілу: Вільна, Неактивна, Активна, Зарезервована.

Використовуйте цей перегляд для швидкої оцінки «чи все гаразд із пристроєм зараз». Якщо сума чотирьох рядків не дорівнює Загальному обсягу, див. Стиснена та «Інша» пам’ять.

Огляд: шкала Доступної пам’яті та розподіл Вільна/Неактивна/Активна/Зарезервована.

Вкладка Деталі

Вкладка «Деталі» надає розширений розподіл:

  • Діаграма Розподіл пам’яті (Активна/Зарезервована/Неактивна/Вільна).
  • Таблиця Детальна інформація про пам’ять із розмірами та відсотками.
  • Рядок Доступна, що об’єднує Вільна + Неактивна.

Це найкраще місце, щоб зрозуміти, який тип пам’яті використовується (і чи можна її швидко звільнити). Якщо відсотки для Вільна/Неактивна/Активна/Зарезервована не складають 100%, зазвичай це означає, що частина пам’яті зараз враховується як Стиснена або «Інша».

Деталі: діаграма розподілу та детальна таблиця з розмірами й відсотками.

Вкладка Історія

Вкладка «Історія» допомагає зрозуміти тенденції, а не лише поточний стан:

  • Історія розподілу пам’яті: накопичена шкала для Вільна/Неактивна/Активна/Зарезервована.
  • Історія використання пам’яті: спрощений перегляд загального використання з часом.

Використовуйте Історію, коли:

  • Ви підозрюєте витік або неконтрольоване навантаження (використання постійно зростає).
  • Хочете співставити підвисання/перезапуски додатків із дефіцитом пам’яті (використання різко зростає, а потім падає).
  • Хочете побачити, чи зростає зарезервована пам’ять і залишається високою (часто це тиск з боку системи/драйверів).
Історія: як змінюються розподіл і загальне використання пам’яті з часом.

Стан пам’яті

Lirum використовує ті ж основні категорії, які звітує iOS. Це найзручніша «ментальна модель» для пам’яті iOS:

КатегоріяЩо зазвичай означаєЧи може iOS швидко звільнити?
ВільнаНе використовується, готова до виділенняТак (вже вільна)
НеактивнаПереважно кеші та сторінки, які давно не використовувалисяЧасто
АктивнаРобочий набір, що використовується заразНе напряму
ЗарезервованаЗакріплена, не підлягає сторінковому обмінуНі
СтисненаСторінки, збережені у стиснутому виглядіНе напряму
ІншаРешта (залежить від ОС/пристрою)Залежить

Доступна (Вільна + Неактивна)

Доступна — це практичний показник «скільки ще є простору».

  • Вільна: сторінки, які вже не використовуються.
  • Неактивна: переважно кеші, які можна скинути або перепризначити, якщо потрібна пам’ять.

Тому Lirum показує Доступна = Вільна + Неактивна у шкалі Огляду та в таблиці Деталей.

Примітка: Доступна не гарантує, що система миттєво виділить саме цей обсяг без жодних витрат. Звільнення неактивних сторінок може вимагати додаткових дій (скидання кешу, запис змінених сторінок, відновлення кешу пізніше).

Що це означає на практиці:

  • Якщо Доступна висока й стабільна, пристрій має запас, навіть якщо Вільна низька.
  • Якщо Доступна постійно низька (і залишається низькою під час звичайної роботи), у iOS менше кешу для звільнення, і система може застосовувати жорсткіші заходи (стиснення, завершення додатків).
  • Короткочасне падіння при запуску додатка — це нормально. Повільне стале зниження, що не відновлюється, — типовий патерн дефіциту.

Зарезервована

Зарезервована пам’ять — це RAM, яка закріплена (не підлягає сторінковому обміну) і не може бути стиснута чи звільнена на вимогу.

Думайте про Зарезервовану як про пам’ять, що «має залишатися в оперативці». Зазвичай її використовує ядро та низькорівневі системні служби, і вона потрібна для коректної або реального часу роботи.

Типові приклади:

  • Пам’ять ядра та основних служб ОС
  • Драйвери обладнання та DMA-буфери
  • Графічні/дисплейні поверхні та деякі виділення для GPU
  • Пам’ять, яка має залишатися резидентною для коректності чи реального часу

Чому це важливо:

  • Зарезервована — найменш гнучка категорія. Якщо вона зростає, у iOS менше можливостей звільнити RAM, і тиск виникає раніше.
  • Пристрій може мати мало Вільної пам’яті й працювати нормально, але постійно висока Зарезервована — це складніше для iOS.

Типові патерни:

  • Зарезервована може зростати під час використання камери, AR, ігор, відео, інтенсивного I/O або при підключенні аксесуарів.
  • Зарезервована часто «липка». Деякі виділення не зменшуються швидко, а деякі скидаються лише після перезавантаження.
  • Якщо Зарезервована постійно зростає й не зменшується, це може свідчити про системний тиск або витік у службах чи драйверах.

Активна

Активна пам’ять — це RAM, яка зараз використовується (часто звертається) додатками та системою.

Активна — це не лише «пам’ять додатків». Вона включає всі сторінки, які ОС вважає «гарячими» зараз, зокрема сторінки файлів (наприклад, код і фреймворки) та анонімні сторінки (наприклад, купи й стеки).

Типові приклади:

  • Купи додатків і робочі набори
  • Використовувані кеші файлів і декодовані медіа
  • Структури даних, до яких активно звертається система/додаток

Чому це важливо:

  • Активна пам’ять — це не «марна» пам’ять, а робоча. Вона відображає вашу поточну діяльність.
  • iOS не може просто «звільнити» активні сторінки без наслідків. При дефіциті система спочатку намагається звільнити кеші; якщо цього недостатньо, стискає пам’ять і зрештою завершує додатки.

Типові патерни:

  • Активна зазвичай зростає при запуску додатків і роботі, і може зменшуватися після завершення додатків або коли сторінки стають неактивними.
  • Якщо Активна постійно зростає при незмінному навантаженні (або в режимі очікування), це може свідчити про витік пам’яті або неконтрольований кеш у додатку.

Неактивна

Неактивна пам’ять — це RAM, яка недавно використовувалася і зараз переважно зберігається як кеш.

Неактивна — основне джерело «швидкого звільнення» для iOS. Значна частина неактивної — це чистий файловий кеш, який можна скинути й відновити пізніше.

Типові приклади:

  • Кешовані сторінки файлів
  • Пам’ять додатків, яку можна перепризначити
  • Дані, які не використовуються зараз, але можуть знадобитися знову

Чому це важливо:

  • Неактивна — перше місце, звідки iOS звільняє пам’ять при нових виділеннях.
  • Висока Неактивна — це часто добре: iOS ефективно використовує RAM як кеш.

Типові патерни:

  • Неактивна часто зростає після запуску додатків, читання файлів, прокручування медіа чи завантаження веб-контенту (ці сторінки стають кешем).
  • При дефіциті пам’яті Неактивна має зменшуватися, коли iOS перепризначає кешовані сторінки.
  • Якщо Неактивна вже низька, а Доступна залишається низькою, у iOS менше «легкої» пам’яті для звільнення, і тиск виникає швидше.

Вільна

Вільна пам’ять — це RAM, яка зараз не виділена і готова до використання.

У iOS Вільна часто невелика за задумом. ОС намагається максимально використовувати RAM як кеш, щоб запуск додатків, прокручування чи читання файлів були швидшими.

Чому це важливо:

  • Вільна зазвичай невелика навіть на справних пристроях, оскільки iOS віддає перевагу кешуванню (Неактивна), а не простоюванню.
  • Низька Вільна — не проблема, якщо Неактивна в нормі й пристрій не відчуває тиску.

Стиснена та «Інша» (чому сума може не збігатися)

У додатку iOS також звітує додаткові категорії пам’яті, такі як Стиснена пам’ять, а також інші системні виділення, які не входять до чотирьох основних списків сторінок.

Стиснена пам’ять — це RAM, яку iOS стиснула, зберігаючи сторінки у компактному вигляді. Це один із основних механізмів зниження тиску:

  • Стиснення економить RAM, але все одно використовує пам’ять (і CPU для стиснення/розпакування).
  • Зростання стисненої пам’яті часто сигналізує, що система намагається уникнути завершення додатків.
  • Якщо до стиснутої сторінки знову звертаються, iOS має її розпакувати, що може додати затримку й навантажити CPU.

Інша — це залишкова категорія для всього, що не входить до чотирьох основних. Вона може включати різні системні виділення та категорії обліку пам’яті, які iOS звітує по-різному залежно від версії ОС і пристрою.

У Lirum:

  • Розподіл у Огляді та діаграма в Деталях зосереджені на чотирьох основних станах: Вільна, Неактивна, Активна, Зарезервована.
  • Загальна пам’ять — це фізична RAM вашого пристрою.

Тому сума чотирьох рядків може не дорівнювати Загальному обсягу на всіх пристроях і версіях ОС. «Відсутній» обсяг зазвичай — це пам’ять, врахована як Стиснена, плюс різні системні виділення (Інша).

Дії iOS при дефіциті пам’яті

Коли RAM закінчується, iOS зазвичай діє поетапно:

  • Спочатку звільняє кеші: використовує Вільну пам’ять, потім очищає Неактивну (скидає чистий файловий кеш, очищає деякі кеші).
  • Стискає пам’ять: зберігає менш використовувані сторінки у стиснутому вигляді, щоб відтермінувати завершення додатків.
  • Завершує додатки: якщо тиск триває, iOS може завершити фонові додатки (а згодом і активні), щоб звільнити пам’ять. Це часто проявляється як перезапуск додатків при поверненні до них.

Інструмент «Пам’ять» особливо корисний, коли ви спостерігаєте ці етапи з часом у вкладці Історія.

Як інтерпретувати показники

  • Доступна (Вільна + Неактивна) — найшвидший показник «запасу».
  • Зарезервована — найскладніша категорія. Якщо вона зростає, у системи менше важелів.
  • Висока Неактивна — часто нормально й добре (кеш). Вона має зменшуватися, коли системі потрібна пам’ять.
  • Якщо Активна + Зарезервована зростає, а Доступна зменшується з часом, можливі перезапуски додатків, підвисання чи тиск системи.
  • Використовуйте вкладку Історія для аналізу тенденцій. Одиничні знімки легко неправильно інтерпретувати, оскільки iOS агресивно використовує RAM для кешування.
  • Якщо ви бачите стале зниження Доступної під час повторюваних дій, це сильніший індикатор проблеми, ніж будь-яке окреме число.

Примітки та обмеження

  • iOS автоматично керує пам’яттю; низька Вільна пам’ять сама по собі не завжди є проблемою.
  • Значення й категорії залежать від пристрою та ОС і постійно оновлюються під час роботи інструмента.
  • Інструмент «Пам’ять» показує системний стан пам’яті (не по додатках).
  • На деяких моделях iPad і версіях ОС система може використовувати сховище як swap. Інструмент «Пам’ять» зосереджений на фізичній RAM і не візуалізує swap.