BAB V
MANAJEMEN MEMORI
A.
Fungsi
Manajemen Memori
Memori adalah pusat kegiatan pada sebuah
komputer, karena setiap proses yang akan dijalankan harus melalui memori
terlebih dahulu. CPU mengambil instruksi dari memori sesuai yang ada pada program
counter. Instruksi memerlukan proses memasukkan/menyimpan ke alamat di memori. Tugas
sistem operasi adalah mengatur peletakan banyak proses pada suatu memori.
Algoritma untuk manajemen memori ini bervariasi dari yang menggunakan
pendekatan primitif pada mesin sampai pemberian halaman dan strategi
segmentasi. Memori harus dapat digunakan dengan baik, sehingga dapat memuat banyak
proses dalam suatu waktu.
Bagian operating system yang mengatur memori
disebut dengan memory manager. Pemakaian memori (manajemen memori dan organisasi) perlu dilakukan
karena hal tersebut sangat mempengaruhi kinerja komputer, sehingga memiliki fungsi
dan tugas penting dan kompleks yaitu berkaitan dengan :
1.
Memori utama sebagai sumber daya yang harus
dialokasikasikan dan dipakai bersama di antara sejumlah proses yang aktif,
sehingga dapat memanfaatkan pemroses dan fasilitas masukan/keluaran secara
efisien, sehingga memori
dapat menampung sebanyak mungkin proses.
2.
Upaya agar pemogram atau proses tidak dibatasi
kapasitas memori fisik di
sistem komputer.
Sistem manajemen
memori dapat dibagi kedalam dua kelas, yaitu : pemindahan proses (back and
forth) diantara memori utama dengan disk selama eksekusi (swapping and paging)
dan tidak ada pemindahan proses.
Manajemen memori
memiliki beberapa fungsi, yaitu :
a.
Mengelola informasi memori yang dipakai dan tidak
dipakai.
b.
Mengalokasikan memori ke proses yang memerlukan.
c.
Mendealokasikan memori dari proses yang telah
selesai.
d.
Mengelola swapping antara memori utama dan disk.
1. Manajemen Memori pada Sistem
Multiprogramming
Untuk sistem komputer
yang berukuran besar (bukan small
computers), membutuhkan pengaturan memori, karena dalam multiprogramming
akan melibatkan banyak pemakai secara simultan sehingga di memori akan terdapat
lebih dari satu proses bersamaan. Oleh karena itu dibutuhkan sistem operasi
yang mampu mendukung dua kebutuhan tersebut, meskipun hal tersebut saling bertentangan,
yaitu :
a. Pemisahan ruang-ruang alamat, melakukan proteksi memori dengan isolasi
ruang-ruang alamat sehingga proses-proses tidak saling mengganggu.
b. Pemakaian bersama memori sehingga memungkinkan proses-proses bekerja
sama mengakses daerah memori bersama.
2. Klasifikasi Manajemen Memori
Skema klasifikasi menurut Deitel [Dei-90]
3. Manajemen Memori Berdasarkan
Keberadaan Swapping
a.
Manajemen memori dengan swapping
Manajemen memori
dengan kemampuan memindahkan citra proses antara memori utama dan harddisk
selama eksekusi.
v
Multiprogramming dengan pemartisian dinamis
Pemartisian dinamis akan meningkatkan utilisasi memori karena jumlah, lokasi,
dan ukuran proses di memori dapat beragam sepanjang waktu secara dinamis.
v
Pencatatan pemakaian memori
ü
Pencatatan memakai peta bit
Memori dibagi menjadi unit-unit alokasi, berkorespondensi dengan tiap
unit alokasi adalah satu bit pada peta bit.
ü
Pencatatan memakai senarai berkait
Sistem operasi mengelola senarai berkait (linked list) untuk blok-blok memori yang dialokasikan dan bebas.
ü
Pencatatan memakai sistem buddy
Sistem buddy adalah algoritma pengelolaan memori yang memanfaatkan
kelebihan penggunaan bilangan biner untuk pengalamatan memori.
v
Strategi alokasi memori
ü
First-fit algorithm
Manajer memori menelusuri peta bit atau senarai berkait sampai menemukan
lubang besar yang memadai untuk ditempati proses. Lubang dibagi dua, untuk
proses dan lubang yang tidak digunakan kecuali ketika besar lubang tepat sama
dengan ukuran yang diperlukan proses.
ü
Next-fit algorithm
Penelusuran sama dengan first-fit algorithm, namun dimulai dari posisi
terakhir kali menemukan segmen untuk proses.
ü
Best-fit algorithm
Algoritma mencari sampai akhir dan mengambil lubang terkecil yang dapat
memuat proses.
ü
Worst-fit algorithm
Selalu mencari lubang besar yang tersedia
ü
Quick-fit algorithm
Hanya untuk pencatatan pada senarai berkait. Hanya menelusuri senarai
lubang memori bukan di senarai proses.
v
Alokasi ruang swap pada disk
b. Manajemen memori tanpa swapping
Manajemen memori tanpa
kemampuan memindahkan citra proses antara memori utama dan harddisk selama
eksekusi.
Ø
Manajemen memori untuk monoprogramming
ü
Hanya ada satu proses pada satu saat
ü
Hanya satu proses menggunakan semua memori
ü
Pemakai memuatkan program ke seluruh memori dari
disk
ü
Program mengambil kendali seluruh mesin
Ø
Manajemen memori untuk multiprogramming dengan
pemartisian statis
Ø
Mempermudah pemrogram
Ø
Dapat memberi layanan interaktif ke beberapa user
secara simultan
Ø
Efisiensi penggunaan sumber daya
Ø
Eksekusi lebih murah jika proses besar dipecah
menjadi beberapa proses
Ø
Dapat mengerjakan sejumlah proses secara simultan
4. Manajemen Memori Berdasarkan Alokasi
Memori
a. Alokasi memori berturutan
Masing-masing proses
menempati satu blok tunggal lokasi memori yang berturutan.
b. Alokasi memori tak berturutan
Program dibagi
menjadi beberapa blok atau segmen dan ditempatkan tanpa harus berdekatan.
Teknik ini biasa digunakan pada sistem memori maya sebagai alokasi page-page
dilakukan secara global.
Thanks for reading & sharing Kamar Pekick
0 komentar:
Post a Comment