Pertemuan 4 KONKURENSI

dokumen-dokumen yang mirip
Konkurensi merupakan landasan umum perancangan sistem operasi. Proses-proses disebut konkuren jika proses-proses berada pada saat yang sama.

PROSES & THREADS 2 AGUS PAMUJI. SISTEM OPERASI - Proses & Threads

Sistem Operasi. Kongkurensi

Sinkronisasi & Deadlock AGUS PAMUJI. SISTEM OPERASI - Sinkronisasi & Deadlock

Sistem Operasi. Konkurensi

Konkurensi. Faikul Umam

DEADLOCK. Haryono Setiadi, ST, M.Eng

Fairuz El Said Sekedar Berbagi Sistem Operasi (SO) Konkurensi KONGKURENSI

MODUL 4 KONSEP PROSES, KONKURENSI, MANAJEMEN PROSES (1) M. R A J A B F A C H R I Z A L - S I S T E M O P E R A S I - M O D U L 4

KONGRUENSI. Pengertian. Mutual Exclusion. Masalah yang harus diselesaikan dalam kongruensi. (lebih. dapat saling berinteraksi.

KONGKURENSI (KEBERSAMAAN) Haryono Setiadi, ST, M.Eng

Sequential Process. Keterangan SISTEM OPERASI KOMUNIKASI ANTAR PROSES

Kongkurensi LPOHLVSFOTJ!

Sinkronisasi dan Deadlock Sistem Operasi

PENGATURAN PROSES. Proses adalah program yang sedangdieksekusi atau sofware yang sedang dilaksanakan.

Process Control Block (PCB) Masing-masing proses Direpresentasikan oleh Sistem Operasi dengan menggunakan Process Control Block (PCB),

T UGAS STUDI KASUS SISTEM OPERASI. Mutual Exclusion. Mata Kuliah : Sistem Operasi [ CF 1322] Disusun Oleh :

PRINSIP-PRONSIP KONGKURENSI meliputi halhal berikut : 1. alokasi waktu pemrosesan untuk prosesproses

Interaksi Antar Proses

Sekolah Tinggi Teknologi Adisutjipto Yogyakarta

Sistem Operasi Komputer. Pembahasan Deadlock

PEDOMAN WAWANCARA UNTUK PENGAJAR

SISTEM OPERASI DEADLOCK

Sistem Operasi. Deadlock

MAKALAH DEADLOCK. DIAJUKAN UNTUK MEMENUHI TUGAS MATA KULIAH Sistem Operasi Dosen Penampu Bapak Adi Sucipto, Ir., M.Kom. oleh :

3. Sebutkan perbedaan program dan proses berdasarkan keberadaan,sifat dan unsur pembentukan Jawab : Timeout. Dispatch.

Deadlock. Gambaran Umum Deadlock

7. Pengaturan Proses

MODUL 5 MANAJEMEN PROSES (2) (PENJADWALAN PROSES)

Bab 6. Deadlock POKOK BAHASAN: TUJUAN BELAJAR:

Bab 23. Deadlocks Pendahuluan. Gambar Contoh kasus deadlock pada lalu lintas di jembatan

Masalah Deadlock. Contoh Persimpangan Jalan. Resource-Allocation Graph. Deadlock

Konsep Deadlock. Kelompok 54.7 Ferry Sulistiyanto ( ) Ibnu Mubarok ( )

Penggunaan Brute Force untuk Mendeteksi Potensi Terjadinya Deadlock

Sistem Operasi. Critical section, konkurensi, mutasi exclusion, starvation dan deadlock. Juliansyahwiran, S. Kom, MTI. Modul ke: Fakultas FASILKOM

Koordinasi Antar Proses

BAB VIII DEADLOCK ...

Operating System. Synchronization & Deadlock. Fak. Teknik Jurusan Teknik Informatika Universitas Pasundan

Concurrency C oncurrency 2 : Deadlock dan Starvation (P ( ertemuan ke ert -15) November 2014

Sistem Operasi Pertemuan 6 Concurrency: Deadlock & Starvation. H u s n i Lab. Sistem Komputer & Jaringan Teknik Informatika Univ.

SISTEM OPERASI. Deadlock.

Bab 7: Deadlock. Permasalahan Deadlock

Sistem Operasi. Proses dan Thread

Komunikasi & Sinkronisasi Proses

Dosen pengampu : Mohamad Dani Sifat : Tutup buku dan peralatan elektronik

Penjadwalan Proses. Penjadwalan bertugas memutuskan hal-hal berikut : Proses yang harus berjalan. Kapan dan selama berapa lama proses berjalan

Bab 3 - Manajemen Proses 3.1

BAB II TINJAUAN PUSTAKA

S.P. HARININGSIH, S.T.

Apa yang akan dipelajari?

KONSEP PROSES STATUS PROSES

PENDAHULUAN. Pertemuan 1 1

BAB 2 LANDASAN TEORI

Q U I Z 3A - SOLUSI Mngt Memory + Konkurensi 2. By: Endro Ariyanto (END)

BAB II TINJAUAN PUSTAKA

Pengaturan Proses Dalam system operasi. proses

Q U I Z 3B - SOLUSI Mngt Memory + Konkurensi 2. By: Endro Ariyanto (END)

Konsep Dasar Sistem Operasi

Sistem Operasi PENGATURAN PROSES

Sleep and Wake Up. Tugas Kuliah. Mata kuliah : CF 1310 Sistem Operasi. Disusun oleh : UZLINA RAHMAWATI FIA MAHANANI

DEADLOCK PADA WINDOWS DAN LINUX

MANAJEMEN PROSES. Pointer State proses Keadaan proses: Keadaan mungkin, new, ready, running, waiting, halted, dan juga banyak lagi.

Monitor. Makalah Sistem Operasi. Disusun oleh :

PROSES DAN THREADS DALAM SISTEM OPERASI

Pengantar Teknologi Sistem Informasi 1b. Concurency

1/3/2013. Race Condition adalah situasi di mana beberapa proses mengakses

B. Jawablah dengan ringkas dan lengkap. (Jawaban tidak lebih dari 10 kalimat) (Nilai 40) Solusi: kata kunci dalam huruf miring.

SISTEM OPERASI. Deskripsi Proses. Multiprogramming. Istilah dalam Proses. (multitasking) MANAJEMEN PROSES. Multiprogramming.

adil efisiensi waktu tanggap (response time) turn arround time throughput

Recap. Proses. Proses. Multiprogramming. Multiprocessing 9/16/2016. Ricky Maulana Fajri

Struktur Sistem Operasi

BAB 2 LANDASAN TEORI. Secara umum, sebuah sistem komputer terbagi atas hardware, sistem operasi, program

1. DEADLOCK. Diagram Graf

Pertemuan 5 MANAJEMEN PERANGKAT INPUT/OUTPUT

DESKRIPSI PENJADWALAN PROSES

SISTEM OPERASI. Oleh:

Untuk mengatasi kondisi pacu harus dijamin tidak boleh dua proses atau lebih memasuki critical section yang sama secara bersamaan.

Jawaban Soal UTS Instalasi dan Penggunaan Sistem Operasi Semester Genap 2014/2015 D3 Teknik Informatika, Fakultas Ilmu Terapan, Universitas Telkom

DEADLOCK. KELOMPOK : Aurora Marsye Mellawaty Vidyanita Kumalasari Y

Pertemuan #3: Sinkronisasi dan Deadlock

PERTEMUAN 1 PENGENALAN SISTEM KOMPUTER & SISTEM OPERASI M. R A J A B F A C H R I Z A L - S I S T E M O P E R A S I - C H A P T E R 1 1

Konsep Proses. Proses adalah suatu program yang sedang diesekusi (running) Pada saat proses berlangsung :

Deadlock. Pada kasus ini juga bisa terjadi kelaparan, yaitu ada proses yang tidak terlayani

SEKOLAH TINGGI INFORMATIKA & KOMPUTER INDONESIA (STIKI)

Soal-jawab Quiz 2. Oleh: Endro Ariyanto (END) Oktober 2008

DEADLOCK PADA DISTRIBUSI DATA DAN PEMECAHANNYA

STRUKTUR SISTEM OPERASI

KOMPONEN DASAR SISTEM OPERASI, DEADLOCK, DAN IMPLEMENTASI GRAF UNTUK MENDETEKSI DEADLOCK PADA SISTEM OPERASI

Pencegahan Deadlock pada Alokasi Resource dalam Sistem Operasi Menggunakan Algoritma Greedy

MODUL PRAKTIKUM SISTEM OPERASI PRAKTIKUM VIII Deadlock

Prio Handoko, S.Kom., M.T.I.

DEADLOCK = kompi loe nge-hang tuh..

Fungsi Manajemen Memori

Laporan Tugas Scheduling Pengantar Sistem Operasi

GARIS GARIS BESAR PROGRAM PENGAJARAN/GBPP (Rencana Kegiatan Belajar Mengajar)

2 Konsep Dasar Sistem Operasi

1.Proses control block dalam istilah lain Taks controlling block, Taks struct, atau Switchframe. Jelaskan dan berikan gambaran proses control block?

Deskripsi Penjadwalan Proses

SOLUSI QUIZ 2 SISOP CS3613

Pertemuan - 4 PENJADWALAN PROSES. Haryono Setiadi, ST, M.Eng D3 Ilmu Komputer UNS

Transkripsi:

Pertemuan 4 KONKURENSI Konkurensi merupakan landasan unum perancangan sistem operasi. -proses disebut konkuren jika proses-proses berada pada saat yang sama. Pada proses-proses konkuren yang berinteraks mempunyai beberapa masalah yang harus diselesaikan: 1. Mutual Exclusion 2. Sinkronisasi 3. Deadlock 4. Startvation A. Prinsip-prinsip Konkurensi Konkurensi meliputi hal-hal sbb: - Alokasi wkatu pemroses untuk proses-proses - Pemakaian bersama dan persaingan untuk mendapatkan sumber daya - Komunikasi antarproses - Sinkronisasi aktivitas banyak proses. Konkurensi dapat muncul pada tiga konteks berbeda, antara lain: - Banyak aplikasi (multiple application) - Aplikasi terstruktur - Struktur sistem operasi B. Kesulitan-kesulitan yang ditimbulkan konkurensi Konsep: kecepatan eksekusi proses-proses di sistem tidak dapat diprediksi. Beragam kemungkinan yang terjadi tidak dapat diprediksi, seperti: 1. Kecepatan proses pada sistem tergantung pada beberapa hal, antara lain: - Aktivitas proses-proses lain - Cara sistem operasi menangani interupsi - Kebijaksanaan penjadwalan yang dilakukan oleh sistem operasi. 2. Beberapa kesulitan yang dapat muncul, di antaranya adalah: - Pemakaian bersama sumber daya globla - Pengelolaan alokasi sumber daya agar optimal - Pencarian kesalahan pemrograman. 3. -proses konkuren mengharuskn beberapa hal yang harus ditangani, antara lain: - Sistem operasi harus mengetahui proses-proses yang aktif - Sistem operasi harus mengalokasikan dan mendealokasikan beragam sumber daya untuk tiap proses aktif. Sumber daya yang harus dikelola, antara lain: i. Waktu pemroses. ii. Memori iii. Berkas-berkas iv. Perangkat I/O 1

- Sistem operasi harus memproteksi data dan sumber daya fisik masingmasing proses dari gangguan proses-proses lain. - Hasil-hasil proses harus independen terhadap kecepatan relatif prosesproses lain dimana eksekusi dilakukan. Mutual Exclusion Mutual exclusion adalah jaminan hanya satu proses yang mengakses sumber daya pada satu interval waktu tertentu. Sering terjadi pada peralatan pencetakan (printer). Daemon printer adalah proses yang melakukan penjadwalan dan pengendalian pencetakan berkas-berkas di printer. Ruang disk ini disebut direktori spooler. Direktori spooler membagi disk menjadi sejumlah slot. Slot-slot diisi berkas yang akan dicetak. Terdapat variabel in yang menunjuk slot bebas pada ruang disk yang akan dipakai untuk menyimpan berkas yang ingin dijadwalkan untuk dicetak. Bagian program yang sedang mengakses memory atau sumber daya yang dipakai bersama disebut critical section. Jika proses pada critical section memblokir proses-proses lain dalam antrian, maka akan terjadi startvation dan deadlock. Kesuksesan proses-proses konkurensi memerlukan pendefinisian critical section dan memaksakan mutual exclusion di antara proses-proses konkuren yang sedang berjalan. Pemaksaan mutual exclusion merupakan landasan pemrosesan konkuren. Fasilitas atau kemampuan menyediakan dukungan mutual exclusion harus memenuhi kriteria sbb: - Mutual exclusion harus dijamin, bahwa tidak ada proses lain, kecuali dirinya sendiri. Di sini terjadi proses tunggal. - yang berada di noncritical section, dilarang mem-blocked prosesproses lain yang ingin masuk critical section. Hal ini bisa terjadi startvation. - Harus dijamin bhwa proses yang ingin masuk critical section tidak menunggu selama waktu yang tak terhingga. Ini bisa mengakibatkan masalah deadlock dan antrian proses bertambah panjang. - Ketika tidak ada proses pada critical section, maka proses yang ingin masuk critical section harus ijinkan masuk tanpa waktu tunda. - Tidak ada asumsi mengenai kecepatan relatif proses atau jumlah yang ada. - hanya tinggal pada critical section selama satu waktu yang berhingga Beberapa metode yang diusulkan untuk menjamin Mutual Exclusion, antara lain: - Metode Variable Lock Metode ini sederhana ketika proses masuk critical section lebih dahulu memeriksa variable lock. v. Jika variable lock bernilai 0, proses men-set variable lockny menjadi 1 kemudian masuk ke dalam critical section. vi. Jika variable lock bernilai 1, maka proses menunggu sampai nilai variable lock nya menjadi 0. Metode ini tidak menjamin proses tidak masuk critical section yang telah dimasuki proses lain. - Metode bergantian secara ketat 2

Metode ini mengasumsikan dapat mengalir masuk critical section secara bergantian terus-menerus. Metode ini melakukan refleksi terhadap variabel yang berfungsi untuk memenuhi critical section. Deadlock Deadlock adalah suatu kondisi dimana dua proses atau lebih tidak dapat meneruskan eksekusinya oleh pemroses. Pada umumnya deadlock terjadi karena proses mengalami startvation, yaitu suatu job yang sedang dieksekusi dan eksekusi job tersebut tidak ada hentinya, tidak diketahui kapan berhentinya proses tersebut atau bahkan job yang antri bisa dikatakan mempunyai status mati, padahal proses-proses lain sedang menunggu sumber daya proses. a. Resource Sistem operasi di sini berperan sebagai pengatur berbagai tipe resource yang berlainan, krena pada dasarnya proses-proses maupun job-job tersebut ingin mengakses resource yang sama. Shareable resource misalnya printer, tape drive. b. Karakteristik Deadlock Kondisi yang dapat menimbulkan terjadinya deadlock: 1. Mutual exclusion. Apabila proses telah menggunakan suatu resource, mka tidak boleh ada proses lain yang menggunakan resource tsb. Hanya satu proses yang dapat menggunakan sebuah resource pada satu waktu. 2. Hold & Wait. Pada suatu proses sedang mengakses suatu resource, proses tsb dapat meminta ijin untuk mengakses resource lain yang dipakai oleh proses lain. 3. No Preemption. Jika suatu proses meminta ijin untuk mengakses resource, sementara resource tersebut tidak tersedia, maka permintaan ijin tidak dapat dibatalkan. 4. Circular Wait Condition. Jika proses P0 sedang mengakses Resource R1 dan minta ijin untuk mengakses resource R1 dan minta ijin untuk mengakses resource R2, dan pada saat yang bersamaan P1 sedang mengakses resource R2 dan mint ijin untuk mengakses R1. Metode Mengendalikan Deadlock 1. Menggunakan suatu protokol untuk meyakinkan bahwa sistem tidak akan pernah mengalami deadlock. 2. Mengijinkan sistem mengalami deadlock, namun kemudian harus segera dapat memperbaikinya. 3. Mengabiakan semua masalah dan menganggap deadlock tidak akan pernah terjadi lagi di dalam sistem. Pencegahan Deadlock 1. Mutual exclusion. Harus tetap menjaga resource-resource yang bersifat nonshareable. Yaitu, proses menahan sebuah resource, proses lain yang meminta resource tsb harus menunggu sampai proses melepaskannya. Jika terjadi pada perangkat I/O dan berkas, maka sulit untuk menghindari mutual exclusion pada sumber daya non shareable. 3

2. Hold & Wait. Apabila suatu proses minta ijin untuk mengakses suatu resource, maka proses tersebut tidak boleh membawa resource yang lainnya. Sebleum proses meminta resource, maka harus melepas semua resource yang dibawa. 3. Non Preemption. Jika suatu proses minta ijin mengakses resource, sementara resource tersebut tidak dapat dipenuhi secepatnya, maka proses tersebut harus membebaskan semua resourcenya terlebih dahulu. 4. Circular Wait. Memberi nomor pada setiap resource yang ada, dan setiap resource hanya boleh mengakses resource2 secara berurutan. 5. Untuk menghindari deadlock ikuti prinsip preemptive. Penghindaran Deadlock 1. State Selamat Contoh: Pada sistem dengan 10 sumber daya setipe, proses A memerlukan sumber daya maksimum sebanyak 10, sedang saat ini menggenggam 2. B memerlukan sumber daya maksimum sebanyak 3, sedang saat ini menggenggam 1. C memerlukan sumber daya maksimum sebanyak 7, sedang saat ini menggenggam 3. Maka, masih tersedia 4 sumber daya. Tersedia 4 Dengan hati-hati, sistem penjadwalan ini dapat terhindarkan dari deadlock, dengan cara sbb: Langkah 1. Alokasikan 4 sumber daya ke proses C sehingga sumber daya yang tersedia tinggal 1 dan nantikan sampai proses C berakhir. C 7 7 Maka setelah proses C selesai dan menjadi : Tersedia 7 Langkah 2: Alokasikan 2 sumber daya ke proses B, nantikan proses B sampai berakhir. 4

B 3 3 Tersedia 5 Maka, setelah proses B selesai dan menjadi: B 0 0 Tersedia 8 Langkah 3: Alokasikan 8 sumber daya ke proses A, nantikan proses A sampai berakhir. A 10 10 B 0 0 Maka, setelah proses A selesai dan menjadi : A 0 0 B 0 0 Maka, ketiga proses tersebut dengan penjadwalan hati-hati dapat menyelesaikan proses mereka dengan sempurna. B. State Tak Selamat (unsafe state) State dikatakan sebagai state tak selamat jika tidak terdapat cara untuk memenuhi semua permintaan yang saat ini ditunda dengan menjalankan proses-proses dengan suatu urutan. Contoh Soal di bawah ini adalah seperti soal pada state selamat, sate ini dapat berubah menjadi state tak selamat bila alokasi sumber daya tak terkendali. Tersedia 4 State tersebut dapat menjadi state tak selamat bila: - dua permintaan sumber daya oleh proses A dilayani, kemudian - Permintaan satu sumber daya oleh proses B dilayani Maka state menjadi: 5

A 4 10 B 2 3 Tersedia 1 Tabel di atas adalah state tak selamat. Pada state ini tidak terdapat barisan pengalokasian yang dapat membuat semua proses selesai. Misalnya, barisan pengalokasian yang ditempuh adalah: Langkah 1: Alokasikan satu sumber daya ke proses B sehingga sumber daya tersedia tinggal 1 dan nantikan sampai proses B berakhir. A 4 10 B 3 3 Maka, setelah proses B selesai dan menjadi: A 4 10 B 0 - Tersedia 3 Saat hanya tersedia tiga sumber daya sementara dua proses yang sedang aktif masingmasing membutuhkan 6 dan 4 sumber daya. Perlu diingat!, bahwa state tak selamat bukan berarti deadlock, hanya menyatakan bahwa state tersebut memiliki kemungkinan deadlock. Referensi: Sistem Operasi, SP Hariningsih, Penerbit Graha Ilmu 2003. 6