23
3.1 Bab 3 - Manajemen Proses

Bab 3 - Manajemen Proses · PDF fileManajemen banyak proses dengan banyak pemroses ... Memori utama -> dibebaskan -> dimanfaatkan proses lain

  • Upload
    trananh

  • View
    221

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Bab 3 - Manajemen Proses · PDF fileManajemen banyak proses dengan banyak pemroses ... Memori utama -> dibebaskan -> dimanfaatkan proses lain

3.1

Bab 3 - Manajemen Proses

Page 2: Bab 3 - Manajemen Proses · PDF fileManajemen banyak proses dengan banyak pemroses ... Memori utama -> dibebaskan -> dimanfaatkan proses lain

3.2

Konsep ProsesProses – sebuah program yg dalam keadaandieksekusiSebuah proses meliputi:

program counter Tumpukan (stack)Bagian data (data section)

Page 3: Bab 3 - Manajemen Proses · PDF fileManajemen banyak proses dengan banyak pemroses ... Memori utama -> dibebaskan -> dimanfaatkan proses lain

3.3

Analogi Proses

Page 4: Bab 3 - Manajemen Proses · PDF fileManajemen banyak proses dengan banyak pemroses ... Memori utama -> dibebaskan -> dimanfaatkan proses lain

3.4

Beberapa Istilah yang Muncul

Multiprogramming (multitasking)MultiprocessingDistributed Processing

Page 5: Bab 3 - Manajemen Proses · PDF fileManajemen banyak proses dengan banyak pemroses ... Memori utama -> dibebaskan -> dimanfaatkan proses lain

3.5

Multiprogramming

Manajemen banyak proses dengan satupemroses.Contoh: PC, workstation dengan MS Windows 3.1, NT, OS/2, MacOS 7Masing2 proses -> memori & kontrol sendiriSO mengalih2/berpindah2 dari memori tsb

Saling tak bergantung (independent)Satu program pada satu waktu/saat -> paralel semu(pseudoparalleslism)

Page 6: Bab 3 - Manajemen Proses · PDF fileManajemen banyak proses dengan banyak pemroses ... Memori utama -> dibebaskan -> dimanfaatkan proses lain

3.6

Multiprocessing

Manajemen banyak proses dengan banyakpemrosesContoh: mainframe dan minikomputer besar(dulu), server & desktop (sekarang)

Page 7: Bab 3 - Manajemen Proses · PDF fileManajemen banyak proses dengan banyak pemroses ... Memori utama -> dibebaskan -> dimanfaatkan proses lain

3.7

Distributed Processing

Manajemen banyak proses yang dieksekusi dibanyak komputer yang tersebar

Page 8: Bab 3 - Manajemen Proses · PDF fileManajemen banyak proses dengan banyak pemroses ... Memori utama -> dibebaskan -> dimanfaatkan proses lain

3.8

Kebutuhan Utama Pengendalian Proses

SO harus interleave (saling melanjutkan) eksekusi sejumlah proses -> memaksimalkanpenggunaan pemrosesSO -> mengalokasikan resource ke proses2 mengikuti kebijakan yang digariskan sambilmenghindari deadlockSO -> komunikasi antarproses dan penciptaanproses oleh pemakai

Page 9: Bab 3 - Manajemen Proses · PDF fileManajemen banyak proses dengan banyak pemroses ... Memori utama -> dibebaskan -> dimanfaatkan proses lain

3.9

Status Proses (Tanenbaum)

Running: pemroses sedang mengeksekusiprosesReady: proses siap, tapi pemroses belumbersedia mengeksekusi proses iniBlocked: proses menunggu kejadian untukmelengkapi tugasnya.

Contoh: Proses MenungguSelesainya operasi perangkat I/OTersedianya memoriTibanya pesan jawaban

Page 10: Bab 3 - Manajemen Proses · PDF fileManajemen banyak proses dengan banyak pemroses ... Memori utama -> dibebaskan -> dimanfaatkan proses lain

3.10

Status Proses (Silberschatz)Jika sebuah proses dieksekusi, maka akanmengubah status

new: berarti proses sedangdiciptakan/dibuat.running: instruksi-instruksi sedangdieksekusi.waiting: proses sedang menunggu beberapakejadian (event) untuk “menjadi” proses ygsempurna.ready: proses sedang menunggu untukditugaskan menjadi sebuah proses.terminated: proses telah menyelesaikanpengeksekusian.

Page 11: Bab 3 - Manajemen Proses · PDF fileManajemen banyak proses dengan banyak pemroses ... Memori utama -> dibebaskan -> dimanfaatkan proses lain

3.11

Diagram Status Proses

Page 12: Bab 3 - Manajemen Proses · PDF fileManajemen banyak proses dengan banyak pemroses ... Memori utama -> dibebaskan -> dimanfaatkan proses lain

3.12

Penting!

Hanya ada satu proses yang dapat berjalanpada prosesor mana pun pada satu waktu!Banyak proses yang dapat berstatus readyatau waiting

Page 13: Bab 3 - Manajemen Proses · PDF fileManajemen banyak proses dengan banyak pemroses ... Memori utama -> dibebaskan -> dimanfaatkan proses lain

3.13

Tiga kemungkinan bila prosesmemiliki status running

Proses telah selesai -> TerminatedWaktu yang disediakan habis -> interrupt -> readySebuah event terjadi (ada permintaan I/O) -> proses waiting

