Proses
block
wake-up
Blocked
Multiprogramming (Multitasking)
Merupakan manajemen banyak proses di satu pemroses. Masing2 program mendapatkan bagian memory dan kendalinya sendiri. Sistem operasi mengalihkan layanan pemroses diantara program tersebut dengan cepat sehingga seakan akan program tersebut jalan bersamaan Memiliki sifat: Saling tidak tergantung Satu program pada satu saat
4/8/2012 Manajemen Proses 3
Multiprocessing
Manajemen banyak proses di komputer multiprocessor Banyak pemroses (multiproses) yang bekerja secara independen untuk mengerjakan banyak program Sistem operasi Windows-NT, Unix dan Linux telah menyediakan dukungan multiprocessing ini.
4/8/2012
Manajemen Proses
Distributed Processing
Manajemen banyak proses yang dieksekusi di banyak sistem komputer yang tersebar (terdistribusi) dalam satu network. Sistem distributed processing yang ideal adalah dimana pemrogram tidak perlu menyadari keberadaan banyak komputer tsb. Merupakan kecenderungan komputasi pada masa mendatang.
4/8/2012 Manajemen Proses 5
Interleave (Saling melanjutkan) Sistem harus melaksanakan interleave eksekusi proses2 untuk mengoptimalkan penggunaan proccessor Mengikuti kebijaksanaan tertentu SO harus mengalokasikan sumber daya sambil menghindari deadlock Mendukung komunikasi antar proses dan penciptaan proses.
4/8/2012 Manajemen Proses 6
SO memerlukan banyak informasi mengenai proses untuk dapat melakukan pengolahan proses secara benar. Informasi ini berada pada struktur data PCB yang menyimpan informasi lengkap proses, shg SO dapat mengelola siklus hidup semua proses di sistem.
4/8/2012 Manajemen Proses 7
Operasi-operasi proses
Penciptaan proses Penghancuran/terminasi proses Penundaan proses Pelanjutan kembali proses Mem-block proses Menjadwalkan proses Memungkinkan proses berkomunikasi dengan proses lain
4/8/2012 Manajemen Proses 11
Penciptaan proses
Memberi identitas Menyisipkan proses pada tabel proses Menentukan prioritas awal proses Menciptakan PCB Mengalokasikan sumber daya
4/8/2012
Manajemen Proses
12
Satu pemakai interaktif logon Sistem operasi menciptakan proses untuk memberi layanan
4/8/2012
Manajemen Proses
13
Membebaskan proses dari sistem berupa; pengembalian sumber daya, proses tabel sistem dihancurkan dan PCB dihapus Penghancuran lebih rumit bila proses telah menciptakan proses2 lain. Terdapat dua pendekatan penghancuran: Proses-proses turunan dari induk dihancurkan secara otomatis jika proses induk dihancurkan Beberapa sistem lain benar-benar menganggap proses anak independen dari proses induk sehingga tidak dihancurakan secara otomatis jika proses induk dihancurkan
4/8/2012 Manajemen Proses 14
Alasan terminasi
Selesainya proses secara normal Batas waktu telah terlewati Memory tidak tersedia Pelanggaran terhadap batas memory Terjadi kesalahan karena pelanggaran proteksi Terjadi kesalahan aritmetika Waktu telah kadaluarsa
4/8/2012
Terjadi kegagalan I/O Instruksi yang tidak benar Terjadi usaha memakai instruksi yang tidak diijinkan Kesalahan penggunaan data Diintervensi eleh sistem operasi atau operator Berakhirnya proses induk Atas permintaan proses Manajemen Proses 15 induk
Proses yang ditunda (suspended process) sering dilakukan oleh sistem untuk alasan: Jika sistem berkinerja buruk dan berpeluang gagal maka dengan suspend, proses yg kurang penting dapat di suspend agar kinerja sistem meningkat. Setelah sistem beban turun suspend dapat di-resume. User yang ragu mengenai hasil suatu proses dapat mensuspend proses (bukan membuang proses). Proses dapat diresume kembali oleh user Sebagai tanggapan terhadap fluktuasi jangka pendek di beban sistem, beberapa proses dapat di-suspend dan resume saat beban kembali ke tingkat normal
4/8/2012 Manajemen Proses 16
Proses suspend/resume
Operasi Suspend dan Resume memiliki prioritas tinggi untuk dilaksanakan, karena cara ini dapat digunakan untuk keseimbangan beban saat mengalami lonjakan beban di atas normal Penundaan dapat diinisialisasi oleh proses itu sendiri atau oleh proses lain Pada sistem Monoprocessor, proses Running dapat mensuspend dirinya sendiri Pada sistem Multiprocessor, proses Running dapat disuspend oleh proses Running lain di pemroses yang berbeda. Ready hanya dapat di suspend oleh proses lain yg Running.
4/8/2012 Manajemen Proses 17
Penjadwalan Proses
Penjadwalan: pemilihan proses selanjutnya yg akan dieksekusi Melakukan multiplexing CPU Kapan dilakukan penjadwalan? Proses baru dibuat Proses selesai dieksekusi Proses yg sdg dieksekusi diblokir Terjadi I/O interrupt (mis. proses yg diblokir siap utk dieksekusi kembali) Terjadi clock interrupt
Sistem Operasi sebagai kernel tersendiri (nonproses) Fungsi-fungsi SO dieksekusi dalam proses pemakai Sistem Operasi juga sebagai process-based
operating system
4/8/2012
Manajemen Proses
19
Po
P1
Pn
Kernel
Kernel sistem operasi adalah diluar proses SO memiliki daerah memory dan stack tersendiri. SO menyimpan lingkungan proses, melakukan penjadwalan & menjadwalkan proses lain Konsep proses hanya diterapkan untuk program2 user, tidak berlaku bagi SO Proses adalah non-kernel dan sistem operasi adalah kernel yang bukan proses
4/8/2012
Manajemen Proses
20
Microkernel
Microkernel merupakan SO yang menyediakan landasan perluasan SO Landasan pendekatan microkernel adalah hanya fungsi SO inti yang secara mutlak esensi yg harus berada di kernel. Layanan dan aplikasi yang kurang esensi dibangun diatas microkernel. Layanan yang secara tradisional merupakan bagian dari SO menjadi subsitem external. Subsistem ini yang berinteraksi dgn kernel. Komponen SO diluar microkernel akan saling berinteraksi melalui pesan yg dilewatkan melalui microkernel. Microkernel akan memvalidasi pesan, melewatkan pesan antar komponen dan memberi hak pengaksesan hardware.
4/8/2012 Manajemen Proses 21
Kesimpulan
Sebuah proses adalah suatu program yang sedang dieksekusi. Proses lebih dari sebuah kode program tetapi juga mencakup program counter, stack, dan sebuah data section. Dalam pengeksekusiannya sebuah proses juga memiliki status yang mencerminkan keadaan dari proses tersebut. Status dari proses dapat berubah-ubah setiap saat sesuai dengan kondisinya. Status tersebut mungkin menjadi satu dari lima status berikut: new, ready, running, waiting, atau terminated. Setiap proses juga direpresentasikan oleh Proces Control Block (PCB) yang menyimpan segala informasi yang berkaitan dengan proses tersebut.