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.
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.
a.
Jenis Memori
1.
Memori Kerja
·
ROM/PROM/EPROM/EEPROM
·
RAM
·
Cache memory
2. Memori
Dukung
·
Floppy
·
Harddisk
·
CD
b.
Fungsi manajemen memori :
Manajemen memori merupakan salah satu bagian terpenting dalam sistem operasi. Memori perlu dikelola sebaik-baiknya agar :
Manajemen memori merupakan salah satu bagian terpenting dalam sistem operasi. Memori perlu dikelola sebaik-baiknya agar :
1.
Utilitas CPU meningkat.
2. Data dan
instruksi dapat diakses dengan cepat oleh CPU.
3. Tercapai
efisiensi dalam pemakaian memori yang terbatas.
4. Transfer
data dari/ke memori utama ke/dari CPU dapat lebih efisien.
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.
^^Manajemen memory :
1.
Manajemen Memory Partisi Statis
Untuk melakukan tugas multiprogramming pada sistem
komputer maka setiap program yang sedang dijalankan harus di muat ke dalam
memory, tetapi antara program yang satu satu dengan yang lain tidak boleh
saling mempengaruhi. Untuk menjaga setiap program yang sedang berjalan
tidak saling mempengaruhi maka masing-masing program akan di tempatkan pada
partisi yang berbeda di dalam memory. Ada berbagai cara mempartisi memory
tetapi yang paling mudah dan efisien adalah membuat partisi berbeda mulai
dari ukuran kecil sampai ukuran besar. Program yang akan di jalankan
akan di tempatkan pada partisi paling kecil yang dapat menampungnya.
Program yang akan dijalankan dimasukkan ke memory dengan cara antrian sehingga
menempati satu partisi yang mungkin belum cocok. Karena program kecil dapat
saja menempati partisi besar sehingga banyak memory yang tidak terpakai di
dalam partisinya. Atau program besar tidak dapat di muat karena partisi
yang tersisa terlalu kecil untuknya. Untuk mengatasi hal itu maka
program kecil yang yangb telah menempati partisi besar akan di swap ke partisi
yang lebih kecil, sehingga partisi yang besar itu dapat di pakai untuk program
yang lebih besar. Walaupun sudah diusahakan penempatan program pada partisi
yang paling efisien masih saja terdapat bolong-bolong memory yang tidak
termamfaatkan, yang disebut dengan
fragmentasi. Bila ada bolong memory di dalam partisi yang tidak habis
terpakai oleh program pada partsisi itu maka dikatakan fragmentasi internal . Tetapi bila bolong memory itu
berupa satu partisi yang karena ukurannya lebih kecil dari program yang kan
menempatinya, sehingga partisi itu tidak bisa di muati program maka
disebut Fragmentasi Eksternal. Untuk
mencegah terjadinya fragmentasi eksternal maka dapat dilakukan dengan swap.
2.
Manejemen memory Partisi Dinamis
Untuk mengurangi fragmentasi dalam memory maka
dilakukan partisi dinamis, dimana setiap program yang akan dimasukkan ke mamory
akan dibuatkan partisi yang sesuai dengannya. Begitu juga apabila ada program
yang tidak berguna akan diluarkan dari memory dn memory yang ditinggal akan
digabungkan dengan memory kosong lainnya. Begitu seterusya sehingga tidak ada
bagian memory yang kosong yang tidak dapat digunakan. Proses penggabungan
memory yang tidak terpakai karena programnya sudah selesai bekerja, sehingga
mendapatkan memory bebas lebih besar dinamakan pemadatan memory (memory compaction).
3.
Manajemen Memory Sistem Paging
Walaupun sistem partisi dinamis sudah dapat
menyelesaikan masalah menjemen memory banyak hal tetapi masih mempunyai
keterbatasan acses sebatas address memory yang ada secara phisik. Kalau kita
punya memory 32 MB maka address maksimum yang dapat di akses sebesar 32 MB itu
saja. Agar kemampuan akses ke memory lebih luas maka dibentuklah memory maya (virtual memory). Dengan
memory maya program yang besar akan dapat di terapkan dalam memory kecil saja.
Misalnya program 200 MB akan dapat di tempatkan secara maya di memory 20 MB.
Untuk mengimplemetasikan address maya yang besar itu ke dalam memory yang kecil
itu diperlukan : indexs register, base
register, segmen register dan MMU (memory manajemen unit).