1) Submitt:
Proses baru saja dikirimkan oleh user dan masih menunggu untuk
dilayani.
2) Running:
Proses benar-benar menggunakan CPU pada saat itu.
3) Ready:
Proses berhenti sementara untuk memberikan kesempatan pada
proses lain untuk menggunakan CPU.
4) Blocked:
Proses tidak dapat di-Run sampai terjadi kejadian eksternal yang
sesuai (misalkan selesainya operasi input/output atau telah
tersedianya data input).
5) Finished:
Proses telah dilaksanakan secara sempurna.
2) Throughput.
Untuk mengukur beban pekerjaan CPU, salah satu cara adalah
dengan menghitung jumlah job yang diselesaikan setiap satuan
waktu tertentu, yang disebut Throughput. Untuk job yang lama,
kecepatannya mungkin satu job per jam, sedangkan untuk transaksi
pendek dapat mencapai 10 job per detik.
3) Turnaround Time.
Dari sudut pandang suatu job, mungkin yang paling penting adalah
lamanya waktu penyelesaian job itu. Selang waktu dari saat
penyerahan job sampai waktu penyelesaian disebut Turnaround
Time, yang meliputi juga waktu tunggu untuk memasuki memori,
waktu tunggu di antrian, pengerjaan di CPU, dan pelaksanaan proses
I/O.
4) Round Robin.
Algoritma Penjadwalan Round Robin sebetulnya dirancang untuk
sistem Time-sharing, dimana job-job diberikan satuan waktu yang
sama, disebut Time Quantum ini berkisar antara 10 sampai 100
milidetik. Queue (Antrian) dibuat secara sirkular kemudian skeduler
akan mengelilingi antrian ini sambil mengalokasikan CPU kepada
setiap proses/job selama waktu quantum tadi.
Implementasi penjadwalan Round Robin dilakukan dengan antrian
FIFO. Job baru ditambahkan ke ekor antrian. Job di kepala antrian
dikirim ke CPU, setelah itu ada dua kemungikinan, waktu proses job
kurang dari waktu quantum, ataupun lebih dari waktu quantum.
Dalam kemungkinan pertama, job sendiri yang meninggalkan CPU
sebelum waktunya habis. Sedangkan kemungkinan kedua, job akan
dikeluarkan oleh sistem operasi dari CPU dan diletakkan di akhir
(ekor) antrian.
5) Preemptive Priority.
Harus diperhatikan bahwa penjadwalan selalu dikelola dengan
prioritas, baik rendah ataupun tinggi. Job dengan prioritas yang sama
ada dalam penjadwalan FCFS. Algoritma penjadwalan Shortest Job
First adalah bentuk khusus dari penjadwalan Prioritas yang umum
karena SJF dapat dijalankan dengan prioritas menurut nilai yang
dihitung dari kebalikan (perkirakan) waktu penyelesaian job.
Prioritas-prioritas biasanya dalam bentuk bilangan yang telah
ditetapkan sebelumnya. Walaupun demikian masih belum ada
kesepakatan apakah suatu angka kecil memang menunjukkan
prioritas yang rendah. Prioritas dapat dihitung baik secara ienternal
maupun eksternal. Prioritas yang terdefinisi secara internal
menggunakan ukuran kuantitas, seperti batas waktu, kebutuhan
memori, jumlah file yang dibukanya, ataupun perbandingan antara
waktu I/O dengan waktu CPU, dan lain-lain. Prioritas eksternal
ditentukan oleh kriteria di luar sistem operasi, misalnya jumlah iuran
yang dibayar untuk pemakaian komputer, bagian yang mensponsori
kerja, bahkan mungkin saja faktor-faktor politis juga.
Masalah utama dengan algoritma penjadwalan Prioritas adalah
penahanan (blocking) takterbatas atau lebih dikenal starvation.
Starvation muncul jika suatu job telah siap untuk dijalankan (sedang
menunggu CPU) tetapi tidak pernah diberi kesempatan untuk
menyelesaikan jobnya karena prioritasnya rendah. Pemecahan
masalah ini adalah Aging (untuk selanjutnya disebut pemetaan).
Pemetaan adalah teknik yang menaikkan secara berkala prioritas job
yang sudah lama menunggu di dalam sistem. Misalnya untuk kisaran
prioritas antara 0 (rendah) sampai 127 (tinggi), prioritas job yang
menuggu dapat dinaikkan 1 setiap 15 menit . Sehingga walaupun
prioritas job semula adalah 0, namun suatu saat mampu pula
mencapai prioritas tertinggi dan akhirnya dijalankan oleh CPU.
Walaupun sesungguhnya suatu sistem dapat memiliki beberapa buah
CPU, dalam pembahasan selanjutnya untuk penyederhanaan hanya
akan disediakan satu CPU untuk pengerjaan beberapa job.
Multiprocessor/Paralel System