MANAJEMEN MEMORI PEMARTISIAN DINAMIS

1. Multiprogramming dengan Swapping

Pada sistem timesharing, umumnya terdapat lebih banyak proses dibandingkan memori yang tersedia untuk memuat seluruh proses. Dengan demikian perlu menyimpan proses-proses yang tidak termuat memori ke disk. Untuk menjalankan  proses-proses yang akan dieksekusi, proses-proses itu harus telah masuk memori utama. Pemindahan proses dari memori utama ke disk dan sebaliknya disebut swapping.
Dengan swapping, multiprogramming sistem timesharing dapat ditingkatkan kinerjanya yaitu dengan memindah proses-proses blocked ke disk dan hanya memasukkan roses-proses ready ke memori utama.


2. Multiprogramming dengan Pemartisian Dinamis

Dengan pemartisian dinamis, maka jumlah, lokasi dan ukuran proses di memori dapat beragam sepanjang waktu secara dinamis. Proses yang akan masuk ke memori segera dibuatkan partisi untuknya sesuai kebutuhan. Teknik ini meningkatkan utilitas memori.
Kelemahannya :
a. Dapat terjadi lubang-lubang kecil memori diantara partisi-partisi yang dipakai.
b. Merumitkan alokasi dan dealokasi memori.

Lubang-lubang (yaitu kelompok blok memori yang tidak digunakan) kecil di Antara blok-blok memori yang digunakan dapat diatasi dengan pemadatan memori (memory compaction). Pemadatan memori adalah operasi menggabungkan semua lubang kecil menjadi satu lubang besar dengan memindahkan semua proses agar saling berdekatan.
Kelemahan teknik pemadatan memori :
a. Memerlukan waktu yang sangat banyak
b. Sistem harus menghentikan sementara semua proses selagi melakukan pemadatan.


3. Proses Tumbuh dan Berkembang

Masalah lain pada pemartisian dinamis adalah proses dapat tumbuh berkembang. Segmen data proses dapat tumbuh, misalnya karena :
a. Heap untuk data dinamis berkembang
b. Stack untuk pemanggilan prosedur dan variabel lokal.

Solusi masalah ini adalah bila proses bersebelahan dengan lubang memori tidak dipakai, proses tumbuh memakai lubang itu. Masalah menjadi lebih parah bila proses bersebelahan dengan proses-proses lain.
Peringkat alternatif penyelesaian adalah sebagai berikut :
a. Bila masih terdapat lubang besar yang dapat memuat proses, maka proses dipindah ke lubang memori yang cukup dapat memuat.
b. Satu proses atau lebih di-swap ke disk agar memberi lubang cukup besar untuk proses yang berkembang.
c. Jika roses tidak dapat tumbuh di memori dan daerah swap di disk telah penuh, proses harus menunggu atau disingkirkan.


4. Pencatatan Pemakaian Memori

Memori yang tersedia harus dikelola, dilakukan dengan pencatatan pemakaian memori. Terdapat tiga cara utama pencatatan pemakaian memori, yaitu :
a. Pencatatan pemakaian peta bit (bitmap)
b. Pencatatan memakai senarai berkait
c. Pencatatan memakai sistem buddy


5. Pencatatan Pemakaian Peta Bit

Memori dibagi menjadi unit-unit alokasi, berkorespondensi dengan tiap unit alokasi adalah satu bit pada peta bit.
a. Nilai 0 pada peta bit berarti unit itu masih bebas.
b. Nilai 1 berarti unit digunakan.

Masalah:
a. Unit alokasi mmori berukuran kecil berarti membesarkan ukuran peta bit
b. Unit alokasi memori n berukuran besar berarti peta bit kecil tapi memori banyak disiakan pada unit terakhir masing-masing roses jika ukuran proses bukan kelipatan unit alokasi.

Keunggulan : Dealokasi dapat dilakukan secara mudah, hanya tinggal menge-set bit yang berkorespondensi dengan unit yang telah tidak digunakan dengan 0.
Kelemahan : Harus dilakukan perhitungan blok lubang memori saat unit memori bebas dan memerlukan ukuran peta bit besar untuk memori yang besar.


6. Pencatatan Memeakai Senarai berkait

Sistem operasi mengelola senarai berkait (linked list) untu blok-blok memori yang dialokasikan dan bebas. Blok memori menyatakan memori untuk proses atau memori yang bebas (lubang).

