MANAJEMEN PROSES
NAMA : DEWI MANUWATI
NIM : STE202202645
PROSES
- Proses adalah sebuah program yang sedang dieksekusi. Sedangkan program adalah kumpulan instruksi yang ditulis ke dalam bahasa yang dimengerti sistem operasi.
- Proses berisi instruksi dan data. program counter dan semua register pemroses, dan stack berisi data sementara seperti parameter rutin, alamat pengiriman dan variabel-variabel lokal.
- Sistem operasi mengelola semua proses di sistem dan mengalokasikan sumber daya ke proses-proses sesuai kebijaksanaan untuk memenuhi sasaran sistem.
- Manajemen banyak proses di komputer multiprocessor (multicore).
- Menggunakan komputer semaksimal mungkin dengan beberapa core CPU sehingga beberapa program bisa dijalankan secara bersama-sama , masing-masing dengan menggunakan core prosesor sendiri-sendiri.
Note: pengendalian proses oleh SO yang mengacu pada Proses:
- Saling melanjutkan (Interleave)
- Mengikuti kebijaksanaan tertentu.
- Mendukung komunikasi antar proses dan penciptaan proses.
Sebuah proses dapat memiliki tiga status utama yaitu:
- Running. Status yang dimiliki pada saat instruksi- instruksi dari sebuah proses dieksekusi
- Waiting. Status yang dimiliki pada saat proses menunggu suatu sebuah event.
- Ready. Status yang dimiliki pada saat proses siap untuk dieksekusi oleh prosesor.
DIAGRAM STATUS PROSES
- Penciptaan proses (create a process).
- Penghancuran/terminasi proses (destroy a process).
- Penundaan proses (suspend a process).
- Pelanjutan kembali proses (resume a process).
- Mem-block proses.
- Membangunkan proses.
- Menjadwalkan proses.
- Memungkinkan proses berkomunikasi dengan proses lain (Komunikasi Antar Proses).
Penciptaan proses melibatkan banyak aktivitas, yaitu:
• Menamai (memberi identitas) proses.
• Menyisipkan proses pada senarai proses atau tabel proses.
• Menentukan prioritas awal proses.
• Menciptakan PCB.
• Mengalokasikan sumber daya awal bagi proses.
2. PENGHANCURAN PROSES(A)
Penghancuran proses melibatkan pembebasan proses dari sistem, yaitu:
• Sumber daya-sumber daya yang dipakai dikembalikan / dilepas.
• Proses dihancurkan dari senarai atau tabel sistem pada RAM
• PCB dihapus (ruang memori PCB dikembalikan ke pool memori bebas)
PENGHANCURAN PROSES(B)
Penghancuran lebih rumit bila proses telah menciptakan proses-proses lain. Terdapat dua pendekatan, yaitu:
• Pada beberapa.sistem, proses-proses turunan dihancurkan saat proses induk dihancurkan secara otomatis.
• Beberapa sistem lain menganggap proses anak independen terhadap proses induk Proses anak tidak secara otomatis dihancurkan saat proses induk dihancurkan.
3. PENUNDAAN PROSES (SUSPEND A PROCESS)
• Penundaan (suspension) adalah operasi penting dan telah diterapkan dengan beragam cara.
• Penundaan dapat diinisialisasi oleh proses itu sendiri atau proses lain
• Penundaan biasanya berlangsung singkat dan sering dilakukan sistem untuk memindahkan proses-proses tertentu guna mereduksi beban sistem selama beban puncak.
• Proses yang ditunda (suspended process) tidak berlanjut sampai proses lain me-resume. Untuk jangka panjang, sumber daya-sumber daya proses dibebaskan.
Contoh :
Pada proses pencetakan, bila tiba-tiba kertas habis maka proses di-suspend. Setelah kertas dimasukkan kembali, proses pun dapat di-resume.
• Pada sistem monoprocessor, proses running dapat men-suspend dirinya sendiri karena lak ada proses lain yang juga running yang dapat memerintahkan suspend.
• Pada sistem multiprocessor, proses running dapat di-suspend proses running lain pada pemroses berbeda. Proses ready hanya dapat di-suspend oleh proses lain.
4. PROSES PELANJUTAN KEMBALI (RESUME A PROCESS )
• Jika sistem berfungsi secara buruk dan mungkin gagal maka proses-proses dapat di- suspend agar di-resume setelah masalah diselesaikan.
• Pemakai yang ragu/khawatir mengenai hasil proses dapat men-suspend proses [bukan membuang (abort) proses]. Saat pemakai yakin proses akan berfungsi secara benar maka dapat me-resume (melanjutkan kembali di instruksi saat di-suspend) proses yang di-suspend.
• Sebagai tanggapan terhadap fluktuasi jangka pendek beban sistem, beberapa proses dapal di-suspend dan di- resume saat beban kembali ke tingkat normal.
5. PROSES BLOCKED
• Blocked -> process tidak dapat dieksekusi sampai suatu event terjadi, misalnya operasi I/O, dan kontrol atas processor diberikan ke process yang lain.
• Blocked : proses menunggu kejadian (event) untuk melengkapi tugasnya
6. MENJADWALKAN PROSES
• Proses dapat berubah status dan berpindah dari satu antrian ke antrian yang lain
• Proses dengan status “ready” berada di Ready Queue
• Menunggu giliran/dipilih oleh scheduler => menggunakan CPU
• Selama eksekusi (status “run”) events yang dapat terjadi:
• I/O request => I/O wait berada pada Device Queue
• Create “child” proses => Jalankan proses “child”, tunggu sampai proses selesai (wait)
• Time slice expired => Waktu pemakaian CPU habis, interrupt oleh scheduler, proses akan berpindah ke ReadyQueue
7. KOMUNIKASI ANTAR PROSES—(1) (Inter Process Communinication / IPC) :
• Beberapa proses biasanya berkomunikasi dengan proses lainnya.
• Pengertian : output dari proses pertama harus diberikan kepada proses ke dua dan seterusnya..
KOMUNIKASI ANTAR PROSES—(2)
• Pada beberapa sistem operasi, proses-proses yang bekerja bersama sering disebut sharing (berbagi) media
• Penyimpanan(sementara), yaitu dimana suatu proses dapat membaca dan menulis pada shared storage (main memory atau files)
KOMUNIKASI ANTAR PROSES(3) Interprocess Communication (IPC)
• Mekanisme proses untuk komunikasi dan sinkronisasi aksi
• Sistem Pesan – komunikasi proses satu dengan yang lain dapat dilakukan tanpa perlu pembagian data.
IPC (Inter Process Communinication ) menyediakan dua operasi :
• send(message) – mengirim(pesan berukuran pasti atau variabel)
• receive(message) - menerima
Jika P dan Q melakukan komunikasi, maka keduanyamemerlukan :
• Membangun jalur komunikasi diantara keduanya
• Melakukan pertukaran pesan melaui send/receive
Implementasi jalur komunikasi
• physical (shared memory, hardware bus)
• logical (logical properties)
Komentar
Posting Komentar