Zašto Google Chrome troši toliko RAM-a? Znanstvena pozadina iza mita o „čudovištu memorije”
Gledajući prikaz u upravitelju zadataka, Google Chrome redovito drži prvo mjesto po potrošnji radne memorije. Zbog toga ga korisnici već godinama kroz šalu nazivaju čudovištem koje proždire sustavne resurse. no detaljnije tehničke analize i inženjerska praksa otkrivaju da je visoka potrošnja RAM-a zapravo pažljivo planiran i svjestan arhitektonski izbor. Googleov tim inženjera odlučio je žrtvovati dio radne memorije kako bi zauzvrat pružio maksimalnu brzinu rada, vrhunsku stabilnost i neusporedivu razinu sigurnosti pri svakodnevnom surfanju.
Od jednostavnih stranica do kompleksnih web aplikacija
Temeljna logika interneta drastično se promijenila u odnosu na početke mreže. Nekadašnje otvaranje web stranice značilo je učitavanje jednostavnog teksta i tek nekoliko komprimiranih slika, dok današnji moderni web funkcionira poput skupa samostalnih, kompleksnih aplikacija. Svaki put kada u pregledniku otvorite proračunske tablice u oblaku, alate za mrežnu obradu videozapisima ili platforme za komunikaciju i rad u stvarnom vremenu, Chrome izvršava tisuće linija zahtjevnog koda. Svaka otvorena kartica u biti pokreće zaseban softverski sustav unutar preglednika. Razvojni timovi imali su dvije opcije: natjerati sve kartice da dijele isti memorijski prostor i riskirati nestabilnost cijelog računala, ili svakoj stranici dodijeliti neovisne resurse radi maksimalne brzine i fluidnosti. Chrome se odlučio za drugu opciju, prihvaćajući veću potrošnju hardverskih resursa kao nužnu cijenu vrhunskih performansi.
Višeprocesna arhitektura kao jamstvo stabilnosti
Glavni razlog visoke potrošnje memorije krije se u Chromeovoj višeprocesnoj arhitekturi. Za razliku od starijih preglednika u kojima je otkazivanje jedne web stranice ili loše napisanog dodatka uzrokovalo trenutačno rušenje cijelog programa i gubitak svih nespremljenih podataka, Chrome potpuno izolira svaku otvorenu karticu i svako aktivno proširenje u zaseban proces. Ako se pojedinačna web stranica zamrzne ili doživi pad sustava, ona će srušiti samo vlastiti radni prozor, dok će sve ostale kartice i dalje funkcionirati besprijekorno. Ovaj mehanizam zahtijeva udvostručavanje određenih sistemskih resursa za svaki proces, no stabilnost rada i zaštita od gubitka radnih podataka opravdavaju uloženu memoriju.
Sigurnosni mehanizam „Sandbox” i izolacija prijetnji
Osim stabilnosti, izolacija procesa ključna je za mrežnu sigurnost. Chrome koristi takozvanu tehnologiju sandboxinga na razini operativnog sustava, stvarajući neprobojan vatrozid između različitih kartica. Čak i ako korisnik slučajno otvori zlonamjernu ili phishing stranicu koja u sebi sadrži opasne skripte, virus ne može probiti granice tog izoliranog procesa niti se infiltrirati u susjedne kartice. To znači da zlonamjerni kod sa sumnjive web stranice nema pristup otvorenim karticama na kojima se nalaze osjetljivi podaci, poput internet bankarstva, e-pošte ili internih poslovnih dokumenata. Izgradnja i održavanje takvog naprednog vatrozida u stvarnom vremenu zahtijeva značajnu količinu radne memorije, no u današnjem digitalnom okruženju taj je hardverski trošak potpuno opravdan.
Znanstvena logika iza iskoristivosti RAM-a
U modernom računalstvu i dizajnu operativnih sustava vlada jasno pravilo: neiskorištena radna memorija u suštini je bačena memorija. Primarna uloga RAM-a jest pohrana i pred-učitavanje podataka kako bi im procesor mogao pristupiti u najkraćem mogućem roku, bez čekanja na sporiji rad tvrdog diska. Kada Chrome zauzme veći dio dostupne memorije na računalu koje ima 16 GB RAM-a ili više, on to čini namjerno kako bi skratio vrijeme odziva i omogućio trenutno prebacivanje s jedne kartice na drugu. Kada druge aplikacije na računalu zatraže više memorije za svoj rad, operativni sustav i preglednik automatski će osloboditi dio resursa bez ikakvog utjecaja na brzinu rada samog računala. Visoke brojke u upravitelju zadataka stoga nisu znak loše optimizacije, već indikator da preglednik aktivno koristi resurse kako bi ubrzao rad.
Optimizacija i ugrađeni alati za upravljanje resursima
Za korisnike koji žele dodatno smanjiti potrošnju memorije, Google je u postavke Chromea ugradio značajku Ušteda memorije. Ova funkcija automatski prepoznaje kartice koje neko vrijeme niste aktivno koristili te ih stavlja u stanje mirovanja. Čim se vratite na tu karticu, ona se trenutačno ponovno aktivira, oslobađajući resurse za zadatke koji su u tom trenutku primarni. Kada se dogodi neočekivano usporavanje računala, krivac najčešće nije sam preglednik, već takozvano „curenje memorije” koje uzrokuju loše optimizirane web stranice ili neispravna proširenja koja neprekidno gomilaju resurse. Umjesto ponovnog pokretanja računala ili reinstalacije sustava, korisnici na Windowsima mogu pritisnuti prečac Shift + Esc (odnosno otvoriti ugrađeni Upravitelj zadataka na Macu) i izravno unutar Chromea vidjeti koja točno kartica ili dodatak troši neuobičajeno puno memorije te ga prekinuti jednim klikom.