Page 14: Bab 3 - Manajemen Proses · PDF fileManajemen banyak proses dengan banyak pemroses ... Memori utama -> dibebaskan -> dimanfaatkan proses lain

3.14

Status Proses (Lanjutan)

Suspension (penundaan) -> memindahkansementara proses2 tertentu -> mereduksibeban sistem selama beban puncakSuspended process -> proses lain meresumeSuspension jangka panjang -> resourcesproses dibebaskanMemori utama -> dibebaskan -> dimanfaatkan proses lainResuming proses (pengaktifan kembali) -> menjalankan dari titik (instruksi) waktususpend terjadi

Page 15: Bab 3 - Manajemen Proses · PDF fileManajemen banyak proses dengan banyak pemroses ... Memori utama -> dibebaskan -> dimanfaatkan proses lain

3.15

Pentingnya Suspend & Resume

Sistem berfungsi buruk/gagal -> di-suspend -> di-resume

Contoh: Proses pencetakan -> kertas habis -> di-suspend -> kertas ditambah -> di-resume

Pemakai ragu/khawatir hasil proses -> suspend proses -> berfungsi -> resume prosesFluktuasi jangka pendek beban sistem -> suspend proses -> normal -> resume proses

Page 16: Bab 3 - Manajemen Proses · PDF fileManajemen banyak proses dengan banyak pemroses ... Memori utama -> dibebaskan -> dimanfaatkan proses lain

3.16

Operasi-Operasi Pada Proses

Penciptaan proses (create a process)Penghancuran/terminasi proses (destroy a process)Penundaan proses (suspend a process)Pelanjutan kembali proses (resume a process)Pengubahan prioritas prosesMem-blocked prosesMembangunkan prosesMenjadwalkan prosesKomunikasi dengan proses lain

Page 17: Bab 3 - Manajemen Proses · PDF fileManajemen banyak proses dengan banyak pemroses ... Memori utama -> dibebaskan -> dimanfaatkan proses lain

3.17

Aktivitas yang terjadi ketika penciptaanproses

Menamai (memberi identitas) prosesMenyisipkan proses pada senaraiproses/tabel prosesMenentukan prioritas awal prosesMenciptakan PCB (process control block)Mengalokasikan resource awal bagi proses

Proses baru -> struktur data -> mengelola & mengalokasikan ruang alamat.

Page 18: Bab 3 - Manajemen Proses · PDF fileManajemen banyak proses dengan banyak pemroses ... Memori utama -> dibebaskan -> dimanfaatkan proses lain

3.18

Kejadian yang dapat menyebabkanpenciptaan proses

Sebagai tanggaan atas pemberian satu kerja(job)Seorang pemakai log on ke sistemSO menciptakan proses untuk memenuhilayanan (satu fungsi pada program pemakai)Proses menciptakan anak proses (child process)

Page 19: Bab 3 - Manajemen Proses · PDF fileManajemen banyak proses dengan banyak pemroses ... Memori utama -> dibebaskan -> dimanfaatkan proses lain

3.19

Penciptaan Proses

Proses induk (parent process) dapat menciptakanproses anak (child process)Proses anak dapat menciptakan proses anak-nya.Saling berbagi (sharing) sumber daya (resource)

Induk dan anak membagi semua resource.Anak membagi subset resource milik induk.Tidak ada resource yg dibagi induk dan anak.

EksekusiInduk dan anak mengeksekusi secarabersamaan.Induk menunggu hingga anak selesai(terminate).

Page 20: Bab 3 - Manajemen Proses · PDF fileManajemen banyak proses dengan banyak pemroses ... Memori utama -> dibebaskan -> dimanfaatkan proses lain

3.20

Penciptaan Proses (Cont.)Pada UNIX

System call fork menciptakan proses baruMenciptakan salinan identik dengan prosesinduk.Induk melanjutkan kerjanya bersama denganproses anak

Pada MS DOSLoad berkas biner ke memori -> eksekusi jadiproses anakAkibatnya menunda proses induk -> prosesanak selesai eksekusi

Page 21: Bab 3 - Manajemen Proses · PDF fileManajemen banyak proses dengan banyak pemroses ... Memori utama -> dibebaskan -> dimanfaatkan proses lain

3.21

Pohon Hirarki Proses pada Sistem UNIX

Page 22: Bab 3 - Manajemen Proses · PDF fileManajemen banyak proses dengan banyak pemroses ... Memori utama -> dibebaskan -> dimanfaatkan proses lain

3.22

Penghancuran ProsesMelibatkan pembebasan dari sistemResource yang dipakai dikembalikan ke sistemProses dihancurkan dari senarai/tabel sistemdan PCB ikut dihapusKerumitan muncul bila proses telahmenciptakan proses2 lain

Otomatis proses anak hancur -> proses induk hancurProses anak independen -> proses induk

Page 23: Bab 3 - Manajemen Proses · PDF fileManajemen banyak proses dengan banyak pemroses ... Memori utama -> dibebaskan -> dimanfaatkan proses lain

3.23

Alasan Penghancuran Proses

Selesainya proses secara normalBatas waktu telah terlewatiMemori tidak tersediaPelanggaran terhadap batas memoriTerjadi kesalahan karena pelanggaran proteksiTerjadi kesalahan aritmatikaWaktu telah kadaluarsaTerjadi kegagalan I/OInstruksi yang tidak benarTerjadi usaha memakai instruksi yang tidak diijinkanKesalahan penggunaan dataDiintervensi oleh sistem operasi atau operatorBerakhirnya proses indukAtas permintaan dari proses induk