Intanbeauty’s Blog











{April 28, 2011}   Scheduler

Scheduler adalah sebuah proses berpindah-pindah di antara berbagai penjadwalan antrian seumur hidupnya. Sistem operasi harus memilih dan memproses antrian-antrian ini berdasarkan kategorinya dengan cara tertentu. Oleh karena itu, proses seleksi ini harus dilakukan oleh scheduler yang tepat.

Dalam sistem batch, seringkali proses yang diserahkan lebih banyak daripada yang dapat dilaksanakan dengan segera. Proses-proses ini disimpan pada suatu mass-storage device (semacam disk), dimana proses tersebut disimpan untuk eksekusi di lain waktu. Long-term scheduler , atau job scheduler , memilih proses dari tempat ini dan mengisinya ke dalam memori. Sedangkan short-term scheduler , atau CPU scheduler , hanya memilih proses yang sudah siap untuk melakukan eksekusi, dan mengalokasikan CPU untuk proses tersebut.

Scheduler dilibatkan untuk memilih proses dari scheduling queue yang berbeda. Secara umum terdapat 3 scheduler yaitu :

1. Short-Term Scheduler (CPU Scheduler)

2. Medium-Term Scheduler

3. Long-Term Scheduler (Job Scheduler)

1. Short Term Scheduler (CPU Scheduler)

Short Term Scheduler digunakan untuk memilih diantara proses-proses yang siap dieksekusi dan salah satunya dialokasikan ke CPU. Short Term Scheduler sering digunakan untuk memilih proses baru untuk CPU, proses dieksekusi hanya beberapa milidetik sebelum menunggu I/O. Jika memerlukan waktu 10 mili detik untuk menentukan suatu proses eksekusi selama 100 mili detik, maka 10/(100 + 10) = 9 persen dari CPU sedang digunakan (atau terbuang) hanya untuk pekerjaan penjadwalan. Pada sistem time-sharing, setiap proses baru ditempatkan di memori.

2. Medium Term Scheduler

Suatu Scheduler tambahan yang diperkenalkan dan digunakan dalam sistem time-sharing.Ide utama atau kunci dari scheduler ini terkadang akan menguntungkan untuk memindahkan proses dari memori (dan dari pengisian aktif dari CPU), dan akibatnya degree of multiprogramming akan berkurang. Di kemudian waktu, proses dapat dibawa kembali dalam memori dan eksekusinya dapat dilanjutkan pada state dimana proses itu dipindahkan tadi. Skema ini disebut swapping . Proses di- swapped out dan di- swapped in oleh scheduler ini. Swapping mungkin diperlukan untuk meningkatkan mutu penggabungan proses, atau karena perubahan dalam kebutuhan memori yang mengakibatkan memori harus dibebaskan.

3. Long Term Scheduler (Job Scheduler)

Long-term scheduler mengontrol degree of multiprogramming (jumlah proses dalam memori). Jika degree of multiprogramming stabil, maka tingkat rata-rata penciptaan proses harus sama dengan tingkat rata rata proses meninggalkan sistem. Maka dari itu long-term scheduler mungkin dipanggil hanya ketika suatu proses meninggalkan sistem. Karena interval yang lebih panjang antara eksekusi, long-term scheduler dapat menggunakan waktu yang lebih lama untuk menentukan proses mana yang harus dipilih untuk dieksekusi.

Sangat penting bagi long-term scheduler membuat seleksi yang hati-hati. Secara umum, proses dapat dibedakan atas dua macam, yaitu proses I/O bound dan proses CPU bound. Proses I/O bound adalah proses yang lebih banyak menghabiskan waktunya untuk mengerjakan I/O dari pada melakukan komputasi. Proses CPU-bound , di sisi lain, jarang melakukan permintaan I/O, dan menggunakan lebih banyak waktunya untuk melakukan komputasi. Oleh karena itu, long-term scheduler harus memilih gabungan proses yang baik antara proses I/O bound dan CPU bound . Jika seluruh proses adalah I/O bound , ready queue akan hampir selalu kosong, dan short-term scheduler akan memiliki sedikit tugas. Jika seluruh proses adalah CPU bound , I/O waiting queue akan hampir selalu kosong, peralatan akan tidak terpakai, dan sistem akan menjadi tidak seimbang.Sistem dengan kinerja yang terbaik akan memiliki kombinasi yang baik antara proses CPU bound dan I/O bound .

Pada sebagian sistem, long-term scheduler bisa jadi tidak ada atau kerjanya sangat minim. Sebagai contoh, sistem time-sharing seperti UNIX sering kali tidak memiliki long-term scheduler . Stabilitas sistem-sistem seperti ini bergantung pada keterbatasan fisik (seperti jumlah terminal yang ada) atau pada penyesuaian sendiri secara alamiah oleh manusia sebagai pengguna. Jika kinerja menurun pada tingkat yang tidak dapat diterima, sebagian pengguna akan berhenti.

Iklan


Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s

et cetera
%d blogger menyukai ini: