PENGERTIAN SWAPPING

Dalam batch system, organisasi memori dlm partisi tetap sederhana dan efektif
Dalam timesharing system atau berorientasi grafik, situasinya berbeda. Kadang-kadang
memori tidak cukup utk memegang semua proses, shgg sebagian proses
harus di simpan dlm disk dan diambil utk dijalankan secara dinamik

Ada 2 pendekatan tgt dari ketersediaan hardware :
• Swapping
• Virtual memory

Swapping dilakukan dg membawa keseluruhan proses dan menjalankannya dlm
waktu singkat kemudian meletakkanya kembali dalam disk. Vitual memori :
program dijalankan secara partial dlm memori utama

Perbedaan utama swapping vs multiprogramming dg partisi tetap
variabel partisi: jumlah, lokasi dan ukuran sangat dinamis dpt berubah-ubah sepanjang waktu.

Ketika swapping dilakukan, mungkin banyak ‘lubang’ (ruang kosong) terbentuk dlmmemori, lubang-lubang ini bisa digabungkan menjadi ukuran yg besar _ memory compaction (pemadatan), tetapi ini memerlukan waktu CPU yg besar . 
Contoh
mesin dg kecepatan copy 4 byte dlm 40 nsec, perlu 2,7 sec utk
meng-compact semua memory berukuran 256 MB




 


Bila ukuran proses yg dibuat selalu tetap, maka alokasi utk proses : tetap

Bila ukuran proses yg dibuat bias berkembang, maka alokasi utk proses : ada tambahan memori utk ruang tumbuh proses (kalau tdk proses akan wait/killed)

Ada 2 kemungkinan ruang tumbuh proses:
a. Growing data segment
b. Growing data segment dan growing stack 



Manajemen Memori dg Bitmaps
• Ketika memori diassign secara dinamis, SO harus mengelola hal tsb
• secara umum ada 2 cara utk mengimplementasikan hal tsb :
• Manajemen memori dg Bitmaps
• Manajemen memori dg Linked List Dg sebuah bitmap, memori akan dibagi menjadi unit-unit alokasi dlm ukuran kecil
• Utk setiap unit alokasi , 0: unit yg bebas, 1: unit yg ditempati
• ukuran unit alokasi merupakan isu desain yg penting
• Semakin kecil ukuran unit alokasi _ semakin besar ukuran bitmap penggunaan memori oleh bitmap tdk maksimal
• Semakin besar ukuran unit alokasi _ semakin kecil ukuran bitmap memori yg cukup besar akan terbuang pd unit proses terakhir jika ukuran proses tdk persis dg kumpulan unit alokasi yg ada.


Manajemen Memori dg Bitmaps

• Kelebihan Bitmaps
   Sebuah bitmap memberikan cara yg mudah utk mengatur memori dlm jumlah yg
   tetap karena ukuran bitmap tergantung dari ukuran memori dan ukuran unit alokasi.
• Kelemahan/masalah penggunaap bitmaps
  ketika sebuah k unit proses ditangani, manajer memori harus mencari bitmap dg kbit 0 yg                  berurutan.  Proses pencarian memerlukan waktu yg lama.
• Gambar 1 Bitmap dg 8 unit alokasi dan represntasi dg Linked List(Tan 199)






Sebuah elemen list terdiri atas :
• Segmen       : proses/hole
• starts           : posis awal dari unit alokasi ( dimulai dari 0)
• length          : panjang dari segmen (dlm unit alokasi)
• next             : pointer utk menunjuk segmen berikutnya
• segmen list diurutkan berdasarkan alamatnya. Pengurutan seperti ini memiliki

keuntungan dlm terminasi proses, swapped out suatu proses, update list.
• Beberapa algoritma pengalokasi-an memori utk membuat proses baru :
• First Fit
• Next Fit
• Best Fit
• Worst Fit
• Quick Fit

Berikut adalah kemungkinan terminasi proses X (ketika X tdk terletak pada posisi
teratas /terbawah memori ) :


Sebelum dan sesudah X diterminasi

First Fit
• Pencarian blok memori kosong /hole dimulai dari awal
• Hole yang dipilih adalah blok memori yang pertama kali ditemukan dan
ukurannya sesuai. Hole kemudian dipecah menjadi 2: utk proses dan unused
memory.
• Merupakan algoritma yang cepat dan paling sederhana
Next Fit
• Merupakan minor variation dari Fisrt Fit

Perbedaanya: pencarian hole dimulai pada posisi terakhir pencarian
• Performansi sedikit dibawah First Fit
Best Fit
• Pencarian hole dilakukan pada keseluruhan list dan memilih hole terkecil yg
sesuai dg kebutuhannya
• Lebih lambat daripada 2 algo. sebelumnya
• Banyak menghasilkan ‘wasted memory’ karena ia cenderung memenuhi
memori dg ukuran yg kecil-kecil (ini kurang bgt berguna)

Worst Fit
• Pencarian hole dilakukan pada keseluruhan list dan memilih hole terbesar
• Hasil simulasi: performansi tdk lebih baik dari algo. sebelumnya
Quick Fit
• Holes dan proses disimpan dalam list yang berbeda
• Pencarian hole yang sesuai jauh lebih cepat
Kelemahan , proses2 berikut menjadi sulit dilakuakn:
Termimasi proses
• Swapped out suatu proses
• Melihat apakah merger memungkinkan/tidak

No comments:

Post a Comment