Keunggulan : Tidak ada perhitungan blok lubang memori karena sudah tercatat di simpul dan memori yang diperlukan relatif lebih kecil.
Kelemahan : Dealokasi sulit dilakukan karena terjadi beberapa operasi penggabungan simpul-simpul senarai.


7. Pencatatan Memakai Sistem Buddy

Sistem buddy adalah algoritma pengelolaan memori yang memanfaatkan kelebihan penggunaan bilangan biner untuk pengalamatan memori. Karakteristik bilangan biner digunakan untuk mempercepat penggabungan lubang-lubang berdekatan ketika proses berakhir atau dikeluarkan.

Keunggulan :  Sistem buddy memiliki keunggulan dibandingkan dengan algoritma-algoritma yang mengiritkan blok-blok berdasarkan ukuran. Ketika blok berukuran 2¬k dibebaskan, maka manajer memori hanya mencari pada senarai lubang 2¬k untuk memeriksa apakah dapat dilakukan penggabungan. Pada algoritma-algoritma lain yang memungkinkan blok-blok memori dipecah dalam sembarang ukuran, seluruh senarai harus dicari. Alokasi dan dealokasi pada sistem buddy dapat dilakukan dengan cepat.

Kelemahan : Utilitas memori sangat tidak efisien.


8. Strategi Alokasi Memori

Terdapat beragam strategi alokasi proses ke memori. Alokasi harus mencari sekumpullan blok memori yang ukurannya mencukupi untuk memuat proses yaitu lubang kosong yang sama atau lebih besar disbanding ukuran memori yang diperlukan proses.

Beragam algoritma itu Antara lain :

a. First-fit Algorithm
Manajer memori menelusuri peta biat 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 itu tepat sama dengan ukuran yang diperlukan proses.
Keunggulan : Menemukan lubang memori paling cepat dibandingkan algoritma lain.

b. Next-fit Algirithm
Mekanismenya sama dengan algoritma first-fit, hanya penelusuran tidak dimulai dari awal tapi dimulai dari posisi terakhir kali menemukan segmen untuk proses.

c. Best-fit Algorithm
Algoritma mencari sampai akhir dan mengambil lubang terkecil yang dapat memuat proses. Algoritma ini mencoba mencari lubang yang mendekati ukuran yang diperlukan.
Kelemahan : sangat lamban dibandingkan first-fit dan menghasilkan mamori yang diboroskan lebih banyak disbanding dua algoritma sebelumnya.

d. Worst-fit Algorithm
Selalu mencari lubang besar yang tersedia sehingga lubang dapat dipecah menjadi cukup besara agar berguna untuk proses-proses berikutnya.

e. Quick-fit Algorithm
Keempat algoritma di atas dapat dipercepat dengan mengelola dua senarai yaitu senarai untuk proses dan senarai untuk lubang memori. Dengan berbagai senarai maka alokasi memori dapat dilakukan dengan cepat yaitu tinggal mencari senarai terkecil yang dapat menampung proses.
Keunggulan : sangat cepat dalam alokasi proses.
Kelemahan : dealokasi sulit dilakukan.


9. Alokasi Ruang Swap pada Disk

Strategi dan algortima yang dibahas aalah untuk mencatat memori utama. Ketika proses akan dimasukkan ke memori utama (swap in), sistem dapat menemukan ruang untuk proses-proses itu.

Terdapat dua strategi utama penempatan roses yang dikulauarkan dari memori utama (swap out) ke disk, yaitu :
a. Ruang disk tempat swap dialokasikan begitu diperlukan.
Ketika proses harus dikeluarkan dari memori utama, ruang disk segera dialokasikan sesuai ukuran proses. Untuk itu, diperlukan algoritma untuk mengelola ruang disk seperti untuk mengelola memori utama.Ketika proses dimasukkan kembali ke memori utama, segera ruang disk untuk swap dialokasikan.
b. Ruang disk tempat swap dialokasikan lebih dulu.
Saat proses diciptakan, ruang swap pada disk dialokasikan. Ketika proses harus dikeluarkan dari memori utama, proses selalu ditempatkan ke ruang yang telah dialokasikan, bukan ke tempat-tempat berbeda setiap kali terjadi swap out. Ketika proses berakhir, ruang swap pada disk didealokasikan.

2 comments:

Copyright © 2013 Free your mind ! and Blogger Templates - Anime OST.