PENJADWALAN PROSES SISTEM OPERASI Penjadwalan merupakan kumpulan kebijaksanaan dan mekanisme di sistem operasi yang berkaitan dengan urutan kerja yang dilakukan sistem komputer. Proses penjadwalan yang akan dibahas disini adalah proses penjadwalan sistem operasi SOLARIS, LINUX, dan WINDOWS XP.Sasaran atau tujuan utama penjadwalan proses optimasi kinerja menurut kriteria tertentu. dimana kriteria untuk mengukur dan optimasi kerja penjadwalan antara lain :
- Agar semua pekerjaan memperoleh pelayanan yang adil (firness).
- Agar pemakaian prosesor dapat dimaksimumkan.a
- Agar waktu tanggap dapat diminimumkan.
- Agar pemakaian sumber daya seimbang.
- Turn arround time, waktu sejak program masuk ke system sampai proses selesai.
- Efesien, proses tetap dalam keadaan sibuk tidak menganggur.
- Agar terobosan (thoughput) dapat dimaksimumkan.
Terdapat 3 tipe penjadwal berada secara bersama-sama pada sistem operasi yang kompleks, yaitu:
- Penjadwal jangka pendek (short term scheduller)
Bertugas menjadwalkan alokasi pemroses di antara proses-proses ready di memori utama Penjadwalan dijalankan setiap terjadi pengalihan proses untuk memilih proses berikutnya yang harus dijalankan.
- Penjadwal jangka menengah (medium term scheduller)
Setelah eksekusi selama suatu waktu, proses mungkin menunda sebuah eksekusi karena membuat permintaan layanan masukan/keluaran atau memanggil suatu system call. Proses-proses tertunda tidak dapat membuat suatu kemajuan menuju selesai sampai kondisi-kondisi yang menyebabkan tertunda dihilangkan. Agar ruang memori dapat bermanfaat, maka proses dipindah dari memori utama ke memori sekunder agar tersedia ruang untuk proses-proses lain. Kapasitas memori utama terbatas untuk sejumlah proses aktif. Aktivitas pemindahan proses yang tertunda dari memori utama ke memori sekunder disebut swapping. Proses-proses mempunyai kepentingan kecil saat itu sebagai proses yang tertunda. Tetapi, begitu kondisi yang membuatnya tertunda hilang dan dimasukkan kembali ke memori utama dan ready.
- Penjadwal jangka panjang (long term scheduller)
Penjadwal ini bekerja terhadap antrian batch dan memilih batch berikutnya yang harus dieksekusi. Batch biasanya adalah proses-proses dengan penggunaan sumber daya yang intensif (yaitu waktu pemroses, memori, masukan/keluaran), program-program ini berprioritas rendah, digunakan sebagai pengisi (agar pemroses sibuk) selama periode aktivitas job-job interaktif rendah.PENJADWALAN PROSES SISTEM OPERASI SOLARIS
Programmed in
| |
OS family
| |
Source model
|
Mixed open source / closed source
|
Initial release
|
1992
|
10 10/09 / October 8, 2009; 10 months ago
| |
Availablelanguage(s)
| |
Availableprogramming languages(s)
| |
Supported platforms
| |
Kernel type
| |
Default user interface
| |
Various
| |
Official website
|
- Real time (RT). Thread di kelas RT memiliki prioritas yang tetap dengan waktu kuantum yang tetap juga. Thread ini memiliki prioritas yang tinggi berkisar antara 100-159. Hal inilah yang membuat proses waktu nyata memiliki response time yang cepat. Proses waktu nyata akan dijalankan sebelum proses-proses dari kelas yang lain dijalankan sehingga dapat menghentikan proses di system class. Pada umumnya, hanya sedikit proses yang merupakan real time class.
- System (SYS). Solaris menggunakan system class untuk menjalankan kernel proses, seperti penjadwalan dan paging daemon. Threads di kelas ini adalah “bound” threads, berarti bahwa mereka akan dijalankan sampai mereka di blok atau prosesnya sudah selesai. Prioritas untuk SYS threads berkisar 60-99. Sekali dibangun, prioritas dari sistem proses tidak dapat dirubah. System classdialokasikan untuk kernel use( userproses berjalan di kernel mode bukan di system class).
- Time Sharing (TS). Time sharing class merupakan default class untuk proses dan kernel thread yang bersesuaian. Time slices masing-masing proses dibagi berdasarkan prioritasnya. Dalam hal ini, prioritas berbanding terbalik dengan time slices-nya. Untuk proses yang prioritasnya tinggi mempunyai time-slicesyang pendek, dan sebaliknya proses dengan prioritas yang rendah mempunyai time slices yang lebih panjang. Besar prioritasnya berada antara 0-59. Proses yang interaktif berada di prioritas yang tinggi sedangkan proses CPU-bound mempunyai prioritas yang rendah. Aturan penjadwalan seperti ini memberikan response time yang baik untuk proses yang interaktif, dan troughput yang baik untuk proses CPU-bound.
- Interactive (IA). Kelas Interaktif menggunakan aturan yang sama dengan aturan dengan kelas kelas time sharing, tetapi kelas ini memberikan prioritas yang tinggi untuk aplikasi jendela ( windowing application) sehingga menghasilkan performance yang lebih baik. Seperti TS, range IA berkisar 0-59.
Priority
|
Time quantum
|
Time quantum expired
|
return from sleep
|
0
|
200
|
0
|
50
|
5
|
200
|
0
|
50
|
10
|
160
|
0
|
51
|
15
|
160
|
5
|
51
|
20
|
120
|
10
|
52
|
25
|
120
|
15
|
52
|
30
|
80
|
20
|
53
|
35
|
80
|
25
|
54
|
40
|
40
|
30
|
55
|
45
|
40
|
35
|
56
|
50
|
40
|
40
|
58
|
55
|
40
|
45
|
58
|
59
|
20
|
49
|
59
|
- Priority: prioritas berdasarkan kelas untuk time sharing dan interactive class. Nomor yang lebih tinggi menunjukkan prioritas yang lebih tinggi.
- Time quantum: waktu kuantum untuk setiap prioritas. Dapat diketahui bahwa fungsi waktu kuantum berbanding terbalik dengan prioritasnya.
- Time quantum expired: Prioritas terbaru untuk thread yang telah habis time slices-nya tanpa diblok. Dapat dilihat dari tabel bahwa thread yang CPU-bound tetap mempunyai prioritas yang rendah.
- Return from sleep: Prioritas thread yang kembali dari sleeping(misalnya menunggu dari M/K). Seperti yang terlihat dari tabel ketika M/K berada di waiting thread, prioritasnya berada antara 50-59, hal ini menyebabkan response time yang baik untuk proses yang interaktif.
- Fixed Priority (FX). Thread di kelas fixed priority memiliki range prioritas (0-59) yang sama seperti di time-sharing class; tetapi, prioritas mereka tidak akan berubah.
- Fair Share Scheduler (FSS). Thread yang diatur oleh FSS dijadwalkan berdasar pembagian sumber daya dari CPU yang tersedia dan dialokasikan untuk himpunan proses-proses (yang dikenal sebagai project). FS juga berkisar 0-59. FSS and FX baru mulai diimplementasikan di Solaris 9.
Linus Torvalds and many others
| |
Programmed in
| |
OS family
| |
Working state
|
Current
|
Source model
| |
2.6.36-rc2 (August 23, 2010; 0 days ago)[2][+/−]
| |
Marketing target
|
Desktops, servers, embedded devices
|
Availablelanguage(s)
|
Multi-lingual
|
Availableprogramming languages(s)
| |
Supported platforms
| |
Kernel type
| |
GNU and others
| |
Default user interface
| |
Various including GNU General Public License, BSD License, Apache License, MIT License, and others[3]
| |
Officialwebsite
|
Developer
|
Microsoft Corporation
|
Release date
| |
Current version
|
5.1.2600.5512 Service Pack 3 (x86 SP3) (21 April 2008; 2 years ago) (info)
|
Source model
| |
Kernel type
| |
Update method
| |
Platform support
| |
Website
|
- thread menjadi prioritas lebih tinggi-siap
- thread berakhir
- kuantum habis waktu
- thread melakukan panggilan sistem pemblokiran, seperti untuk I / O, dalam hal ini meninggalkan keadaan ready menjadi keadaan menunggu.
- memori manajemen thread: prioritas 0
- variabel kelas prioritas (1-15)
- real-time kelas prioritas (16-31)
- Threads di kelas real-time telah tetap prioritasnya.
- Threads yang berjalan selalu dengan tingkat prioritas tertinggi.
- Jika tidak ada thread yang ready, Threads idle dijalankan.
- Ketika waktu quantum thread habis, prioritasnya diturunkan, tetapi prioritasnya tidak pernah diturunkan terlalu jauha