
11. Proses penjadwalan pada Sistem Operasi Windows XP
Windows XP
menggunakan algoritma, prioritas penjadwalan quantum based berbasis preemptive priority scheduling.
Threads
dijadwalkan dalam proses, karena prioritas
preemptive algoritma diimplementasikan dengan beberapa queue, atau dapat
juga disebut dengan algoritma Multilevel Feedback Queue. Thread dengan prioritas tertinggi pasti dijalankan dan dapat
menghentikan/menginterupsi jalannya thread lain yang prioritasnya lebih rendah.
Ketika menggunakan CPU thread menghabiskan sejumlah waktu, ini disebut dengan
quantum. Quantum adalah sejumlah waktu yang diberikan kepada thread untuk
menggunakan CPU. Sifat penjadwalan windows yang preemtive memungkinkan suatu
thread untuk diinterupsi, meskipun waktu quantumnya belum habis.
22. Proses penjadwalan pada Sistem
Operasi Solaris
Solaris menggunakan penjadwalan berdasarkan prioritas dimana yang mempunyai prioritas yang lebih tinggi dijalankan terlebih dahulu, informasi tentang penjadwalan kernel thread dapat dilihat dengan ps –elcL. Kernel Solaris adalah fully preemtible, artinya semua thread, termasuk thread yang mendukung aktivitas kernel itu sendiri dapat di tunda unatuk menjalankan thread dengan prioritas yang lebih tinggi.
33. Proses penjadwalan pada Sistem
Operasi Linux
Mulai dari versi
2.5, Kernel Linux dapat berjalan di berbagai algoritma penjadwalan UNIX
tradisional. Dua masalah dalam penjadwalan UNIX tradisional adalah tidak
disediakannya dukungan yang cukup untuk SMP (symmetric multiprocessor) system
dan tidak diperhitungkan dengan baik jumlah tasks pada system yang berkembang.
Dalam versi 2.5, penjadwal memeriksa dengan teliti hal tersebut, dan sekarang
kernel juga menyajikan algoritma penjadwalan yang dapat run dalam waktu yang konstan
tidak tergantung dari jumlah task dalam system. Penjadwalan yang baru juga
menyediakan peningkatan dukungan untuk SMP (symmetric
multiprocessor), termasuk processor affinity dan load balancing, sebaik dalam
menyediakan keadilan dan dukungan terhadap interactive task.
Penjadwalan
Linux adalah preemptive, algoritmanya berdasarkan prioritas dengan dua range
prioritas yang terpisah: real-time range dari 0-99 dan nice value berkisar dari
100-140. Dua range ini dipetakan menjadi global priority scheme dimana nilai
yang lebih rendah memiliki prioritas yang lebih tinggi. Tidak seperti
penjadwalan yang lain, Linux menetapkan prioritas yang lebih tinggi memiliki
waktu kuantum yang lebih panjang dan prioritas yang lebih rendah memiliki waktu
kuantum yang lebih pendek.
Linux
mengimplementasikan real time
scheduling seperti yang didefinisikan oleh POSIX First Come First Served dan Round Robin. Sistem waktu
nyata( real time) diberikan untuk task yang
prioritasnya tetap. Sedangkan task yang lainnya memiliki prioritas
yang dinamis berdasakan nice
values ditambah atau dikurangi dengan 5. Interaktifitas sebuah task menentukan apakah nilai 5 tersebut akan ditambah
atau dikurangi dari nice value. Task yang lebih interaktif
mempunyai ciri khas memiliki sleep times yang lebih lama dan
karena itu maka ditambah dengan -5, karena penjadwal lebih menyukai interactive
task.
Hasil dari pendekatan ini akan membuat prioritas
untuk interactive task lebih tinggi. Sebaliknya, task dengan sleep
time yang lebih pendek biasanya lebih CPU-bound jadi
prioritasnya lebih rendah.
44. Proses penjadwalan pada Sistem Operasi MAC OS
MAC OS History
|
Preemptive
|
Algorithm
|
Mac OS
Pre-9
|
None
|
Cooperative
Scheduler
|
Mac
OS 9
|
Some
|
Preemptive
for MP tasks,Cooperative Scheduler for processes and threads
|
Mac OS X
|
Yes
|
Multilevel
feedback queue
|
Mac OS 9 cooperative scheduling untuk
beberapa threads dimana satu proses mengontrol multiple cooperative threads dan
juga menyediakan penjadwalan preemptive untuk tugas-tugas MP. Jadwal kernel MP
tugas menggunakan algoritma penjadwalan preemptive. Semua proses Proses Manager
yang menjalankan tugas MP disebut "blue task" . Proses-proses
tersebut dijadwalkan secara kooperatif, menggunakan algoritma round-robin
scheduling yaitu sebuah proses kontrol
menghasilkan prosesor untuk proses lain dengan secara eksplisit memanggil
fungsi pemblokiran seperti WaitNextEvent . Setiap proses memiliki salinan
sendiri dari Manajer Thread bahwa
jadwal tersebut dijalankan secara kooperative .suatu kontrol thread
prosesor untuk thread lain disebut YieldToAnyThread atau YieldToThread .
Mac OS X menggunakan multilevel feedback queue , dengan empat band
prioritas untuk threads - normal, sistem prioritas tinggi, hanya modus kernel,
dan real-time. Selain Thread dijadwalkan preemptively; Mac OS X juga
mendukung kooperative system thread dalam Manager Thread in Karbon (Karbon adalah salah satu dari antarmuka
pemrograman aplikasi (API) milik Apple
Inc 's untuk Macintosh sistem operasi .
karbon menyediakan bahasa pemrograman C untuk
akses ke layanan Macintosh sistem).
SUMBER :
Kesimpulan :
Dari
4 Sistem operasi yang dibahas adalah sistem operasi Windows XP dan MAC OS X yang terlihat
mekanisme penjadwalannya lebih baik karena menggunakan algoritma penjadwalan Multilevel
feedback queue. Dimana algoritma Multilevel feedback queue adalah salah satu algoritma yang
berdasar pada algoritma Multilevel queue.
Perbedaan mendasar yang membedakan Multilevel
feedback queue dengan Multilevel
queue biasa adalah terletak pada adanya kemungkinan suatu proses
berpindah dari satu antrian ke antrian lainnya, entah dengan prioritas yang
lebih rendah ataupun lebih tinggi.
Jika suatu proses menyita CPU terlalu lama, maka
proses itu akan dipindahkan ke antrian yang lebih rendah. Hal ini menguntungkan
proses interaksi karena proses ini hanya memakai waktu CPU yang sedikit.
Demikian pula dengan proses yang menunggu terlalu lama. Proses ini akan
dinaikkan tingkatannya. Biasanya prioritas tertinggi diberikan kepada proses
dengan CPU burst terkecil, dengan begitu CPU akan terutilisasi penuh
dan I/O dapat terus sibuk. Semakin rendah
tingkatannya, panjang CPU burst proses juga semakin besar.
Terima Kasih
0 Response to "ALGORITMA PENJADWALAN PADA SISTEM OPERASI WINDOWS XP , SOLARIS , LINUX dan MAC OS"
Post a Comment