Шта је виртуелна РАМ меморија у Андроиду и да ли вас треба бринути
Мисцелланеа / / March 16, 2022
Сем велики мегапиксели камере и дисплеји са високом брзином освежавања, чини се да је највећи тренд у свету паметних телефона виртуелна РАМ меморија. Неки то називају динамичким проширењем РАМ-а, док га други називају проширеним РАМ-ом. Без обзира како се зове, идеја остаје иста. Дозволите корисницима да користе део свог складишног простора као РАМ како би помогли у обављању више задатака.
У овом водичу ћемо разговарати о томе како функционише управљање меморијом у Андроиду и како се идеја виртуелне РАМ меморије разликује од ње. Покушаћемо да размислимо да ли је виртуелна РАМ меморија уопште потребна за Андроид или не. Па да пређемо на то.
Како управљање меморијом функционише на Андроиду
Прво, важно је разумети како Андроид управља вашом меморијом. У оквиру Андроид-а постоје 3 врсте меморије. Прво је ваша РАМ меморија, затим имате зРАМ и на крају ваша меморија. РАМ је основни меморијски модул унутар којег се покрећу све апликације. Затим ту је ваша уграђена меморија, или УФС или еММЦ на буџетским уређајима. Коначно, имамо зРАМ. У суштини, зРАМ је партиција унутар РАМ-а.
Идеја која стоји иза зРАМ-а је да се подаци ниског приоритета у РАМ-у компримују и чувају унутар зРАМ-а. Пошто је РАМ сваки дан бржи од ваше уобичајене меморије, компримовани подаци унутар зРАМ-а, који је део РАМ-а, је и даље ће бити бржи од приступања ван складишта, чак и ако рачунате времена компримовања и декомпримовања.
Сада када смо успоставили 3 различите врсте меморије доступне за Андроид, хајде да разумемо како ОС то све решава. Дакле, Андроид користи технике пејџинга. Функционише то што је РАМ подељена на странице, где свака страница обично има 4 КБ. Без обзира да ли је та страница бесплатна или се активно користи, оне се комбинују да би приказале искоришћену и неискоришћену РАМ меморију, респективно. Затим, задатак кернела је да претвори коришћену меморију у слободну меморију. То ради тако што пребацује податке на тим коришћеним страницама у вашу меморију.
Шта је пејџинг и како функционише
Да бисмо разумели како то функционише, хајде да разумемо врсте страница. Странице можете класификовати у два типа – чисте и прљаве странице. Чисте странице имају неизмењену копију сачувану у простору за складиштење. У међувремену, прљаве странице имају модификовану копију података ускладиштену у складишту. Шта је ово модификовано и неизмењено? Назовимо то динамичком употребом ваше меморије.
Неизмењене копије су статички подаци, док су модификоване копије динамичке промене података сваке секунде. Андроид може да очисти чисте странице када је то потребно јер оне не приступају динамички ресурсима. То помаже да се ослободи РАМ меморија и учини више доступним. То би могло звучати превише техничко, па хајде да олакшамо разумевање коришћењем апликација из стварног света.
Претпоставимо да отворите Твиттер, прегледате свој феед, а затим пређете на нешто друго. Твитер је још увек ту у вашој РАМ меморији. Али ако га не отворите неко време, његов приоритет се смањује. Касније, ако покренете нешто ново, Андроид ће морати да ослободи меморију коју Твиттер користи. Дакле, оно што ради је да пребацује своје вредности и податке у складиште и даје вам слободан простор. Због тога ће вам, када поново покренете Твиттер, прво показати временску линију на којој је био хиберниран, а затим ће се освежити. Исто важи и за Фацебоок, Реддит или сличне апликације као што су Калкулатор или Белешке. Ове апликације користе чисте странице јер се копија њихових података статички чува у вашем складишту.
Сада, за прљаве странице, размотрите Спотифи или било који музички плејер. Покрећете музику у плејеру, а затим је оставите да ради у позадини без отварања апликације. Међутим, систем га не може затворити јер динамички користи вашу меморију. Као резултат тога, Андроид компресује апликацију и пребацује је на зРАМ када је потребно више слободног РАМ-а.
Шта је виртуелна РАМ меморија
Сада када знате како Андроид управља меморијом, морате се запитати – где долази функција виртуелне РАМ меморије? Сећате се како смо рекли да је зРАМ такође део РАМ-а? Начин на који виртуелна РАМ меморија функционише је да креира заменљиву партицију на вашем простору за складиштење и користи је као додатни зРАМ.
Пошто се зРАМ чува само у вашој РАМ меморији, постоји ограничење броја страница које можете компримовати и чувати у њему. Са заменљивом партицијом, можете да користите свој простор за складиштење као додатни зРАМ, за компримовање и померање апликација, док остављате простор на располагању у вашој стварној РАМ меморији.
Да ли је ова функција нова
Дакле, да ли је све ово ново? Па не баш. Линук од почетка користи свап партиције. За Андроид, корисници прилагођеног кернела користе своје СД картице за креирање додатних свап партиција како би побољшали управљање меморијом.
Као такви, произвођачи брендова вам само дају исту функцију која се налази у њиховим Андроид кожама. Међутим, поставља се питање - ако је ова функција толико корисна, зашто није била део Андроидовог изворног кода?
Да ли је виртуелна РАМ меморија добра или лоша
Одговор лежи у самом основном раду виртуелне РАМ меморије. Иако вам ова функција омогућава да покренете више апликација на свом уређају компримовањем хибернираних апликација и пребацивањем у складиште, више штете него користи. Пошто свап партиције у суштини чувају активне апликације, постоји већи осећај за читање и писање.
Ово добро функционише на традиционалној меморији, али флеш меморија има ограничен број читања и писања. Дакле, коришћењем СВАП или виртуелне РАМ меморије, технички смањујете животни век свог уређаја за складиштење.
Ово је такође добро истакнуто Андроид страница програмера. „На Андроиду, складиште се не користи за размену простора као у другим имплементацијама Линука, јер често писање може изазивају хабање ове меморије и скраћују век трајања медијума за складиштење." Још један пример овога је у новом Аппле М1 МацБоокс. Те машине користе свап партицију на Апплеовим ССД-овима, због чега су се корисници доста жалили.
Да ли је виртуелна РАМ меморија важна и да ли треба да је користите?
У суштини, све зависи од тога како дефинишете мултитаскинг. Ако жонглира између само две до три активне апликације, онда виртуелна РАМ меморија свакако помаже у томе. Али ако наставите да прелазите између 5-6 јако активних апликација, виртуелна РАМ меморија неће учинити ништа јер би наставила да мења апликације.
У суштини, функција виртуелне РАМ меморије вам омогућава више РАМ простора доступног за покретање апликација. Међутим, то долази по цену вашег складишта. Ако намеравате да наставите да користите свој уређај дуже од две године, сматрамо да коришћење виртуелне РАМ меморије можда нема много смисла.