Apa itu Swapping?

Ketika kita melakukan instalasi sistem opereasi linux pasti kita akan membuat partis untuk SWAP, pertisi ini berfungsi nantinya sebagai memori tambahan di dalam sistem operasi dan akan melakukan swapping.

Apa itu Swapping?

Setiap proses pekerjaan komputer harus berada di dalam memori untuk dieksekusi. Proses juga bisa ditukar (swap) sementara, waktu keluar dari memori kemudian ke backing store dan dibawa kembali ke dalam memori untuk melanjutkan eksekusi.

Backing store merupakan sebuah perangkat penyimpanan dengan kecepatan tinggi yang cukup untuk meletakkan copy dari semua memory image untuk semua user di linux, sistem juga harus bisa menyediakan akses langsung ke memory image tersebut.

Sederhananya Swapping adalah Aktivitas pemindahan proses yang tertunda dari memori utama ke memori sekunder. Karena kapasitas memori utama terbatas untuk sejumlah proses aktif. Agar ruang memori dapat bermanfaat, maka proses dipindah dari memori utama ke memori sekunder agar tersedia ruang untuk proses-proses lain

Baca juga : Macam-macam partisi di linux

Contohnya, sebuah lingkungan multiprogramming dengan penjadwalan CPU menggunakan algoritma round-robin. Pada saat waktu kuantum berakhir, manajer memori akan memulai untuk menukar proses yang baru selesai keluar dan menukar proses lain ke dalam memori yang dibebaskan seperti pada gambar berikut ini :

proses swapping
Proses Swapping


Setelah eksekusi selama suatu waktu, proses mungkin akan menunda sebuah eksekusi karena membuat sebuah permintaan layanan input/output atau memanggil suatu system call. Proses-proses tertunda tidak dapat membuat suatu kemajuan menuju selesai sampai kondisi-kondisi yang menyebabkan tertunda dihilangkan.

Ketika waktu berjalan, penjadwal CPU (CPU scheduler) akan mengalokasikan sebagian waktunya untuk proses yang lain di memori. Ketika masing-masing proses menyelesaikan waktu kuantum-nya, akan ditukar dengan proses yang lain. Kebijakan penukaran juga dapat digunakan pada algoritma penjadwalan berbasis prioritas.

Jika proses mempunyai prioritas lebih penting atau tinggi datang dan meminta layanan, memori akan swap out proses dengan prioritas yang lebih rendah atau tidak terlalu penting sehingga proses dengan prioritas lebih tinggi dapat di-load dan dieksekusi. Umumnya sebuah proses yang di-swap out akan menukar kembali ke ruang memori yang sama dengan sebelumnya. Jika proses pengikatan dilakukan pada saat load-time, maka proses tidak dapat dipindah ke lokasi yang berbeda.

Apabila CPU scheduler memutuskan untuk mengeksekusi sebuah proses, maka sistem operasi akan memanggil dispatcher. Dispatcher memeriksa untuk melihat apakah proses selanjutnya pada ready queue ada di dalam memori. Jika tidak terdapat cukup memori bebas atau kosong, maka dispatcher swap out sebuah proses yang ada di memori dan swap in proses tersebut.

Kemudian reload register ke keadaan normal. Teknik swapping yang sudah dimodifikasi ditemui pada beberapa sistem misalnya Linux, UNIX dan Windows.

0 Comments

Post a Comment