Manajemen Proses
Proses Proses adalah Eksekusi sebuah program
Contoh proses
PCB (Process Control block
PCB description Process State = Berisi Status Proses Program Counter = Berisi alamat dari instruksi berikutnya dari proses ini CPU Register = Berisi diantaranya accumulator, index register, stack pointer, general purpose register, dan kondisi pada saat itu CPU Schedulling Information = Berisi informasi prioritas proses, pointer urutan proses. Memory management information = Berisi informasi batas memori, file yang di buka dll.
CPU Switch Dari Satu Proses ke Proses Lainnya
Diagram status proses
Status Proses New = Proses baru saja di buat Running = Instruksi sedang di jalankan Waiting = Proses Menunggu Peristiwa terjadi (Penekanan Key board, Save ke disk) Ready = Proses menunggu di eksekusi di prosesor Terminated = Proses Selesai di eksekusi
New Inisialisasi Sistem (ex: System Log on) Dipanggil oleh proses lain yang sedang berjalan (ex: User melakukan print ) User menjalankan proses OS melakukan Job Schedule (ex : Scheduled task)
Macam proses Foreground Process = “Proses yang berinteraksi dengan user” Ex = Winword, Excel BackGround Process / Daemon = “Proses yang berjalan di belakang tetapi apabila di panggil langsung berinteraksi” Ex = Printing
HIRARKI Proses Proses yang membuat proses lainnya disebut “Parent Process” Proses yang dibuat oleh proses lain disebut “Child Process” Proses hanya punya 1 Parent Proses bisa punya 0,1,2 dst Children
Pilihan hubungan parent child Resource sharing Parent dan child berbagi resource Children berbagi subset dari resource milik parents. Parent dan child tidak berbagi resource. Execution Parent dan children melakukan eksekusi secara serempak. Parent menunggu hingga children selesai. Address space Child menduplikasi parent. Child memiliki program yang di load ke dalamnya.
Pilihan hubungan parent child Contoh UNIX : fork system call membuat proses baru execve (EXEC) : menjalankan program spesifik yang lain nama program tersebut menjadi parameter dari system call EXEC (sering di load sesudah menjalankan fork). Tahapan pembuatan proses baru: Periksa apakah masih terdapat ruang pada PCB. Mencoba mengalokasikan memori untuk proses baru. Mengisi informasi untuk proses baru: nama proses, id, copy data dari parent dll. Mencantumkan informasi proses ke kernel OS.
Hirarki proses di unix
TERminated Normal Exit = “Proses berhenti karena pekerjaan telah Selesai dikerjakan semua” Error Exit = “Proses berhenti karena adanya error, ex compile program tetapi tidak ada” Fatal error = “Proses berhenti karena ada bug” Killed by another process = “ Proses dihentikan proses lain, ex : End task”
Independent proses Proses yang berdiri sendiri Proses yang tidak memiliki efek terhadap proses yang lain Proses yang tidak terpengaruh oleh proses yang lain
Cooperating proses Proses yang berbagi dengan proses lainnya Yang di bagi adalah Information sharing (ex File shared) Computation Speed up (Proses di pecah2 dalam sub proses) Modularity ( Proses di model kan ke dalam bentuk modul2) Convenience ( Proses bekerja secara paralel agar user nyaman. Ex : User mencetak dan sedang mengetik hal berikutnya)
THread Adalah unit dasar dari penggunaan CPU. Proses Traditional memiliki 1 buah thread sering disebut Heavyweight process Proses Modern memiliki lebih dari 1 thread / Multi thread Thread disebut juga Lightweight Process
Gambar THREAD
CONtoh THREad Web Browser terdiri dari Thread untuk menampilkan gambar, tulisan Thread untuk penerima data dari network Web Server mampu melayani ratusan klien secara bersama, tiap klien dibuatkan thread sendiri2
KEUNTUNGAN THREAD Responsif Berbagi sumber daya Membuat aplikasi terlihat responsif (ex web browser memiliki thread melayani permintaan user sementara yang lain juga menampilkan data) Berbagi sumber daya Thread berbagi resource dengan thread lain yg dimiliki proses yg sama.
KEUNTUNGAN THREAD Ekonomi Utilisasi pada multiprocessor Alokasi memori untuk membuat thread lebih kecil daripada membuat sebuah proses traditional Utilisasi pada multiprocessor Tiap thread dapat berjalan secara paralel diatas prosesor yang berbeda
SEKIAn