Memori adalah pusat dari operasi pada sistem komputer modern, berfungsi sebagai tempat penyimpanan informasi yang harus diatur dan dijaga sebaik-baiknya. Memori adalah array besar dari word atau byte, yang disebut alamat. CPU mengambil instruksi dari memory berdasarkan nilai dari program counter. Sedangkan manajemen memori adalah suatu kegiatan untuk mengelola memori komputer. Proses ini menyediakan cara mengalokasikan memori untuk proses atas permintaan mereka, membebaskan untuk digunakan kembali ketika tidak lagi diperlukan serta menjaga alokasi ruang memori bagi proses.
Hirarki Memori |
1. Meningkatkan kinerja atau Utilitas CPU.
2. meningkatkan kecepatan akses CPU terhadap data dan instruksi Data dan instruksi dapat diakses dengan cepat oleh CPU.
3. meningkatkan efisensi pemakaian memori yang terbatas.
4. Meningkatkan efisiensi transfer atau perpindahan data dari atau ke memori utama dan dari atau ke CPU.
5. Mengelola informasi yang dipakai dan tidak dipakai.
6. Mengalokasikan memori ke proses yang memerlukan.
7. Mendealokasikan memori dari proses telah selesai.
8. Mengelola swapping atau paging antara memori utama dan disk.
Jenis-Jenis memori
Pada prinsipnya memori dalam sistem komputer dibedakan menjadi dua yaitu memori kerja dan memori dukung atau backing store. Memori Kerja mempunyai tugas utaman untuk menampung pekerjaan pada saat sebelum dan sesudah pekerjaan itu dilaksanakan oleh prosesor dan menampung berbagai hal yang diperlukan prosesor, contohnya system operasi, system bahasa, catatan. Beberapa Contoh memori kerja untuk memori tetap adalah: :
- ROM (Read Only Memory), adalah memori yang hanya dapat baca saja.
- PROM (Programmable ROM), adalah memori yang dapat diprogram tetapi tidak dapat dihapus lagi
- EPROM (Electrically PROM), adalah memori yang dapat diisi melalui listrik, dan dapat dihapus.
- EEPROM (Erasable EPROM), adalah memori yang dapat diisi dan dihapus dengan listrik, maka ciri utamanya adalah isi tetap ada / tidak mudah dihapus meskipun daya listrik computer terputus.
- Registe mikroproseso. Memori yang memiliki ukurannya paling kecil tapi memiliki waktu akses paling cepat, umumnya hanya 1 siklus CPU saja.
- RAM (Random Access Memory): memori yang dapat diisi dan dapat dibaca. Ciri utamanya adalah mengenal asas pemuktahiran yaitu dapat diisi dengan informasi terbaru dan isi akan hilang jika catu daya padam.
- Cache memory. Memori berkapasitas kecil tetapi berkecepatan tinggi, yang dipasang diantara prosesor dan memori utama. Instruksi dan data yang sering diakses oleh prosesor ditempatkan dalam chace sehingga dapat lebih cepat diakses oleh prosesor. Jika data atau instruksi yang diperlukantidak tersedia dalam chacce, prosesor akan mencari dalam memori utama. Cach memory disusun berdasarkan kedekatannya dengan prosesor (level-1, level-2, level-3, dan seterusnya). Level cache memori tersebut dibedakan berdasarkan kapasitasnya.
Istilah-istilah dalam manajemen memori
- Memori manajer adalah bagian dari sistem operasi yang mempunyai pengaruh dalam menentukan proses mana yang diletakkan pada antrian dan mengatur hirarki memori. Memory manager digunakan untuk mencegah satu proses dari penulisan dan pembacaan oleh proses lain yang dilokasikan di primary memory, mengatur swapping antara memori utama dan disk ketika memori utama terlalu kecil untuk memegang semua proses Swapping merupakan pemindahan proses dari memori utama ke disk dan kembali lagi.
- Sebuah proses harus berada di memori untuk dieksekusi. Proses juga dapat ditukar (swap) sementara keluar memori ke backing store dan kemudian dibawa kembali ke memori untuk melanjutkan eksekusi. Backing store berupa disk besar dengan kecepatan tinggi yang cukup untuk meletakkan copy dari semua memory image untuk semua user, sistem juga harus menyediakan akses langsung ke memory image tersebut.
- Fragmentasi Eksternal terjadi pada situasi dimana terdapat cukup ruang memori total untuk memenuhi permintaan, tetapi tidak dapat langsung dialokasikan karena tidak berurutan. Fragmentasi eksternal dilakukan pada algoritma alokasi dinamis, terutama strategi first-fit dan best-fit. Fragmentasi Internal terjadi pada situasi dimana memori yang dialokasikan lebih besar dari pada memori yang diminta tetapi untuk satu partisi tertentu hanya berukuran kecil sehingga tidak digunakan.
- Paging merupakan kemungkinan solusi untuk permasalahan fragmentasi eksternal dimana ruang alamat logika tidak berurutan; mengijinkan sebuah proses dialokasikan pada memori fisik yang terakhir tersedia. Memori fisik dibagi ke dalam blok-blok ukuran tetap yang disebut frame. paging diimplementasikan dalam suatu tabel page. Setiap sistem operasi mempunyai metode sendiri untuk untuk menyimpan tabel page. Tiga prinsip dasar dalam implementasi pageing yaitu: 1)Tabel page diimplementasikan sebagai kumpulan dari “dedicated” register. 2) Tabel page disimpan pada main memori dan menggunakan page table base registe” (PTBR) untuk menunjuk ke tabel page yang disimpan di main memori. 3) Menggunakan perangkat keras cache yang khusus, kecil dan cepat yang disebut associative register atau translation look-aside buffers (TLBs).
- Multilevel paging digunakan pada sistem yang mempunyai ruang alamat logika yang sangat besar yaitu antara 232 s/d 264. Pada sistem ini, tabel page akan menjadi sangat besar. Misalnya untuk sistem dengan ruang alamat logika 32 bit dan ukuran page 4K byte, maka tabel page berisi 1 juta entry (232 / 212). Solusinya yaitu dengan melakukan partisi tabel ke beberapa beberapa bagian yang lebih kecil.
- Segmentasi adalah skema manajemen memori yang memungkinkan user untuk melihat memori tersebut. Ruang alamat logika adalah kumpulan segmen. Setiap segmen mempunyai nama dan panjang. Spesifikasi alamat berupa nama segmen dan offset. Segment diberi nomor dan disebut dengan nomor segmen (bukan nama segmen) atau segment number. Segmen dibentuk secara otomatis oleh compiler.
Alamat yang dibangkitkan oleh CPU disebut alamat logika (logical address) dimana alamat terlihat sebagai unit memory yang disebut alamat fisik (physical address). Tujuan utama manajemen memori adalah konsep meletakkan ruang alamat logika ke ruang alamat fisik. Hasil skema waktu kompilasi dan waktu pengikatan alamat pada alamat logika dan alamat memori adalah sama. Tetapi hasil skema waktu pengikatan alamat waktu eksekusi berbeda. dalam hal ini, alamat logika disebut dengan alamat maya (virtual address).
Himpunan dari semua alamat logika yang dibangkitkan oleh program disebut dengan ruang alamat logika (logical address space). Alamat memori yang digunakan oleh program / data berurutan / berjulat. Jika kita menggunakan alamat 1, maka kita pun menggunakan alamat 2,3, … dan untuk 1 informasi jika alamat awalnya 0 dan alamat lainnya relatif terhadap alamat awal 0 ini, maka dinamakan alamat relatif. Dan alamat tersebut adalah logika dari untaian alamat yang menyimpan informasi maka dikenal alamat memori logika.
Himpunan dari semua alamat fisik yang berhubungan dengan alamat logika disebut dengan ruang alamat fisik (physical address space). Sel memori pada memori kerja adalah sumber daya berbentuk fisik, sehingga untuk mencapai sel memori ini digunakan kata pengenal. Maka disebutlah alamat fisik dan karena nomor alamat fisik ini bersifat mutlak (nomor setiap sel adalah tetap), maka disebut juga alamat mutlak.
Memory Manajement Unit (MMU) adalah perangkat keras yang memetakan alamat virtual ke alamat fisik. Pada skema MMU, nilai register relokasi ditambahkan ke setiap alamat yang dibangkitkan oleh proses user pada waktu dikirim ke memori.
Contoh : alamat awal relatif 0, alamat awal fisik 14726, maka selisihnya = relokasinya = 14726-0 = 14726.
Tabel Alamat relatif dan alamat mutlak memori
Virtual Memori
Memori virtual adalah teknik manajemen memor yang dikembangkan untuk kerne multi-tuga. Teknik ini divirtualisasika dalam berbagai bentuk arsitektur kompute dari komputer penyimpanan dat (seperti memori akses aca dan cakram penyimpana), yang memungkinkan sebuah progra harus dirancang seolah-olah hanya ada satu jenis memori dan bertindak secara langsung (RAM). Sebagian besar sistem operasi modern yang mendukung memori virtual menjalankan setiap prose di ruang alama khusus. Setiap program memiliki akses tunggal ke memori virtual. Namun, beberapa sistem operasi yang lebih tua (seperti OS/VS dan OS/VS2 SV) dan bahkan yang modern yang (seperti IBM ) memiliki ruang alamat tungga yang terdiri dari memori virtual untuk menjalankan semua proses.Memori virtual membuat pemrograman aplikasi lebih mudah untuk fragmentas persembunyian dari memori fisik. Dengan mendelegasikan ke kernel beban dalam mengelola hierarki memori. Sehingga menghilangkan keharusan program dalam mengatasi permasalahan secara eksplisit. Ssetiap proses berjalan dalam ruang alamat khususnya, dengan menghindarkan kebutuhan untuk merelokas kode program atau untuk mengakses memori dengan pengalamatan relatif. Virtualisasi memor adalah generalisasi dari konsep memori virtual.
0 komentar:
Website