Razlika između virtualne i cache memorije

Memorija u svijetu računala postavlja granicu na kojoj ćemo se temeljiti možemo li pokrenuti taj program ili ne. Ako vam nije bilo dovoljno sreće da ste iskusili DOS, tada znate granicu od 640k ograničenja memorije. Danas se čini da je memorija gotovo beskonačna i nitko zapravo ne dobiva poruke „nedovoljno memorije“ jestinske godine. Kako su to postigli?

Odgovor na to je vrlo pametan postupak upravljanja memorijom. Postavljanjem nekih dijelova koji bi trebali biti u memoriji unutar vašeg tvrdog diska oni mogu proširiti kapacitet memorije na računalnom putu izvan onoga što je instalirano; to se naziva virtualnom memorijom. Recimo da vaše računalo ima samo 1GB memorije i pokrenete nekoliko programa čija ukupna potrošnja memorije iznosi oko 1,5 GB. Bez virtualne memorije, to vam nije dopušteno. No, s virtualnom memorijom, operativni sustav dodjeljuje dio tvrdog diska kao dio memorije i tamo čuva podatke. Pa u gornjem primjeru recimo da virtualna memorija također iznosi 1 GB. 1GB stvarne memorije + 1GB virtualne memorije = 2GB sistemske memorije. Na taj način, iako je vaša memorija ograničena, i dalje možete koristiti opsežne aplikacije za memoriju.

Ipak, virtualna memorija ima nedostatak. Čitanje podataka s tvrdog diska znatno je sporije od čitanja iz memorije. Dakle, što je više podataka pohranjenih na vašem tvrdom disku, sustav će vam sporije postati sporiji.

Keš memorija s druge strane ne proširuje količinu memorije koju imate, ona samo smanjuje količinu vremena potrebnog za pristup podacima. Kako biste lako razumjeli koncept, recimo da je procesor učenik koji radi izvještaj. Kad god su mu potrebni podaci, odlazi do police s knjigama (na polici su memorija, a u knjizi su podaci), vadi knjigu i vraća je na stolicu. Čita ga, a zatim ga vraća na policu prije nego što nastavi s izvješćem. Da ste student, zaista bi vam bilo potrebno puno vremena da morate ustati i nabaviti knjigu svaki put kad vam zatreba podatak. Praktično student bi dobio nekoliko knjiga s police za knjige i stavio je na stol. Dakle, ako su mu potrebne informacije koje se nalaze u knjizi koju je nedavno koristio, to je samo nadohvat ruke i on ne mora stajati i hodati da bi je dobio.

U ovoj metafori tablica je naša keš memorija. Kad god procesor koristi podatke, najnovije podatke koje je koristio u predmemorijskoj memoriji stavlja brzi pristup u slučaju da su ponovno potrebni. Keš memorija je ipak vrlo ograničena, baš kao i tablica s ograničenim prostorom, pa se podaci kojima nije pristupio najduže vraćaju u memoriju kako bi se oslobodio privremena memorija za nedavne podatke.

Saznajte više o predmemoriji i virtualnoj memoriji.