Tugas utama manajemen proses
1. Mengelola siklus hidup proses-proses
2. Melakukan penjadwalan proses
3. Menangani komunikasi antar proses
4. Mengelola alokasi antar sumber daya komputer ke proses
1. Pengelolaan siklus hidup proses meliputi:
a. Penciptaan proses
b. Penghentian proses
c. Pengalihan eksekusi
Penciptaan proses
Dapat dipicu oleh permintaan pengguan untuk menjalankan suatu aplikasi melalui aplikasi shell. Proses dapat juga diciptakan oleh suatu proses lain yang sedang berjalan, seperti aplikasi shell yang menciptakan proses aplikasi lain yang diminta pengguna.Selain itu proses dapat pula diciptakan dalam suatu eksekusi batch seperti eksekusi shell script, misalnya eksekusi berkas autoexec.bat di sistem operasi windows ataupun eksekusi berkas script berekstensi*.bash di sistem operasi linux.
Berikut tahap-tahap yang dilalui selama penciptaan :
1. Sistem operasi akan membangkitkan suatu nomor identitas atau ID unik untuk proses yang diciptakan
2. Setelah itu sistem operasi akan membuat suatu rekaman data dengan nomor ID tersebut dan menyisipkan
rekaman tersebut pada suatu struktur data di memori utama yang disebut dengan tabel proses (process
table)
3. Setelah itu, sistem operasi mengalokasikan ruang memori utama untuk menyimpan image proses yang
terdiri atas bagian kode program, stack dan PCB (process Control Block)
4. Pada tahap berikutnya sistem operasi akan melakukan inisialisasi PCB proses yang diikuti dengan proses
no 5 berikut
5. Penyisipan PCB proses ke antrian ready dan mengubah status proses menjadi ready
Penghentian Proses
Penghentian proses yang normal terjadi karena aplikasi telah selesai
Langak-langkah yang dilakukan oleh sistem operasi dalam penghentian proses secara normal :
1. Mengembalikan hasil keluaran ke proses induk (parent process), yaitu proses yang menciptakan proses
bersangkutan
2. Menghapus rekaman proses di sema antrian dan di tabel proses
3. Setelah itu, sistem operasi akan menghapus PCB serta image proses tersebut. Dalam menghentikan
proses, semua sumber daya yang digunakan, seperti berkas maupun peranti I/O dibebaskan ataupun
dikembalikan ke sistem operasi
Setelah penghentian proses selesai, sistem operasi akan melakukan operasi penjadwalan (scheduling) untuk memilih proses lain untuk dieksekusi.
Pengalihan Eksekusi Proses (Proses Switching)
Pengalihan eksekusi suatu proses ke proses lainnya dapat disebabkan karena suatu proses meminta
operasi I/O (misalnya membaca berkas), menunggu suatu event (misalnya menggunakan inputan keyboard
ataupun pergerakan mouse dari pengguna komputer), terjadi kesalahan eksekusi proses ataupun jatah waktu
eksekusinya sudah habis.
Berbagai penyebab pengalihan eksekusi proses
1. Interupsi, interupsi disebabkan oleh aksi eksternal, misalnya oleh peranti I/O, pewaktu (timer), ataupun
kesalahan akses memori utama.
2. Trap, trap adalah interupsi yang dipicu oleh terjadinya kesalahan eksekusi ataupun kondisi-kondisi khusus
(exception
condition) dari proses yang sedang running. Jika kesalahannya fatal maka dilakukan pengalihan
eksekusi ke proses lain atau yang disebut dengan process switching.
3. Supervisor Call atau System Call, System
Call merupakan pemanggilan layanan sistem operasi oleh proses
yang sedang running. Penggunaan system call menyebabkan aliran eksekusi berpindah ke kode instruksi
kernel sistem operasi.
Tahapan pengalihan eksekusi proses (proses
switching)
Meliputi langkah-langkah berikut :
1. Sistem operasi menyimpan (backup) konteks processor, yaitu isi seluruh register
processor, proses yang sedang running (Po) ke PCB proses tersebut (PCBo).
2. Sistem operasi kemudian memperbarui isi PCB proses tersebut (PCBo), termasuk
mengubah status eksekusinya ke status blocked ataupun ready.
3. Selanjutnya, PCB (PCBo) dipindahkan ke antrian yang sesuai, yaitu antrian ready jika status
proses beralih ke status ready ataupun ke salah satu antrian I/O jika proses beralih ke status
blocked.
4. Setelah itu,sistem operasi melakukan dispatch ke proses lainnya P1, dengan memperbarui
PCB
proses baru (P1), termasuk mengubah status eksekusinya menjadi running.
5. Kemudian sistem operasi memperbarui isi struktur data manajemen memori yang berkaitan
dengan proses baru (P1).
6. Terakhir, sistem operasi akan meyalin (restore) konteks processor yang tersimpan di PCB
6. Terakhir, sistem operasi akan meyalin (restore) konteks processor yang tersimpan di PCB
proses baru (PCB1) ke processor dan mulai mengeksekusi kode instruksi proses P1.
Pengalihan konteks eksekusi
(context switching)
Terjadinya interupsi tidak selalu memicu terjadinya pengalihan eksekusi proses (proses switching). Sebagai
contoh adalah ketika suatu proses sedang berjalan dan menunggu inputan dari keyboard. Ketika pengguna
memasukkan data lewat keyboard maka akan terjadi interupsi yang mengakibatkan pengalihan konteks
eksekusi, yaitu dari proses ke rutin penanganan interupsi (interupsi handler) keyboard. Setelah rutin interupsi
selesai dijalankan maka eksekusi dialihkan kembali ke proses bersangkutan. Selama terjadinya pengalihan
konteks eksekusi ini, status eksekusi proses tidak berubah.
Pengalihan konteks eksekusi (bukan pengalihan eksekusi proses) melakukan penyimpanan konteks Processor
proses ke stack, Bukan ke PCB. Setelah itu eksekusi berpindah ke rutin interupsi dan setelah selesai, register
processor diperbaharui kembali dengan konteks processor yang dibaca dari stack, dan eksekusi proses yang
terhenti dilanjutkan kembali.
Pengalihan konteks eksekusi (context switching) melibatkan tahapan yang lebih pendek dibandingkan
pengalihan eksekusi proses (process switching).
Itu sebabnya pengalihan eksekusi antar rutin sistem operasi
umumnya memakai mekanisme context switching, bukan process switching.
Penjadwalan Proses
Penjadwalan proses dapat didefinisikan sebagai kumpulan kebijaksanaan dan mekanisme sistem
operasi yang mengatur urutan dan jangka waktu eksekusi proses-proses yang aktif.
1. Antrian penjadwalan (Scheduling Queue)
2. Penjadwal (Scheduler)
3. Dispatcher
Kriteria penjadwalan proses
Antara lain:
1. Keadilan (fairnes)
2. Efisien(Processor
utilization)
3. Waktu tanggapan (Respon time)
4. Waiting time
5. Turn around time
6. Throughput
Strategi dasar penjadwalan
Yaitu :
1. Non-preemptive
2. Preemptive
Pemicu terjadinya proses penjadwalan
Antara lain:
1. Proses berubah dari status running ke blocked.
2. Proses berubah dari status running ke ready.
3. Proses berubah dari status blocked ke ready.
4. Proses berhenti (Terminated)
Algoritma Penjadwalan
Yaitu :
1. FIFO
2. SJF
3. HRRN
1 komentar:
Casino Games, Roulette, Blackjack, Roulette | DrmCD
In 동해 출장마사지 your heart and your 계룡 출장샵 heart, the 충청북도 출장안마 casino games you love from your phone go. You can count down 밀양 출장마사지 on a few hundred casino games – roulette, 보령 출장샵 blackjack,
Posting Komentar