1.
Pengertian
Memori dan Manajemen Memori
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.
Pengelolaan
memori utama sangat penting untuk sistem komputer, penting untuk memproses dan
fasilitas masukan/keluaran secara efisien, sehingga memori dapat menampung
sebanyak mungkin proses dan sebagai upaya agar pemogram atau proses tidak
dibatasi kapasitas memori fisik di sistem komputer. Fungsi manajemen memori
mempunyai peranan sangat penting dalam sistem komputer. Fungsi menejemen memori
tersebut adalah :
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.
2.
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.
- EPROM (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.
- Sementara itu Contoh memori kerja untuk memori bebas adalah :
- 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.
Memori kerja terdiri dari sel memori yang berisi 1 kata sandi, misalnya sistem 8 bit menggunakan 8 bit kata sandi, sistem 1 kbyte menggunakan 1024 byte kata sandi. Sementara itu yang termasuk dalam Memori Dukung / backing store adalah: Floppy, Harddisk, CD, tape magnetik, flash disk dll.
3.
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:
- Tabel page diimplementasikan sebagai kumpulan dari “dedicated” register.
- Tabel page disimpan pada main memori dan menggunakan page table base registe” (PTBR) untuk menunjuk ke tabel page yang disimpan di main memori.
- 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.
4. Ruang
Alamat Logika Dan Ruang Alamat Fisik
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.
5. 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.
Sumber :
http://arka-tkj.blogspot.com/2014/10/pengertian-manajemen-memori.html