Perbedaan antara memori cache dan memori virtual ada dalam tujuan penggunaan keduanya dan dalam keberadaan fisik. Memori cache adalah jenis memori yang digunakan untuk meningkatkan waktu akses memori utama. Itu berada di antara CPU dan memori utama, dan bisa ada beberapa tingkat cache seperti L1, L2 dan L3. Jenis perangkat keras yang digunakan untuk memori cache jauh lebih mahal daripada RAM (Random Access Memory) yang digunakan untuk memori utama karena memori cache jauh lebih cepat. Karena alasan ini, kapasitas memori cache sangat kecil. Memori virtual adalah teknik manajemen memori yang digunakan untuk secara efisien menggunakan RAM (memori utama) sambil memberikan ruang memori terpisah untuk setiap program yang bahkan lebih besar dari kapasitas fisik RAM (memori utama) yang sebenarnya. Di sini hard disk digunakan untuk memperluas memori. Item-item dalam RAM fisik ditransfer bolak-balik dengan hard disk.
Memori cache adalah a jenis memori yang terletak di antara CPU (Central Processing Unit) dan RAM (Random Access memory). Tujuan dari memori cache adalah untuk mengurangi waktu akses memori CPU dari RAM. Memori cache jauh lebih cepat daripada RAM. Jadi waktu akses pada cache jauh lebih kecil daripada waktu akses pada RAM. Tetapi biaya memori yang digunakan untuk memori cache jauh lebih tinggi daripada biaya memori yang digunakan untuk RAM, dan karenanya, kapasitas memori cache sangat kecil. Jenis memori yang digunakan untuk memori cache disebut SRAM (Static Random Access Memory).
Setiap kali CPU ingin mengakses memori, ia pertama-tama memeriksa apakah yang dibutuhkannya berada di memori cache. Jika ya, itu akan dapat mengaksesnya dengan latensi paling sedikit. Jika tidak berada di cache, maka konten yang diminta akan disalin dari RAM ke cache dan kemudian hanya CPU yang akan mengaksesnya dari cache. Di sini, saat menyalin konten dari cache, tidak hanya konten di alamat memori yang diminta tetapi juga konten terdekat disalin ke cache. Jadi, waktu berikutnya ada kemungkinan tinggi untuk hit cache terjadi karena sebagian besar program komputer mengakses data terdekat atau data yang terakhir diakses sebagian besar kali. Jadi karena cache, latensi memori rata-rata berkurang.
Di CPU, ada tiga jenis cache: Cache instruksi untuk menyimpan instruksi program, Cache data untuk menyimpan item data, dan Buffer Penelusuran Terjemahan untuk menyimpan pemetaan memori. Untuk cache data, umumnya, ada cache multi-level. Artinya, ada beberapa cache seperti L1, L2 dan L3. L1 cache adalah memori cache tercepat tetapi terkecil yang paling dekat dengan CPU. L2 cache lebih lambat dari L1, tetapi lebih besar dari L1 dan berada setelah L1 cache. Karena hierarki ini, waktu akses memori rata-rata yang lebih baik dapat dicapai dengan biaya lebih murah.
Memori virtual adalah a teknik manajemen memori digunakan dalam sistem komputer. Tidak ada perangkat keras yang disebut memori virtual, tetapi itu adalah konsep yang menggunakan RAM dan hard disk untuk menyediakan ruang alamat virtual untuk program. RAM pertama dibagi menjadi potongan-potongan yang disebut halaman dan mereka diidentifikasi oleh alamat memori fisik. Dalam hard disk, bagian khusus disediakan di mana, di Linux, itu disebut swap dan, di Windows, itu disebut file halaman. Ketika sebuah program dimulai, diberikan ruang alamat virtual yang bahkan bisa lebih besar dari memori fisik yang sebenarnya. Ruang memori virtual juga dibagi menjadi potongan-potongan yang disebut halaman dan masing-masing halaman memori virtual ini dapat dipetakan ke halaman fisik. Tabel yang disebut tabel halaman melacak pemetaan ini. Ketika memori fisik kehabisan ruang, apa yang dilakukan adalah, halaman fisik tertentu didorong ke bagian khusus dalam hard disk. Ketika halaman apa pun yang didorong ke hard disk diperlukan lagi, ia dibawa ke memori fisik dengan meletakkan halaman lain yang dipilih dari memori fisik ke hard disk.
• Memori cache adalah jenis memori yang digunakan untuk meningkatkan waktu akses memori utama. Ini adalah jenis memori yang lebih cepat yang berada di antara CPU dan RAM untuk mengurangi latensi akses memori rata-rata. Memori virtual adalah metode manajemen memori di mana itu adalah konsep yang memungkinkan program mendapatkan ruang memori virtual sendiri, yang bahkan lebih besar daripada RAM fisik nyata yang tersedia.
• Memori cache adalah jenis memori perangkat keras yang sebenarnya ada secara fisik. Di sisi lain, tidak ada perangkat keras yang disebut memori virtual karena merupakan konsep yang menggunakan RAM, hard disk, unit manajemen memori, dan perangkat lunak untuk menyediakan jenis memori virtual.
• Manajemen memori cache dilakukan sepenuhnya oleh perangkat keras. Memori virtual dikelola oleh sistem operasi (perangkat lunak).
• Memori cache terletak di antara RAM dan prosesor. Transfer data melibatkan RAM, memori cache, dan prosesor. Memori virtual, di sisi lain, melibatkan transfer data antara RAM dan hard disk.
• Memori cache mengambil ukuran kecil seperti Kilobyte dan Megabita. Memori virtual, di sisi lain, melibatkan ukuran besar yang membutuhkan gigabytes.
• Memori virtual melibatkan struktur data seperti tabel halaman yang menyimpan pemetaan antara memori fisik dan memori virtual. Tetapi tipe struktur data ini tidak diperlukan untuk memori cache.
Ringkasan:
Memori cache digunakan untuk meningkatkan waktu akses memori utama sementara memori virtual adalah metode manajemen memori. Memori cache adalah perangkat keras yang sebenarnya, tetapi tidak ada perangkat keras yang disebut memori virtual. RAM, hard disk, dan berbagai perangkat keras lainnya bersama dengan sistem operasi menghasilkan konsep yang disebut memori virtual untuk menyediakan ruang memori virtual yang besar dan terisolasi untuk setiap program. Konten dalam memori cache dikelola oleh perangkat keras sementara konten dalam memori virtual dikelola oleh sistem operasi.
Gambar: