MANAJEMEN PROSES

28
MANAJEMEN PROSES

description

MANAJEMEN PROSES. Komunikasi antar proses. Komunikasi antar Proses. Sistem Sekuential Vs Konkurensi Sistem Sekuential Awalnya, proses-proses dijalankan secara sekuential atau berurutan. Suatu proses dieksekusi sampai selesai, baru kemudian pindah ke proses yang lain - PowerPoint PPT Presentation

Transcript of MANAJEMEN PROSES

Page 1: MANAJEMEN PROSES

MANAJEMEN PROSES

Page 2: MANAJEMEN PROSES

Komunikasi antar proses

Page 3: MANAJEMEN PROSES

Komunikasi antar Proses

Sistem Sekuential Vs KonkurensiSistem Sekuential

Awalnya, proses-proses dijalankan secara sekuential atau berurutan.

Suatu proses dieksekusi sampai selesai, baru kemudian pindah ke proses yang lain

Utilitas prosesor sangat rendah

Page 4: MANAJEMEN PROSES

Sistem Konkurensi

Sistem yang memiliki sejumlah aktifitas yang sedang berjalan secara “bersamaan”

Ex: proses membangun rumah

Sistem Konkurensi

Sistem Paralel (multiprocessing)-terjadi overlapping

Multitasking-Penjadwalan-interleaving

Page 5: MANAJEMEN PROSES

Konsekuensi dari multitasking- Proses tidak saling mempengaruhi

ex: Ms Word & Winamp- Proses saling mempengaruhi secara tidak langsung

ex: Ms Word & notepad mengakses file bersama-sama

- Proses saling mempengaruhi secara langsung

ex: Internet browser & web server harus bersama-sama menyediakan pages

bagi user

Page 6: MANAJEMEN PROSES

Masalah-masalah yang timbul akibat perebutan sumber daya pada suatu proses:

RACE CONDITIONCRITICAL SECTIONMUTUAL EXCLUSION DG BUSY WAITINGMUTUAL EXCLUSION DG SLEEP & WAKEUPMUTUAL EXCLUSION DG SEMAPHOREEVENT COUNTERMUTUAL EXCLUSION DG MONITORKOMUNIKASI ANTAR PROSES DG METODE

MESSAGE PASSING

Page 7: MANAJEMEN PROSES

RACE CONDITIONSebagian besar Sistem Operasi, sering memakai

bersama memori (share memory), dimana setiap proses dapat membaca dan menulis.

Share memory dapat terjadi dalam memori utama atau berupa share file.

Lokasi share memory tidak merubah sifat dasar komunikasi.

Contoh :

Proses-A : Regs[A] ç 10 + 5; Proses B : Regs[B] ç 10 – 5; Proses A : X ç Regs[A]

Page 8: MANAJEMEN PROSES

Pada contoh diatas hasilnya yang diharapkan adalah 15 tetapi hasil yg didapat adalah 5.

Kondisi diatas disebut RACE CONDITION.RACE CONDITION adalah

Kondisi tidak menentu yg diakibatkan oleh pengaksesan data yg sama oleh dua proses atau lebih.

Page 9: MANAJEMEN PROSES

CRITICAL SECTIONBagian dari suatu program dimana terjadi

pengaksesan terhadap share memory atau share file yg dapat mengakibatkan terjadinya race condition.

Cara yg dapat dilakukan untuk menghindari terjadi race condition :Mencegah situasi seperti contoh diatas dan

mencegah situasi-situasi lain yg melibatkan share memory, share file, dan share resource lainnya.

Melarang lebih dari satu proses melakukan pembacaan dan penulisan data pada lokasi yg sama secara bersamaan.

Jika ada satu proses sedang menggunakan share variabel atau share file, maka proses yg lain dilarang masuk ke pekerjaan yg sama.

Page 10: MANAJEMEN PROSES

Ditawarkan suatu solusi untuk menghindari terjadinya race condition yg lebih dikenal sebagai mutual excluion.

Kriteria Mutual Exclusion :Tidak boleh ada 2 proses atau lebih yg berada

dalam satu critical sectionJangan berasumsi dengan kecepatan running CPU

dan jumlah CPUTidak boleh ada proses diluar critical section yg

memblok atau menghalangi proses lain masuk ke critical section

Tidak boleh ada proses yg menunggu terus, untuk masuk ke critical section

Page 11: MANAJEMEN PROSES

Lifecycle of Process

Page 12: MANAJEMEN PROSES

Pengelolaan lifecycle Process Penciptaan proses1. SO akan menerbitkan suatu nomor ID

untuk proses yang diciptakan.2. SO akan membuat data record dengan

ID tersebut, kemudian menyisipkan pada struktur data di memori utama yang disebut process table

3. SO akan mengalokasi ruang memori utama untuk menyimpan image proses.

4. Inisialisasi PCB5. Masuk ke antrian ready. Status ready

Page 13: MANAJEMEN PROSES

