Minggu, 17 Mei 2015

Penjadwalan Proses

´  Konsep Proses Pada Sistem Operasi
Sistem operasi mengeksekusi berbagai jenis program. Pada sistem batch program tersebut biasanya disebut dengan job, sedangkan pada sistem time sharing, program disebut dengan program user atau task. Proses adalah program yang sedang dieksekusi. Eksekusi proses dilakukan secara berurutan. Penjadwalan merupakan kumpulan kebijaksanaan dan mekanisme di sistem operasi yang berkaitan dengan urutan kerja yang dilakukan sistem komputer. Tujuan utama penjadwalan proses optimasi kinerja menurut kriteria tertentu, dimana kriteria untuk mengukur dan optimasi kerja penjadwalan. Penjadwalan CPU adalah basis dari multi programming sistem operasi.
´  Pada sistem Operasi, terdapat 3 tipe penjadwal berada secara bersama-sama pada sistem operasi yang kompleks, yaitu:
1. Penjadwal jangka pendek (short term scheduller)
Bertugas menjadwalkan alokasi pemroses diantara proses-proses ready di memori utama. Penjadwalan ini dijalankan setiap terjadi pengalihan proses untuk memilih proses berikutnya yang harus dijalankan.
2. 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.
3. Penjadwal jangka panjang (long term scheduller)
Penjadwalan ini bekerja terhadap antrian batch dan memilih batch berikutnya yang harus dieksekusi. Batch biasanya berupa 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.
´  Status proses didefiniskan sebagai bagian dari aktivitas proses yang sedang berlangsung saat itu. Status proses terdiri dari :
a. New,  proses sedang dibuat.
b. Running, proses sedang dieksekusi.
c. Waiting,  proses sedang menunggu beberapa event yang akan terjadi               (seperti menunggu untuk menyelesaikan I/O atau menerima sinyal).
d. Ready,  proses menunggu jatah waktu dari CPU untuk diproses.
e. Terminated,  proses telah selesai dieksekusi.
Secara blog diagram, maka dapat digambarkan sebagai berikut :



´  Kriteria Penjadwalan
Algoritma penjadwalan CPU yang berbeda akan memiliki perbedaan properti.  Ada beberapa kriteria yang digunakan untuk melakukan pembandingan algoritma penjadwalan CPU, antara lain :
1. CPU utilization, diharapkan agar CPU selalu dalam keadaan sibuk. Utilitas CPU dinyatakan dalam bentuk prosen yaitu 0-100%. Namun dalam kenyataannya hanya berkisar antara 40-90%.
2. Throughput, adalah banyaknya proses yang selesai dikerjakan dalam satu satuan waktu.
3. Turnaround time, banyaknya waktu yang diperlukan untuk mengeksekusi proses, dari mulai menunggu untuk meminta tempat di memori utama, menunggu di ready queue, eksekusi oleh CPU, dan mengerjakan I/O.
4. Waiting time, waktu yang diperlukan oleh suatu proses untuk menunggu di ready queue. Waiting time ini tidak mempengaruhi eksekusi proses dan penggunaan I/O.
5. Response time, waktu yang dibutuhkan oleh suatu proses dari minta dilayani hingga ada respon pertama yang menanggapi permintaan tersebut.
6. Fairness, meyakinkan bahwa tiap-tiap proses akan mendapatkan pembagian waktupenggunaan CPU secara terbuka (fair).
´  Dispatcher adalah suatu modul yang akan memberikan kontrol pada CPU terhadap penyeleksian proses yang dilakukan selama short-term scheduling. Fungsi-fungsi yang terkandung di dalamnya meliputi:
a. Switching context;
b. Switching ke user-mode;
c. Melompat ke lokasi tertentu pada user program untuk memulai program. Waktu yang diperlukan oleh dispatcher untuk menghentikan suatu proses dan memulai untuk menjalankan proses yang lainnya disebut dispatch latency.
´  Algoritma penjadwalan, proses memerlukan prosesor dan penjadwalan pemakaian prosesor. Penjadwalan proses didasarkan pada sistem operasi yang menggunakan prinsip    multiprogramming. Dengan cara mengalihkan kerja CPU untuk beberapa proses, maka CPU akan semakin produktif.
´  Implementasi pada sistem operasi Linux, yaitu proses yang sedang terjadi, maka akan digunakan perintah ps. Apabila belum tahu perintah ps itu digunakan untuk apa, maka kita bisa tanya ke library 

Tidak ada komentar:

Posting Komentar