PENJADWALAN PROSES DAN IMPLEMANTASI Sistem operasi komputer KELOMPOK III : ARTHUR SUMANDAG JHON SINAMBELA LERBY MONTUNG
KONSEP PROSES STATUS PROSES New : Proses sedang dibuat Running Proses sedang dieksekusi Waiting Proses sedang menunggu beberapa event yang akan terjadi (seperti menunggu untuk menyelesaikan I/O atau menerima sinyal) Ready Proses menunggu jatah waktu dari CPU untuk diproses Terminated proses telah selesai di eksekusi
KONSEP PROSES PROSES KONTROL BLOCK Informasi yang terdapat pada setiap proses meliputi : 1. Status Proses. New, ready, running, waiting dan terminated 2. Program counter. Menunjukan alamat berikutnya dengan yang akan dieksekusi oleh proses tersebut. 3. CPU Registers, register bervariasi tipe dan jumlahnya bergantung pada arsiterktur computer yang bersangkutan. Register register tersebut terdiri atas accumulator, index register, stack pointer, dan register serba guna dan beberapa informasi tentang kode kondisi. Selama program counter berjalan, status informasi harus disimpan pada saat terjadi interrupt. Process state Process number Program counter Register Memory limits List of open files . . .
PENJADWALAN PROSES ANTRIAN PENJADWALAN Ketika proses memasuki sistem, mereka diletakkan dalam antrian job. Antrian ini terdiri atas seluruh proses dalam sistem . proses yang hidup pada memori utama dan siap dan menunggu/ wait mengeksekusi disimpan pada sebuah daftar bernama ready queue. Jenis-jenis antrian penjadwalan adalah sebagai berikut : Job Queue. Semua proses yang masuk pada suatu sistem akan diletakan ke dalam job queue. Ready Queue. Proses-proses yang ada di memori utama dan menunggu untuk dieksekusi diletakkan pada suatu list yang disebut dengan ready queue. Device Queue. Deretan proses yang sedang menunggu peralatan I/O tertentu disebut dengan device queue.
PENJADWALAN PROSES PENJADWALAN Sebuah proses berpindah antara berbagai penjadwalan antrian selama umur hidupnya. Sistem operasi harus memilih, untuk keperluan penjadwalan, memproses antrian-antrian ini dalam cara tertentu. Pemilihan proses dilaksanakan oleh penjadwalan yang tepat/cocok. Terdapat dua bentuk penjadwalan, yaitu : Longterm-scheduler (job scheduler), menyeleksi proses-proses mana yang harus dibawa ke ready queue Short-tern Scheduler (CPU Scheduler), memilih proses-proses yang siap untuk dieksekusi, dan mengalokasikan CPU ke salah satu dari proses-proses tersebut. Sebuah proses dapat mengeksekusi untuk hanya beberapa milidetik sebelum menunggu permintaan I/O. seringkali, penjadwalan shortterm mengeksekusi paling sedikit sekali dalam 100 milidetik. Karena durasi waktu yang pendek antara eksekusi, penjadwalan shortterm haruslah cepat
PENJADWALAN PROSES CONTEXT SWITCH Ketika CPU memindahkan proses ke proses lain, diperlukan penyimpanan suatu keadaan proses lama (state of old process) dan kemudian beralih ke proses yang baru. Tugas tersebut diketahui sebagai alih konteks (context swich). Pergantian waktu konteks adalah murni overhead, karena sistem melakukan pekerjaan yang tidak perlu. Kecepatannya bervariasi dari mesin ke mesin, bergantung pada kecepatan memori, jumlah register yang harus dicopy, dan keberadaan instruksi khusus ( seperti instruksi tunggal untuk mengisi atau menyimpan seluruh register). Tingkat kecepatan umumnya berkisar antara 1 sampai1000 mikrodetik. Semakin kompleks sistem operasi, makin banyak pekerjaan yang harus dilakukan selama alih konteks. Teknik manajemen memori tingkat lanjut dapat mensyaratkan data tambahan untuk diganti dengan tiap konteks.
OPERASI PADA PROSES PENGHENTIAN PROSES Suatu proses berhenti jika telah menyelesaikan pernyataan terakhir, dan meminta pada sistem operasi untuk menghapusnya dengan menggunakan system call exit. Proses mengembalikan semua data (output) ke parent proses melalui system call wait. Kemudia proses dihapus dari list atau table sistem, dilanjutkan dengan menghapus PCB. Parent dapat menghentikan eksekusi proses child dengan menggunakan system call abort. Proses anak dihentikan parent karena beberapa alasan, antara lain : 1 Child mengalokasikan sumber daya melampaui batas 2 Tugas child tidak dibutuhkan lebih lanjut 3 Parent berhenti, karena system operasi tidak mengizinkan child untuk melanjutkan jika parent berhenti dan terminasi dilanjutkan.
KERJASAMA ANTAR PROSES Proses-proses yang dieksekusi oleh sistem operasi mungkin berupa proses-proses yang terpisah (independene) atau proses-proses yang saling bekerja sama (cooperate). Proses yang terpisah adalah proses yang tidak berakibat atau diakibatkan oleh eksekusi dari proses lain. Sedangkan proses yang saling bekerja sama adalah proses yang dapat berakibat atau diakibatkan oleh eksekusi dari proses lain. Contoh : P0 menunggu printer P1 menunggu drive Apabila proses terpisah, meskipun P1 ada dibelakang P0, namun jika disk drive menganggur, P1 bisa dieksekusi terlebih dahulu. Sebaliknya jika proses tersebut saling bekerjasama maka eksekusi pada suatu proses akan sangat berpengaruh pada proses lain, karena mereka saling berbagi data
KOMUNIKASI ANTAR PROSES Komunikasi Antarproses adalah mekanisme proses-proses untuk berkomunikasi dan melakukan sinkronisasi aksinya. Komunikasi dilakukan dengan sistem pesan, dimana proses berkomunikasi dengan proses lain tanpa menggunakan variabel yang di- share. Fasilitas interprocess communication (IPC) terdiri atas dua operasi: Send (pesan) dimana ukuran pesan bisa tetap atau berbeda-beda Receive (pesan) Apabila proses P dan Q akan melakukan komunikasi, maka kedua proses ini memerlukan : Tersedia saluran kumunikasi antar kedua proses tersebut. Menukar pesan menggunakan send atau receive.
TERIMA KASIH KESIMPULAN Penjadwalan proses yaitu kumpulan kebijaksanaan dari mekanisme sistem operasi yang berkaitan dengan urutan kerja yang di lakukan oleh sistem komputer. Penjadwalan CPU menyangkut penentuan proses-proses yang ada dalam ready queue yang di alokasikan pada CPU. TERIMA KASIH