Penghentian Proses1. Mengembalikan hasil output ke parent

process (proses yang menciptakannya)2. Menghapus rekaman proses di semua

antrian dan tabel proses.3. SO akan menghapus PCB dan image

process. Semua recources dikembalikan ke SO

Setelah selesai, SO akan melakukanpenjadwalan (scheduling) untuk memilih proses lain untuk dieksekusi

Page 14: MANAJEMEN PROSES

Blocked(waiting)

New

Exit

Ready

Running

Status Proses Model 3 status Ready Running Blocked

Transitions between states1 - Process enters ready queue2 - Scheduler picks this process3 - Scheduler picks a different

process4 - Process waits for event (such

as I/O)5 - Event occurs6 - Process exits7 - Process ended by another

process

1

5

4

3

2

7

76

Page 15: MANAJEMEN PROSES

Ada 4 transisi yang mungkin terjadi pada suatu proses :Running ke Blocked

• Transisi ini terjadi bila suatu proses tidak bisa dilanjutkan karena peralatan input belum siap

Running ke Ready• Transisi ini terjadi saat scheduler memutuskan bahwa suatu

proses telah cukup lama sehingga perlu menghentikan sementara

Ready ke Running• Transisi ini dilakukan ketika semua proses telah memperoleh

giliran semua, maka proses pertama akan running kembali. Jika sudah tidak ada lagi proses yg sedang dieksekusi, maka transisi akan segera dihidupkan dan proses yg sedang ready segera masuk kembali.

Blocked ke Ready• Terjadi saat ada peristiwa lain diluar dirinya membangunkan

proses tersebut yang selama ini sedang tertidur

Page 16: MANAJEMEN PROSES

Model 5 status

Page 17: MANAJEMEN PROSES

Process switching

Ketika suatu proses yang sedang running sudah habis jatah waktu eksekusinya, maka SO bertanggung jawab mengalihkan eksekusi ke proses lainnya.

Proses penggantinya schedulerPengalihan eksekusinya dispatcher

Page 18: MANAJEMEN PROSES

Berbagai penyebab process switching

Interupsi- aksi eksternala. interupsi waktub. interupsi piranti I/O c. interupsi kesalahan memori utama

Trap kesalahan/kondisi khusus (exception condition)

Supervisor call atau system call

Page 19: MANAJEMEN PROSES

Tahapan process switching

Page 20: MANAJEMEN PROSES

Struktur kendali sistem operasi

Page 21: MANAJEMEN PROSES

Tabel Proses (Process Table)

Untuk mengimplementasikan model proses, sistem operasi membuat suatu tabel yg disebut TABEL PROSES.

Mencatat informasi mengenai status dari setiap proses

Informasi ini akan digunakan SO untuk mengatur penjadwalan eksekusi proses.

Umumnya diimplementasikan dengan link list

Page 22: MANAJEMEN PROSES

Setiap proses mempunyai record dalam tabel tersebut, dimana tiap record terdiri dari beberapa field yg berisi informasi tentang :Status prosesProgram CounterStack PointerAlokasi MemoriStatus File yang dibukaInformasi perhitungan dan penjadualanInformasi-informasi lain mengenai proses

tersebut.

Page 23: MANAJEMEN PROSES

Masing-masing record menuju image (alokasi memori utama)

Sebuah process image memiliki elemen-elemen:

Data pengguna (User data)

berisi data-data programKode program (User program)

berisi kode-kode instruksi programSistem stack (user stack)

menyimpan parameter dan alamat dari prosedurProcess Control Block (PCB)

menyimpan informasi yang diperlukan SO dalam menjalankan proses.

Page 24: MANAJEMEN PROSES

PCB (Process Control Block )

Dalam multitasking, banyak informasi yang perlu dikumpulkan dari masing-masing proses agar pengaturan dapat dilakukan dengan baik.

Informasi ini terletak dalam sebuah Process Control Block.

Page 25: MANAJEMEN PROSES

PCB (Process Control Block )

Setiap proses direpresentasikan kedalam sistem operasi oleh PCB

PCB meliputi informasi yang berhubungan dengan proses:

Process stateProgram counterCPU registersCPU scheduling informationMemory-management informationAccounting informationI/O status information

Page 26: MANAJEMEN PROSES

Elemen data yang terdapat pada suatu PCB dapat dikelompokkan dalam 3 kategori:

1. Process identification

berkaitan dengan identifikasi proses secara unik. Elemen yang termasuk: ID proses, ID proses parent, ID user.

2. terdiri dari register-register prosesor. Elemen yang termasuk: user-visible register, control and status register dan stack pointer

Page 27: MANAJEMEN PROSES

3. Process control information

berisi informasi yang diperlukan SO untuk mengendalikan beragam

proses yang aktif. Elemen yang termasuk:

a. Scheduling and state information

b. data structuring

c. Interprocess communication

d. process privileges

e. memory management

f. Resource ownership and utilization

Page 28: MANAJEMEN PROSES

PCB