Senin, 17 Mei 2010

managing memory | swapping

Dalam tahapannya, suatu proses bisa saja di tukar keluar sementara dari memori ke sebuah penyimpanan sementara dan kemudian dibawa lagi ke memori untuk melanjutkan pengekskusian. Hal ini dalam system operasi disebut swapping. Contoh swapping adalah asumsikan sebuah multi programming environment dengan penjadwalan CPU Round-Robin. Ketika waktu kuantum habis, pengatur memori akan menukar proses yang telah selesai dan memasukkan proses yang lain ke dalam memori yang sudah bebas. Disaat yang bersamaan, penjadwal CPU akan mengalokasikan waktu untuk proses lain di dalam memori. Ketika waktu kuantum setiap proses sudah habis, proses tersebut akan ditukar dengan proses lain.
Dalam kondisi ideal, penukaran proses dapat dilakukan dengan cepat sehingga proses akan selalu berada dalam memori dan siap dieksekusi saat penjadwal CPU hendak menjadwal CPU. Hal ini berkaitan dengan CPU utilization. Swapping dapat juga terdapat dalam penjadwalan berbasis prioritas (priority scheduling). Jika proses dengan prioritas lebih tinggi datang dan meminta layanan, manajer memori dapat menukar keluar memori proses-proses yang prioritasnya rendah sehingga proses-proses yang prioritasnya lebih tinggi tersebut dapat dieksekusi. Setelah proses-proses yang memiliki prioritas lebih tinggi tersebut selesai dieksekusi, proses-proses dengan prioritas rendah dapat ditukar kembali ke dalam memori dan dilanjutkan eksekusinya. Cara ini disebut juga dengan metoda roll in, roll out.
Ketika proses yang sebelumnya ditukar, akan dikembalikan keruang memori. Ada 2 kemungkinan yang terjadi.

Pertama, apabila pemberian alamat dilakukan pada waktu pembuatan atau waktu pengambilan, maka proses tersebut pasti akan menempati ruang memori yang sama. Kedua, apabila pemberian alamat diberikan pada waktu eksekusi, ada kemungkinan proses akan dikembalikan ke ruang memori yang berbeda dengan sebelumnya.

Tidak ada komentar:

Posting Komentar