Deskripsi dan Kontrol Proses Pertemuan ke3 Agustus 2010







































![Referensi: [STA 09] Stallings, William. 2009. Operating System: Internal and Design Principles. 6 th Referensi: [STA 09] Stallings, William. 2009. Operating System: Internal and Design Principles. 6 th](https://slidetodoc.com/presentation_image/9bd4adb6ca19ef198262c3ff3ba41cc0/image-40.jpg)
- Slides: 40
Deskripsi dan Kontrol Proses (Pertemuan ke-3) Agustus 2010
Pokok Bahasan Ø Pokok Bahasan: v Deskripsi dan Kontrol Proses Ø Sub Pokok Bahasan: v Konsep proses v Elemen-elemen proses v Model proses 2 status, 5 status, dan 6 status Ø TIU: v Mahasiswa dapat memahami konsep dasar deskripsi dan kontrol pada proses Ø TIK: v Mahasiswa dapat menjelaskan konsep proses v Mahasiswa dapat menjelaskan elemen-elemen proses v Mahasiswa dapat menjelaskan setiap status pada model proses 2 status, 5 status, dan 6 status Sistem Operasi/201108912 #1
Sub Pokok Bahasan: ØKonsep proses: v Definisi proses v Status proses Sistem Operasi/201108912 #2
Tugas OS Terhadap Proses Ø Mengeksekusi banyak proses secara interleave (selang-seling) agar utilisasi prosesor maksimal dan response time setiap proses masih bisa diterima Ø Menyediakan resource bagi setiap proses Ø Mendukung komunikasi antar proses dan penciptaan proses baru oleh user Sistem Operasi/201108912 #3
Konsep-Konsep Sebelumnya Ø Platform komputer terdiri dari sekumpulan resource hardware Ø Program aplikasi komputer dibuat untuk melakukan beberapa task (pekerjaan) Ø Sangatlah tidak efisien jika program aplikasi dibuat hanya khusus bagi platform hardware tertentu Ø Sistem operasi harus nyaman dan aman digunakan serta mempunyai banyak fitur dan interface yang konsisten Ø Sistem operasi dapat memberikan gambaran resource secara uniform (seragam) sehingga dapat diminta dan diakses oleh program aplikasi Sistem Operasi/201108912 #4
Mengapa Eksekusi Proses Harus Diatur ? Ø Agar resource selalu tersedia bagi banyak aplikasi Ø Agar prosesor dapat digunakan oleh banyak aplikasi secara bergantian Ø Agar prosesor dan I/O device dapat digunakan secara efisien Sistem Operasi/201108912 #5
Apakah Proses itu ? Ø Program yang dieksekusi Ø Program yang sedang berjalan di komputer Ø Entitas yang dapat diberikan kepada prosesor untuk dieksekusi Ø Sebuah aktifitas yang sangat dipengaruhi oleh hasil eksekusi sebelumnya, status saat ini, dan sejumlah resource sistem yang tersedia Sistem Operasi/201108912 #6
Apa Saja Elemen Proses yang Sedang Running ? (1) Ø Identifier v Identitas unik untuk membedakan suatu proses dengan proses lainnya Ø State v Status (kondisi) suatu proses (sedang dieksekusi, sedang diblok, dll) Ø Priority v Prioritas suatu proses terhadap proses yang lain Ø Program counter v Alamat instruksi berikutnya yang akan dieksekusi Ø Memory pointers v Pointer yang menunjuk pada alamat memori kode program dan data yang berhubungan dengan proses dan blok memori yang di- shared dengan proses lain (jika ada) Sistem Operasi/201108912 #7
Apa Saja Elemen Proses yang Sedang Running ? (2) Ø Context data v Data yang terdapat pada register prosesor ketika suatu proses sedang dieksekusi Ø I/O status information v Informasi tentang permintaan terhadap I/O device yang belum terpenuhi (misal akses ke harddisk), daftar file yang sedang digunakan oleh proses, dll Ø Accounting information v Informasi tentang jumlah waktu prosesor yang telah digunakan, jumlah waktu proses, batas waktu proses, nomor account, dsb. Sistem Operasi/201108912 #8
Process Control Block (PCB) (1) Ø Struktur data yang menyimpan elemen proses Ø Dibuat dan diatur oleh sistem operasi Ø Mendukung adanya multi proses Ø Bersama-sama dengan kode program dan data yang diperlukan membentuk sebuah proses v Proses = PCB + kode program + data yang diperlukan Sistem Operasi/201108912 #9
Process Control Block (PCB) (2) Ø Sebagian isi PCB: Sistem Operasi/201108912 #10
Agenda: ØKonsep proses: v Definisi proses v Status proses Sistem Operasi/201108912 #11
Status Proses Ø Status proses merupakan kondisi suatu proses (setiap saat setiap proses mempunyai sebuah kondisi) Ø Sebuah kondisi bisa dimiliki oleh banyak proses Ø Trace proses: v Adalah daftar urut-urutan alamat memori suatu proses yang telah dieksekusi Ø Program dispatcher: v Bagian dari sistem operasi yang mengatur giliran pemanfaatan prosesor kepada suatu proses ke proses yang lain Sistem Operasi/201108912 #12
Contoh Trace Proses Sedang mengakses I/O wait Sistem Operasi/201108912 #13
Contoh Eksekusi Proses (1) Ø Asumsi: tidak ada memori virtual semua proses ditaruh di memori Sistem Operasi/201108912 #14
Contoh Eksekusi Proses (2) Ø Gabungan trace 3 buah proses: Ø Dilihat dari sisi prosesor Proses A Dispatcher Proses A Proses B Dispatcher Proses C Sistem Operasi/201108912 #15
Contoh Eksekusi 3 buah Proses Sistem Operasi/201108912 #16
Pembentukan Proses Ø Siapa yang membentuk proses ? v Sistem operasi Ø Setiap proses dilengkapi dengan PCB Ø Apa yang dapat menyebabkan terbentuknya proses baru ? v Masuknya job baru (program aplikasi) § Pada model batch system: proses terbentuk akibat job baru (berupa baris-baris program) yang ditulis pada tape magnetic atau harddisk yang sedang dieksekusi v Log on dari user § Pada sistem interaktif: proses terbentuk ketika user melakukan log on pada sistem v Sebagai bentuk layanan OS kepada program aplikasi § Misal: Ada program aplikasi yang perlu mencetak ke printer OS membentuk proses yang mengatur printer v Dibentuk oleh proses lain (process spawning) § Parent process = proses induk = proses yang membentuk proses lain § Child process = proses anak = proses yang dibentuk oleh proses induk § Misal: Print server atau file server akan selalu membentuk proses baru setiap ada permintaan dari client Sistem Operasi/201108912 #17
Apa Penyebab Terminasi Proses ? (1) Ø Proses telah selesai secara normal: v Model batch job: terdapat instruksi halt yang menandakan proses telah selesai v Sistem interaktif: proses di-close oleh user (close, log off, turn off, dsb) Ø Jatah waktu telah habis: v v Total waktu sejak proses dibentuk Total waktu proses aktif Total waktu sejak user memberikan input Dsb Ø Memori tidak tersedia: v Proses membutuhkan memori lebih besar tetapi tidak terpenuhi Ø Bounds violation: v Proses mencoba mengakses lokasi memori proses lain Sistem Operasi/201108912 #18
Apa Penyebab Terminasi Proses ? (2) Ø Protection error: v Proses mencoba menggunakan resource (file) yang tidak boleh diakses v Misal: mencoba menulis pada file dengan atribut read only Ø Arithmatic error: v Kesalahan komputasi, misal division by zero Ø Time overrun: v Proses telah menunggu melebihi batas waktu yang telah ditentukan Ø I/O failure: v Terjadi kesalahan pada saat mengakses I/O v Misal: § Tidak dapat menemukan file yang dicari § Gagal membaca/menulis file sesudah mencoba beberapa kali (akibat adanya bad sector atau membaca data dari printer) Sistem Operasi/201108912 #19
Apa Penyebab Terminasi Proses ? (3) Ø Instruksi invalid: v Proses mencoba mengeksekusi instruksi yang tidak ada (akibat pencabangan mengarah pada area data) Ø Privileged instruction: v Proses mencoba menggunakan instruksi yang disediakan khusus bagi sistem operasi (misal perintah ke I/O) Ø Kesalahan data v Tipe data salah atau data tidak diinisialisasi Ø Ada intervensi dari operator atau OS v Dilakukan pada saat terjadi deadlock (hang) Ø Proses induk (parent) diterminasi v Jika proses induk diterminasi proses semua proses anaknya ikut terterminasi Ø Diterminasi proses induk v Proses induk berhak untuk melakukan terminasi terhadap proses anaknya Sistem Operasi/201108912 #20
Model Proses Ø Proses dengan 2 status: v Running v Not running Ø Proses dengan 5 status: v v v New Ready Running Exit Blocked Ø Proses dengan 6 status: v Proses dengan 5 status + Suspend Ø Proses dengan 7 status: v Proses dengan 5 status + Ready/Suspend + Blocked/Suspend Sistem Operasi/201108912 #21
Model Proses Dengan 2 -Status (1) Ø Merupakan model proses paling sederhana Ø Setiap proses akan selalu berada pada salah satu dari 2 status berikut: v Running v Not-running Sistem Operasi/201108912 #22
Model Proses Dengan 2 -Status (2) Ø Apa yang dilakukan OS ? v OS membentuk proses baru dilengkapi dengan PCB untuk proses tersebut v Masukkan proses baru ke sistem: § Jika tidak ada proses yang sedang Running Proses langsung § diberi status Running langsung dieksekusi Jika ada proses yang sedang Running masukkan proses dengan status Not-running v Jika proses yang running ter-interrupt, maka: § OS menjalankan program dispatcher untuk memilih proses § berikutnya yang akan dieksekusi Masukkan proses tersebut ke status Not-running Sistem Operasi/201108912 #23
Model Antrian Pada Proses Dengan 2 -Status Ø Diagram antrian proses dengan 2 -status: v Hanya digunakan sebuah antrian di dalam antrian terdapat berbagai macam status proses (siap running, ter-blok, menunggu I/O, dll) v Kelemahan: § Pemilihan proses selanjutnya yang akan dieksekusi tidak cukup hanya dengan algoritma FIFO § Dispatcher harus mencari proses yang siap running diantara proses§ proses yang lain yang terblok karena sedang menunggu hasil I/O Butuh algoritma yang lebih rumit Sistem Operasi/201108912 #24
Model Proses Dengan 5 -Status Ø Proses dengan 5 -status: Terminate te ina rm e T Ø Proses yang sedang antri dikelompokkan menjadi 2: v Proses yang siap running/ready (misal terhenti karena time out) v Proses yang ter-blok (misal butuh memori lebih besar, menunggu I/O device) Sistem Operasi/201108912 #25
Nama Status pada proses dengan 5 -status (1) Ø New: v Status untuk proses yang baru saja terbentuk § Misal: log on dari user, buka MS-word, dll v Program dan data tidak langsung ditaruh ke memori, jika: § Jumlah proses yang sedang ditangani sudah maksimum agar performansi sistem terjaga § Memori tidak mencukupi Ø Ready: v Proses yang siap untuk dieksekusi v Sudah berada di memori Sistem Operasi/201108912 #26
Nama Status pada proses dengan 5 -status (2) Ø Running: v Proses sedang dieksekusi v Dalam satu saat hanya satu proses yang boleh running (uniprosesor) Ø Blocked: v Proses yang terpaksa berhenti karena sedang menunggu suatu event terjadi § Misal: proses yang sedang menunggu selesainya aktifitas di I/O Ø Exit: v Proses yang sudah selesai (keluar dari daftar proses yang dapat dieksekusi) v Penyebab: program sudah selesai atau dibatalkan Sistem Operasi/201108912 #27
Model Proses Dengan 5 -Status Ø Proses dengan 5 -status: Terminate te ina rm e T Ø Proses yang sedang antri dikelompokkan menjadi 2: v Proses yang siap running/ready (misal terhenti karena time out) v Proses yang ter-blok (misal butuh memori lebih besar, menunggu I/O device) Sistem Operasi/201108912 #28
Perpindahan Status Untuk Proses 5 -Status (1) Ø Null New: v Pembentukan proses baru Ø New Ready: v Penambahan proses baru yang siap dieksekusi v Proses baru telah ‘diakui’ oleh sistem operasi v Proses dipindah dari harddisk ke memori Ø Ready Running: v Satu proses terpilih dieksekusi Ø Running Exit: v Proses telah selesai atau dibatalkan Ø Running Ready: v Proses yang sedang running dipaksa berhenti (preempted) v Penyebab: § Waktu habis (time out) § Datang proses berprioritas lebih tinggi Sistem Operasi/201108912 #29
Perpindahan Status Untuk Proses 5 -Status (2) Ø Running Blocked: v Proses yang sedang running terpaksa berhenti v Penyebab: § Sedang menunggu file yang sedang diakses oleh proses lain § Sedang menunggu proses di I/O selesai § Butuh memori lebih besar § Sedang menunggu data hasil eksekusi proses lain § Sedang menunggu proses yang akan diajak berkomunikasi tetapi sedang sibuk Ø Blocked Ready: v Proses terbebas dari blocked setelah event yang ditunggu telah tersedia Sistem Operasi/201108912 #30
Perpindahan Status Untuk Proses 5 -Status (3) Ø Ready Exit: v Proses yang siap dieksekusi dipaksa keluar (terminasi) v Penyebab: § Proses anak yang ‘dibunuh’ oleh proses induk § Dihentikan oleh user Ø Blocked Exit: v Proses yang terblok diterminasi v Penyebab sama dengan penyebab Ready Exit Sistem Operasi/201108912 #31
Eksekusi Proses Dengan Dua Antrian (1) Ø Cara kerja: v Proses baru Ready queue § Jika tidak ada proses yang running langsung dieksekusi v Proses yang sedang running selesai/ter-blok Pilih satu proses di ready queue untuk dieksekusi v Jika selesai keluar v Jika time out masuk ready queue v Jika perlu resource lain masuk blocked queue Sistem Operasi/201108912 #32
Eksekusi Proses Dengan Dua Antrian (2) Ø Apa kelemahan sistem dengan 2 antrian ? v Jika proses yang ter-blok sangat banyak dan masing menunggu event yang berbeda-beda Jika datang suatu event, maka OS harus menyeleksi proses yang mana yang sedang membutuhkan event yang datang butuh waktu butuh algoritma lebih rumit Apa kelebihannya ? Sistem Operasi/201108912 #33
Eksekusi Proses Dengan Banyak Antrian (1) Sistem Operasi/201108912 #34
Eksekusi Proses Dengan Banyak Antrian (2) Ø Cara kerja: v Sama seperti pada eksekusi proses dengan dua antrian v Bedanya untuk setiap event yang berbeda disediakan sebuah antrian tersendiri Ø Kelebihan: v Jika suatu event yang ditunggu telah tiba pemilihan proses yang membutuhkan event tersebut lebih mudah dan cepat (algoritmanya lebih sederhana) Ø Pengembangan lebih lanjut: v Jika terdapat proses dengan prioritas berbeda untuk setiap prioritas disediakan ready queue masing-masing Sistem Operasi/201108912 #35
Model Proses Dengan 6 -Status di harddisk • Status yang ditambahkan: suspend state Sistem Operasi/201108912 #36
Mengapa perlu ada suspend state ? (1) Ø Memori telah dipenuhi oleh proses atau bagian proses yang berada pada status blocked akibat sedang menunggu suatu event (I/O, memori, dll), sehingga tidak ada proses yang siap dieksekusi, maka: v Semua proses menunggu v Prosesor menganggur Ø Semakin lama ukuran program semakin besar, maka: v Memori yang dibutuhkan semakin besar v Jumlah program yang dapat dieksekusi semakin sedikit Sistem Operasi/201108912 #37
Mengapa perlu ada suspend state ? (2) Ø Tambah memori mahal v Lakukan swapping (pindahkan proses yang berada pada status blocked dari memori ke harddisk) Proses berubah status dari blocked menjadi suspend Memori yang kosong bertambah besar: Dapat dimanfaatkan oleh proses yang butuh memori lebih besar, atau Dapat ditambahkan proses baru ke memori, atau Pindahkan proses lain yang ter-suspend dan siap running dari harddisk ke memori Sistem Operasi/201108912 #38
Referensi: [STA 09] Stallings, William. 2009. Operating System: Internal and Design Principles. 6 th edition. Prentice Hall Sistem Operasi/201108912 #39








































