Co je virtuální RAM v Androidu a mělo by vás to zajímat
Různé / / March 16, 2022
Na rozdíl od obrovské megapixely fotoaparátu a displeje s vysokou obnovovací frekvencí, největším trendem ve světě chytrých telefonů se zdá být virtuální RAM. Někteří to označují jako Dynamic RAM extension, zatímco jiní to nazývají Extended RAM. Bez ohledu na to, jak se to nazývá, myšlenka zůstává stejná. Umožněte uživatelům používat určitou část jejich úložiště jako paměť RAM, aby mohli provádět více úkolů najednou.
V tomto návodu si probereme, jak funguje správa paměti v Androidu a jak se od ní liší myšlenka virtuální paměti RAM. Pokusíme se zamyslet nad tím, zda je virtuální RAM na Androidu vůbec vyžadována nebo ne. Tak pojďme na to.
Jak funguje správa paměti v systému Android
Nejprve je důležité pochopit, jak Android spravuje vaši paměť. V systému Android existují 3 typy paměti. Nejprve je to vaše RAM, pak máte zRAM a nakonec vaše úložiště. RAM je základní paměťový modul, ve kterém běží všechny aplikace. Pak je tu vaše integrované úložiště, buď UFS nebo eMMC na levných zařízeních. Nakonec tu máme zRAM. ZRAM je v podstatě oddíl uvnitř RAM.
Myšlenkou paměti RAM je, že data s nízkou prioritou v paměti RAM jsou komprimována a uložena v paměti RAM. Protože RAM je každý den rychlejší než vaše běžné úložiště, komprimovaná data uvnitř zRAM, která je součástí RAM, ano stále to bude rychlejší než přístup z úložiště, i když započítáte časy komprimace a dekomprimace.
Nyní, když jsme vytvořili 3 různé typy paměti dostupné pro Android, pojďme pochopit, jak to OS zvládá. Android tedy využívá techniky stránkování. Funguje to tak, že RAM je rozdělena na stránky, kde každá stránka má obvykle 4 kB. Bez ohledu na to, zda je tato stránka bezplatná nebo aktivně používaná, zobrazí se použitá paměť RAM a nevyužitá paměť RAM. Poté je úkolem jádra převést použitou paměť na volnou. Činí tak přesouváním dat na těchto použitých stránkách do vašeho úložiště.
Co je stránkování a jak to funguje
Abychom pochopili, jak to funguje, pojďme pochopit druhy stránek. Stránky můžete klasifikovat do dvou typů – čisté a špinavé stránky. Čisté stránky mají neupravenou kopii uloženou v úložném prostoru. Mezitím špinavé stránky mají upravenou kopii dat uloženou v úložišti. Co je to upravené a nemodifikované? Říkejme tomu dynamické využití vaší paměti.
Neupravené kopie jsou statická data, zatímco upravené kopie jsou dynamická data, která se mění každou sekundu. Android může v případě potřeby vyčistit čisté stránky, protože nemají dynamický přístup ke zdrojům. To pomáhá uvolnit paměť RAM a zpřístupnit ji více. To může znít trochu příliš technicky, takže si zjednodušíme pochopení pomocí aplikací v reálném světě.
Předpokládejme, že otevřete Twitter, projdete svůj kanál a poté přepnete na něco jiného. Twitter je stále ve vaší paměti RAM. Pokud jej ale chvíli neotevřete, jeho priorita se sníží. Později, pokud spustíte něco nového, bude muset Android uvolnit paměť, kterou Twitter používá. Takže to, co dělá, je, že přesouvá své hodnoty a data do úložiště a poskytuje vám volné místo. To je důvod, proč když znovu spustíte Twitter, nejprve vám ukáže časovou osu, na které byl hibernován, a poté se obnoví. Totéž platí pro Facebook, Reddit nebo podobné aplikace, jako je Kalkulačka nebo Poznámky. Tyto aplikace používají čisté stránky, protože kopie jejich dat je staticky uložena ve vašem úložišti.
Nyní pro špinavé stránky zvažte Spotify nebo jakýkoli hudební přehrávač. V přehrávači spustíte nějakou hudbu a poté ji necháte běžet na pozadí, aniž byste spustili aplikaci. Systém jej však nemůže zavřít, protože dynamicky využívá vaši paměť. Výsledkem je, že Android zkomprimuje aplikaci a přesune ji do zRAM, když je potřeba více volné RAM.
Co je virtuální RAM
Nyní, když víte, jak Android spravuje paměť, musíte se divit – kde se bere funkce virtuální RAM? Pamatujete si, jak jsme řekli, že zRAM je také součástí RAM? Virtuální RAM funguje tak, že vytváří odkládací oddíl na vašem úložném prostoru a používá jej jako extra zRAM.
Protože paměť zRAM je uložena pouze ve vaší paměti RAM, počet stránek, které můžete komprimovat a uložit do ní, je omezen. S odkládacím oddílem můžete využít svůj úložný prostor jako extra zRAM pro kompresi a přesouvání aplikací a zároveň uvolnit místo ve vaší skutečné RAM.
Je tato funkce nová?
Takže, je to všechno nové? No ne tak úplně. Linux od začátku používá swapovací oddíly. V případě Androidu uživatelé vlastního jádra používali své karty SD k vytváření dalších odkládacích oddílů pro zlepšení správy paměti.
Značkoví výrobci vám jako takoví dávají stejnou funkci zapečenou v jejich vzhledech pro Android. Nabízí se však otázka – pokud je tato funkce tak užitečná, proč nebyla součástí zdrojového kódu Androidu?
Je virtuální RAM dobrá nebo špatná
Odpověď spočívá v samotném základním fungování virtuální paměti RAM. Tato funkce vám sice umožňuje spouštět na vašem zařízení více aplikací komprimací hibernovaných aplikací a jejich přesunem do úložiště, ale nadělá více škody než užitku. Protože odkládací oddíly v podstatě ukládají aktivní aplikace, je zde vyšší smysl pro čtení a zápis.
Na tradičním úložišti to funguje dobře, ale flash paměť má omezený počet čtení a zápisů. Takže používáním SWAP nebo virtuální paměti RAM technicky zkracujete životnost úložiště vašeho zařízení.
To je také dobře zvýrazněno Stránka pro vývojáře Androidu. „Na Androidu se úložiště nepoužívá pro odkládací prostor, jako je tomu v jiných implementacích Linuxu, protože časté psaní může způsobit opotřebení této paměti a zkrátit životnost paměťového média.“ Dalším příkladem toho je nový Apple M1 MacBooky. Tyto stroje používají swapovací oddíl na SSD od společnosti Apple, na který si uživatelé stěžují poměrně hodně.
Záleží na virtuální paměti RAM a měli byste ji používat
V podstatě vše závisí na tom, jak definujete multitasking. Pokud žongluje pouze mezi dvěma až třemi aktivními aplikacemi, pak jistě, virtuální RAM s tím pomáhá. Ale pokud budete přepínat mezi 5-6 silně aktivními aplikacemi, virtuální RAM neudělá nic, protože by aplikace neustále přesouvala.
V jádru funkce virtuální paměti RAM umožňuje více místa v paměti RAM, které je k dispozici pro spouštění aplikací. Je to však na úkor vašeho úložiště. Pokud hodláte své zařízení používat déle než dva roky, počítáme s tím, že použití virtuální paměti RAM nemusí dávat velký smysl.