Закрити оголошення

Ідеальний обсяг оперативної пам’яті, який потрібен телефонам для безперебійної багатозадачності, є досить обговорюваною темою. Apple обходиться меншими розмірами своїх iPhone, які часто зручніші, ніж рішення для Android. Ви також не знайдете жодного виду керування пам’яттю RAM на iPhone, тоді як Android має власну спеціальну функцію для цього. 

Якщо ви зайдете, наприклад, у телефонах Samsung Galaxy Налаштування -> Догляд за пристроєм, тут ви знайдете індикатор оперативної пам’яті з інформацією про те, скільки вільного місця та скільки зайнято. Натиснувши меню, ви можете побачити, скільки пам’яті займає кожна програма, а також у вас є можливість очистити пам’ять тут. Тут же знаходиться функція RAM Plus. Його сенс полягає в тому, що він відкушує певну кількість ГБ внутрішнього сховища, яке буде використовувати для віртуальної пам'яті. Чи можете ви уявити щось подібне на iOS?

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

Свіфт vs. Java 

Але під час запуску нової програми вам потрібно мати вільний простір у пам’яті, щоб завантажити та запустити її. Якщо це не так, місце потрібно звільнити. Тому система примусово завершить деякі запущені процеси, наприклад програми, які вже запущені. Однак обидві системи, тобто Android і iOS, по-різному працюють з оперативною пам’яттю.

Операційна система iOS написана на Swift, і iPhone насправді не потрібно переробляти використану пам’ять із закритих програм назад у систему. Це пов’язано з тим, як побудована iOS, оскільки Apple має повний контроль над нею, оскільки вона працює лише на своїх iPhone. Навпаки, Android написаний на Java і використовується на багатьох пристроях, тому він повинен бути більш універсальним. Коли програма завершується, місце, яке вона займає, повертається до операційної системи.

Рідний код проти. JVM 

Коли розробник пише додаток для iOS, він компілює його безпосередньо в код, який може працювати на процесорі iPhone. Цей код називається нативним кодом, оскільки для його запуску не потрібна інтерпретація чи віртуальне середовище. Android, з іншого боку, інший. Коли код Java компілюється, він перетворюється на проміжний код Java Bytecode, який не залежить від процесора. Тому він може працювати на різних процесорах від різних виробників. Це має величезні переваги для кросплатформної сумісності. 

Звичайно, є і мінус. Кожна комбінація операційної системи та процесора потребує середовища, відомого як віртуальна машина Java (JVM). Але рідний код працює краще, ніж код, який виконується через JVM, тому використання JVM просто збільшує обсяг оперативної пам’яті, який використовується програмою. Таким чином, програми для iOS використовують менше пам’яті, в середньому на 40%. Ось чому Apple не зобов’язана оснащувати свої iPhone такою кількістю оперативної пам’яті, як це робиться з пристроями Android. 

.