Perbedaan antara memori cache dan memori virtual

Perbedaan antara memori cache dan memori virtual

Memori cache vs memori virtual
 

Perbedaan antara memori cache dan memori virtual ada di mana keduanya digunakan dan dalam keberadaan fisik. Memori cache adalah jenis memori yang digunakan untuk meningkatkan waktu akses memori utama. Ini berada di antara CPU dan memori utama, dan mungkin ada beberapa level cache seperti L1, L2 dan L3. Jenis perangkat keras yang digunakan untuk memori cache jauh lebih mahal daripada RAM (memori akses acak) 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 menggunakan RAM (memori utama) secara efisien 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. Barang -barang dalam RAM fisik ditransfer bolak -balik dengan hard disk.

Apa itu memori cache?

Memori cache adalah a jenis memori Itu terletak di antara CPU (unit pemrosesan pusat) dan RAM (memori akses acak). Tujuan dari memori cache adalah untuk mengurangi waktu akses memori CPU dari RAM. Memori cache jauh lebih cepat dari RAM. Jadi waktu akses pada cache jauh lebih rendah 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 (memori akses acak statis).

Setiap kali CPU ingin mengakses memori, pertama -tama memeriksa apakah apa 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, lain kali ada probabilitas tinggi untuk hit cache terjadi karena sebagian besar program komputer mengakses data terdekat atau data terakhir yang diakses. 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 penampilan terjemahan untuk menyimpan pemetaan memori. Untuk cache data, umumnya, ada cache multi-level. Yaitu, ada beberapa cache sebagai L1, L2 dan L3. Cache L1 adalah memori cache tercepat tapi terkecil yang paling dekat dengan CPU. Cache L2 lebih lambat dari L1, tetapi lebih besar dari L1 dan berada setelah cache L1. Karena hierarki ini, waktu akses memori rata -rata yang lebih baik dapat dicapai dengan biaya lebih murah.

Apa itu memori virtual?

Memori virtual adalah a Teknik Manajemen Memori digunakan dalam sistem komputer. Tidak ada perangkat keras yang disebut memori virtual, tetapi ini 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 dengan alamat memori fisik. Di hard disk, bagian khusus dicadangkan di mana, di Linux, disebut swap dan, di windows, itu disebut file halaman. Ketika suatu program dimulai, itu diberikan ruang alamat virtual yang 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 halaman halaman melacak pemetaan ini. Ketika memori fisik kehabisan ruang, apa yang dilakukan adalah, halaman fisik tertentu didorong ke bagian khusus di hard disk. Ketika setiap halaman didorong ke hard disk diperlukan lagi, itu dibawa ke memori fisik dengan meletakkan halaman lain yang dipilih dari memori fisik ke hard disk.

Apa perbedaan antara memori cache dan memori virtual?

• 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 ia adalah konsep yang memungkinkan program mendapatkan ruang memori virtual sendiri, yang bahkan lebih besar dari 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 memberikan 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.

• Kenangan cache mengambil ukuran kecil seperti kilobytes dan megabyte. Memori virtual, di sisi lain, melibatkan ukuran besar yang mengambil gigabytes.

• Memori virtual melibatkan struktur data seperti tabel halaman yang menyimpan pemetaan antara memori fisik dan memori virtual. Tetapi jenis struktur data ini tidak diperlukan untuk memori cache.

Ringkasan:

Memori cache vs memori virtual

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 saat konten dalam memori virtual dikelola oleh sistem operasi.

Gambar milik:

  1. Proses memori cache oleh Hellisp (CC BY-SA 3.0)
  2. Memori Virtual oleh Ehamberg (CC BY-SA 3.0)