Kongkurensi LPOHLVSFOTJ!

dokumen-dokumen yang mirip
Sistem Operasi. Konkurensi

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

Interaksi Antar Proses

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

Sistem Operasi. Kongkurensi

Konkurensi. Faikul Umam

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

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

Pengantar Teknologi Sistem Informasi 1b. Concurency

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

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

Pertemuan 4 KONKURENSI

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

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

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

Apa yang akan dipelajari?

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

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

7. Pengaturan Proses

PROSES DAN THREADS DALAM SISTEM OPERASI

Sinkronisasi dan Deadlock Sistem Operasi

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

REVIEW DAN REVISI BUKU

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

Bab 4 PENJADWALAN PROSES

SISTEM OPERASI TERDISTRIBUSI

Proses. - yaitu program yang sedang dieksekusi Proses merupakan satuan kerja terkecil yang secara individual dijadwalkan oleh sistem operasi

Kelas: Nilai (Diisi Dosen):... IF

Sistem Operasi PENGATURAN PROSES

Sistem Operasi Terdistribusi

Sebagai Kordinator, yang memberikan fasilitas sehingga segala aktivitas yang kompleks dapat dikerjakan dalam urutan yang benar.

Sequential Process. Keterangan SISTEM OPERASI KOMUNIKASI ANTAR PROSES

SISTEM OPERASI. Review

Struktur Sistem Komputer

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

Bab 3 - Manajemen Proses 3.1

Operating System. Thread. Fak. Teknik Jurusan Teknik Informatika Universitas Pasundan. Dosen : Caca E. Supriana, S.Si

Pertemuan Ke-8 Unit I/O (Unit Masukan dan Keluaran)

Konsep Dasar Sistem Operasi

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

Sistem Operasi Pertemuan 5 Concurrency: Mutual Exclusion & Synchronization

BAB 2 STRUKTUR SISTEM OPERASI. Komponen Sistem Operasi

Sistem Komputer. Tiga komponen utama : CPU

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

Bab I Pengenalan Sistem Operasi. Apa yang dimaksud Sistem Operasi?

MODUL 2 KOMPONEN, LAYANAN 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 2

Bab 3: Proses-Proses. Konsep Proses

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

1 Tinjau Ulang Sistem Komputer

SINKRONISASI. Sistem terdistribusi week 5

Sistem Operasi. Partisi Statis, Partisi Dinamis Sistem Paging dan Segmentasi. Juliansyahwiran, S. Kom, MTI. Modul ke: Fakultas FASILKOM

Perangkat Keras Masukan/Keluaran. Kelompok : Intan Sari H. H. Z Verra Mukty

ARSITEKTUR SISTEM. Alif Finandhita, S.Kom, M.T. Alif Finandhita, S.Kom, M.T 1

Organisasi & Arsitektur Komputer

Pertemuan ke - 12 Unit Masukan dan Keluaran Riyanto Sigit, ST. Nur Rosyid, S.kom Setiawardhana, ST Hero Yudo M, ST

Sistem Operasi. Proses dan Thread

Tujuan. 1. Mahasiswa memahami apa itu sinkronisasi dan pentingnya sinkronisasi pada sistem terdistribusi.

Bab 3: Proses-Proses. Konsep Proses

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

4. SISTEM OPERASI TERDISTRIBUSI

P10 Media I/O Universitas Mercu Buana Yogyakarta

Sistem Operasi dalam bahasa Inggrisnya disebut Operating System, atau biasa di singkat dengan OS.

Komunikasi & Sinkronisasi Proses

Sekolah Tinggi Teknologi Adisutjipto Yogyakarta

Sistem Operasi. Struktur Sistem Komputer. Adhitya Nugraha. Fasilkom 10/6/2014

SISTEM OPERASI. Belajar SO?

Struktur Sistem Komputer

MODUL 5 MANAJEMEN PROSES (2) (PENJADWALAN PROSES)

Sistem Terdistribusi. Sistem Operasi Terdistribusi oleh : Musayyanah, S.ST, MT

SISTEM OPERASI. Sri Kusumadewi

Penggunaan Brute Force untuk Mendeteksi Potensi Terjadinya Deadlock

ORGANISASI KOMPUTER 1

PENDAHULUAN. Pertemuan 1 1

Struktur Sistem Operasi

Modul ke: Sistem Operasi. Komponen Sistem Operasi dan Fungsi-Fungsinya. Fakultas FASILKOM. Juliansyahwiran, S. Kom, MTI.

Arsitektur Komputer dan Pengenalan Sistem Operasi

Klasifikasi Perangkat I/O

RENCANA PEMBELAJARAN

PENGANTAR ORGANISASI DAN ARSITEKTUR KOMPUTER SISTEM INPUT OUTPUT

Fungsi Manajemen Memori

2.6. Struktur dasar sistem operasi

PROSES. Sistem Terdistribusi

SISTEM KOMPUTER PEMROSES (CPU) Empat komponen Sistem Komputer : Pemroses Memori Utama Perangkat Masukan dan Keluaran Interkoneksi Antar Komponen

Bab 1. Pengenalan Sistem Terdistribusi

Input : Memasukkan data dari luar kedalam mikroprosesor Contoh: Keyboard, mouse

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

Laporan Tugas Scheduling Pengantar Sistem Operasi

Pengantar Hardware: Sistem Bus pada Komputer. Hanif Fakhrurroja, MT

SISTEM OPERASI TERDISTRIBUSI

MATERI 7 SISTEM OPERASI

Input : Memasukkan data dari luar kedalam mikroprosesor Contoh: Keyboard, mouse

Koordinasi Antar Proses

BAB 2 LANDASAN TEORI

BAB II LANDASAN TEORI

1. Disk Schedulling 2. Buffering

Operating System. I/O System. Fak. Teknik Jurusan Teknik Informatika Universitas Pasundan. Dosen : Caca E. Supriana, S.Si

Penggunakan lebih dari satu CPU untuk menjalankan sebuah program secara simultan. Tujuan Utama Untuk meningkatkan performa komputasi.

TUGAS SISTEM OPERASI

STRUKTUR SISTEM OPERASI

Concurrency 1: y Mutual Exclusion dan Sinkronisasi (Perte rt muan ke muan -10) 10 Oktober 2014

Transkripsi:

LPOHLVSFOTJ! Daftar isi PENGERTIAN KONGKURENSI... 2 PRINSIP-PRINSIP KONGKURENSI... 2 PERMASALAHAN KONGKURENSI... 3 KESULITAN-KESULITAN YANG DITIMBULKAN KONGKURENSI... 5 PENANGANAN KONGKURENSI... 5 INTERAKSI ANTAR PROSES... 6 PERSAINGAN DIANTARA PROSES-PROSES UNTUK SUMBER DAYA... 7 KERJASAMA DIANTARA PROSES-PROSES DENGAN PEMAKAIAN BERSAMA... 7 KERJASAMA DIANTARA PROSES-PROSES DENGAN KOMUNIKASI... 8 By Susiana Sari 1 dari 8

Qfohfsujbo!lpohlvsf!lpohlvsfotj otj! Perkembangan sistem komputer mendatang adalah menuju ke sistem multiprocessing, multiprogramming, terdistribusi 1 dan paralel 2 yang mengharuskan adanya proses-proses yang berjalan bersama dalam waktu yang bersamaan. Hal demikian merupakan masalah yang perlu perhatian dari perancang sistem operasi. Kongkurensi merupakan landasan umum perancangan sistem operasi. Prosesproses disebut kongkurensi jika proses-proses (lebih dari satu proses) berada pada saat yang sama. Proses-proses yang mengalami kongkuren dapat berdiri sendiri (independen) atau dapat saling berinteraksi, sehingga membutuhkan sinkronisasi atau koordinasi proses yang baik. Untuk penanganan kongkuren, bahasa pemograman saat ini telah memiliki mekanisme kongkurensi dimana dalam penerapannya perlu dukungan sistem operasi dimana bahasa berada. Qsjotjq.qsjotjq!lpohlvsfotj qsjotjq!lpohlvsfotj! Kongkurensi merupakan kegiatan yang berhubungan dengan : Alokasi waktu pemroses untuk proses-proses yang aktif. Pemakaian bersama dan persaingan untuk mendapatkan sumber daya. Komunikasi antar proses. Sistem berbagi memori Sistem berbagi memori atau yang disebut juga sebagai Shared Memory System merupakan salah satu cara komunikasi antar proses dengan cara mengalokasikan suatu alamat memori untuk dipakai berkomunikasi antar proses. Alamat dan besar alokasi memori yang digunakan biasanya ditentukan oleh pembuat program. Pada metode ini, sistem akan mengatur proses mana yang akan memakai memori pada waktu tertentu sehingga pekerjaan dapat dilakukan secara efektif. Sistem berkirim pesan Sistem berkirim pesan adalah proses komunikasi antar bagian sistem untuk membagi variabel yang dibutuhkan. Proses ini menyediakan dua operasi yaitu mengirim pesan dan menerima pesan. Ketika dua bagian sistem ingin berkomunikasi satu sama lain, yang harus dilakukan pertama kali adalah membuat sebuah link komunikasi antara keduanya. Setelah itu, kedua bagian itu dapat saling bertukar pesan melalui link komunikasi tersebut. Sistem berkirim pesan sangat penting dalam sistem operasi. Karena dapat diimplementasikan dalam banyak hal seperti pembagian memori, pembagian bus, dan melaksanakan proses yang membutuhkan pengerjaan bersama antara beberapa bagian sistem operasi. Terdapat dua macam cara berkomunikasi, yaitu: 1. Komunikasi langsung. Dalam komunikasi langsung, setiap proses yang ingin berkirim pesan harus mengetahui secara jelas dengan siapa mereka berkirim 1 Sistem terdistribusi adalah sekumpulan prosesor yang tidak saling berbagi memori atau clock dan terhubung melalui jaringan komunikasi yang bervariasi, yaitu melalui Local Area Network ataupun melalui Wide Area Network. 2 Kebutuhan menyelesaikan beberapa instruksi secara parallel dalam waktu yang bersamaan dengan mengurangi masalah ketergantungan data, procedural, unit fungsional, output dan anti ketergantungan yang menyebabkan suatu instruksi terhenti atau harus menunggu instruksi lainnya selesai untuk dapat diproses. Operasi seperti ini hanya bisa dilakukan oleh computer yang memiliki dua atau lebih unit prosesor (CPU) yang terhubung melalui beberapa jaringan koneksitas. By Susiana Sari 2 dari 8

pesan. Hal ini dapat mencegah pesan salah terkirim ke proses yang lain. Karakteristiknya antara lain: a. Link dapat otomatis dibuat b. Sebuah link berhubungan dengan tepat satu proses komunikasi berpasangan c. Diantara pasangan itu terdapat tepat satu link d. Link tersebut biasanya merupakan link komunikasi dua arah 2. Komunikasi tidak langsung. Berbeda dengan komunikasi langsung, jenis komunikasi ini menggunakan sejenis kotak surat atau port yang mempunyai ID unik untuk menerima pesan. Proses dapat berhubungan satu sama lain jika mereka membagi port mereka. Karakteristik komunikasi ini antara lain: a. Link hanya terbentuk jika beberapa proses membagi kotak surat mereka b. Sebuah link dapat terhubung dengan banyak proses c. Setiap pasang proses dapat membagi beberapa link komunikasi d. Link yang ada dapat merupakan link terarah ataupun link yang tidak terarah Sinkronisasi aktivitas banyak proses Qfsnbtbmbi btbmbibo bo!lpohlvsfotj!lpohlvsfotj! Proses yang kongkuren ini mempunyai beberapa masalah yang harus diselesaikan, yaitu : Mutual exclusion (pengeluaran timbal balik) Merupakan kondisi dimana terdapat sumber daya yang tidak dapat dipakai bersama pada waktu yang bersamaan (misalnya : printer, disk drive). Kondisi demikian disebut sumber daya kritis, dan bagian program yang menggunakan sumber daya kritis disebut critical region / section. Hanya satu program pada satu saat yang diijinkan masuk ke critical region. Pemrogram tidak dapat bergantung pada sistem operasi untuk memahami dan memaksakan batasan ini, karena maksud program tidak dapat diketahui oleh sistem operasi. Hanya saja, sistem operasi menyediakan layanan (system call) yang bertujuan untuk mencegah proses lain masuk ke critical section yang sedang digunakan proses tertentu. Pemrograman harus menspesifikasikan bagian-bagian critical section, sehingga sistem operasi akan menjaganya. Pentingnya mutual exclusion adalah jaminan hanya satu proses yang mengakses sumber daya pada suatu interval waktu. Pemaksaan atau pelanggaran mutual exclusion menimbulkan : a. Deadlock b. Starvation Deadlock (buntu) Deadlock merupakan kondisi terparah karena banyak proses dapat terlibat dan semuanya tidak dapat mengakhiri prosesnya secara benar. Ilustasi deadlock, misalnya : Terdapat dua proses, yaitu P1 dan P2 dan dua sumber daya kritis, yaitu R1 dan R2. Proses P1 dan P2 harus mengakses kedua sumber daya tersebut, dengan kondisi ini terjadi : R1 diberikan ke P1, sedangkan R2 diberikan ke P2. By Susiana Sari 3 dari 8

Karena untuk melanjutkan eksekusi memerlukan kedua sumber daya sekaligus maka kedua proses akan saling menunggu sumber daya lain selamanya. Tak ada proses yang dapat melepaskan sumber daya yang telah dipegangnya karena menunggu sumber daya lain yang tak pernah diperolehnya. Kedua proses dalam kondisi deadlock, yang tidak dapat membuat kemajuan apapun dan deadlock merupakan kondisi terparah karena dapat melibatkan banyak proses dan semuanya tidak dapat mengakhiri prosesnya secara benar. Starvation(kelaparan) Starvation adalah keadaan dimana pemberian akses bergantian terus-menerus, dan ada suatu proses yang tidak mendapatkan gilirannya. Ilustasi deadlock, misalnya : Terdapat tiga proses, yaitu P1, P2 dan P3. P1, P2 dan P3 memerlukan pengaksesan sumber daya R secara periodik Skenario berikut terjadi : P1 sedang diberi sumber daya R sedangkan P2 dan P3 diblocked menunggu sumber daya R. Ketika P1 keluar dari critical section, maka P2 dan P3 diijinkan mengakses R. Asumsi P3 diberi hak akses, kemudian setelah selesai, hak akses kembali diberikan ke P1 yang saat itu kembali membutuhkan sumber daya R. Jika pemberian hak akses bergantian terus-menerus antara P1 dan P3, maka P2 tidak pernah memperoleh pengaksesan sumber daya R. Dalam kondisi ini memang tidak terjadi deadlock, hanya saja P2 mengalami starvation (tidak ada kesempatan untuk dilayani). Sinkronisasi. Sinkronisasi adalah proses pengaturan jalannya beberapa proses pada saat yang bersamaan. tujuan utama sinkronisasi adalah menghindari terjadinya inkonsitensi data karena pengaksesan oleh beberapa proses yang berbeda (mutual exclusion) serta untuk mengatur urutan jalannya proses-proses sehingga dapat berjalan dengan lancar dan terhindar dari deadlock dan starvation. Sinkronisasi umumnya dilakukan dengan bantuan perangkat sinkronisasi. Penyelesaian terhadap masalah ini sangat penting karena perkembangan teknologi sistem komputer menuju ke sistem multiprocessing, terdistribusi dan paralel yang mengharuskan adanya proses-proses kongkuren. Masalah kongkurensi dapat terjadi pada: 1. Banyak aplikasi Multiprogramming memungkinkan banyak proses sekaligus dijalankan. Prosesproses dapat berasal dari aplikasi-aplikasi berbeda. Pada sistem multiprogramming bisa terdapat banyak aplikasi sekaligus yang dijalankan di sistem komputer. Contoh: TCP/IP TCP/IP dipecah menjadi banyak aplikasi yang saling bekerjasama,misalnya: Aplikasi pppd daemon Aplikasi diald daemon Aplikasi finger, ping, pine, firefox Aplikasi ifwadm 2. Strukturisasi sebuah aplikasi yang terdiri dari kumpulan proses. Perluasan prinsip perancangan modular dan pemograman terstruktur adalah suatu aplikasi dapat secara efektif diimplementasikan sebagai kumpulan proses. By Susiana Sari 4 dari 8

Dengan sekumpulan proses, maka tiap proses menyediakan satu layanan spesifik tertentu. 3. Strukturisasi sebuah proses. Saat ini untuk peningkatan kinerja maka satu proses dapat memiliki banyak thread yang independen. Thread-thread tersebut harus dapat bekerjasama untuk mencapai tujuan proses. Strukturisasi satu aplikasi dapat dilakukan dengan banyak proses atau banyak thread. Sistem operasi modern telah mendukung banyak thread yang berkinerja lebih bagus dibanding proses dalam kondisi/lingkungan yang lebih terkendali. Contoh : Suatu word processor antara lain mempunyai kemampuan : Menerima masukan dari keyboard Menerima masukan dari mouse atau perangkat penunjuk yang lain (asinkron) Pemisahan kata-kata Memformat baris menjadi rata kanan, kiri atau kanan-kiri. Aplikasi ini dapat diterapkan dengan banyak proses atau thread yang masingmasing mempunyai tugas tertentu. Dengan demikian, saat dilakukan penataan tampilan di layar, aplikasi sekaligus dapat menerima masukan dari mouse yang segera akan diteruskan ke aplikasi untuk mendapat perhatian. 4. Strukturisasi sistem operasi. Keunggulan strukturisasi dapat diterapkan ke pemrograman sistem. Beberapa sistem operasi aktual yang dipasarkan dan yang sedang dalam riset telah diimplementasikan sebagai kumpulan proses. Sistem operasi bermodelkan client/server menggunakan pendekatan ini. Lftvmjubo.lftvmjubo! lftvmjubo!zboh!ejujncvmlbo! zboh!ejujncvmlbo!lpoh lpohlvsfotj lvsfotj! Pemakaian bersama sumber daya global. Apabila terdapat dua proses yang menggunakan variabel global yang sama serta keduanya membaca dan menulis ke variabel itu, maka urutan terjadinya pembacaan dan penulisan terhadap variabel itu menjadi kritis. Pengelolaan alokasi sumber daya agar optimal. Apabila proses A meminta suatu kanal masukan/keluaran tertentu dan dipenuhi, kemudian terjadi proses A di suspend sebelum menggunakan kanal tersebut. Jika sistem operasi mengunci kanal (tidak memperbolehkan atau mencegah proses lain untuk menggunakannya), maka tindakan tersebut menghasilkan inefisiensi. Pencarian kesalahan pemrograman. Pencarian kesalahan pada pemograman kongkuren lebih sulit dibanding pencarian kesalahan pada program-program sekuen. Qfobohbobo!lpohlvsfotj! pohlvsfotj!! Penanganan kongkurensi adalah dengan : Mengetahui proses-proses yang aktif. Sistem operasi mengelola senarai proses di sistem operasi. Senarai ini berupa senarai PCB proses. Senarai berjumlah sesuai jumlah state yang diimplementasikan sistem operasi. Mengatur alokasi dan dealokasi beragam sumber daya untuk tiap proses yang aktif. Sumber daya yang harus dikelola antara lain : Waktu pemroses By Susiana Sari 5 dari 8

Memori Berkas-berkas (file) Peralatan masukan/keluaran Dan sebagainya Proteksi data dan sumber daya fisik proses. Proteksi data dan sumber daya fisik masing-masing proses dari gangguan (interfensi) proses-proses lain. Hasil-hasil proses harus independen. Hasil-hasil proses harus independen terhadap kecepatan relatif proses-proses lain dimana eksekusi dilakukan. Joufsbltj!boubs!qsptft! Pada sistem dengan banyak proses kongkuren, terdapat tiga kategori interaksi, yaitu : Proses-proses saling tidak peduli (independen) Proses-proses ini tidak dimaksudkan untuk bekerja bersama untuk mencapai tujuan tertentu. Pada multiprogramming dengan proses-proses independen, dapat berupa batch atau sesi interaktif, atau campuan keduanya. Meski prosesproses tidak bekerja bersama, sistem operasi perlu mengatur persaingan diantara proses-proses itu dalam memperoleh sumber daya yang terbatas. Contoh : Terdapat dua aplikasi yang berusaha mengakses printer yang sama, bila kedua aplikasi benar-benar mengakses printer yang sama secara bersamaan, maka kedua proses akan memperoleh hasil yang tak dikehendaki. Sistem operasi harus mengatur pengaksesan-pengaksesan sumber daya agar tidak menyebabkan hasil yang tidak dikehendaki. Proses-proses saling mempedulikan secara tidak langsung Dimana proses-proses tidak perlu saling mempedulikan identitas proses-proses lain tapi sama-sama mengakses objek tertentu, seperti buffer masukan/keluaran. Proses-proses itu perlu bekerja sama (cooperation) dalam memakai bersama objek tertentu. Proses-proses saling mempedulikan secara langsung Proses-proses dapat saling berkomunikasi dan dirancang bekerja sama untuk suatu aktivitas. Interaksi antara proses-proses dan masalah-masalah yang harus diatasi dapat dilihat dalam tabel berikut : Derajat kepedulian Proses peduli tak Proses secara tidak langsung peduli terhadap Hubungan Persaingan Kerjasama dgn pemakaian bersamaan Akibat satu proses terhadap lainnya o Hasil satu proses independen terhadap aksi proses lain. o Pewaktuan proses dapat berdampak pada proses lain o Hasil-hasil 1 proses dapat bergantung pd informasi yang Masalah pengendalian yang dilakukan o Mutual exclusion o Deadlock o Starvation o Mutual exclusion o Deadlock o Starvation By Susiana Sari 6 dari 8

proses lain, yaitu obyek yang dipakai bersama Proses secara langsung peduli terhadap proses lain (tersedia primitifprimitif untuk proses tersebut Kerjasama dgn komunikasi diperoleh dari proses lain. o Pewaktuan proses dapat bedampak pada proses lain o Hasil-hasil 1 proses dapat bergantung pd informasi yang diperoleh dari proses lain. o Pewaktuan proses dapat bedampak pada proses lain o Koherensi 3 data o Deadlock o Starvation Tabel 1 : Interaksi antara proses-proses dan permasalahan yang timbul Qfstbjohbo!ejboubsb!qsptft.qsptft!vouvl!tvncfs!ebzb qsptft!vouvl!tvncfs!ebzb! Proses-proses kongkuren berkompetisi ketika proses-proses bersaing menggunakan sumber daya yang sama. Dua proses atau lebih perlu mengakses sumber daya yang sama pada suatu saat. Masing-masing proses tidak peduli keberadaan proses-proses lain dan masing-masing proses tidak dipengaruhi proses-proses lain. Pada proses-proses berkompetisi ini, tidak ada pertukaran informasi antara prosesproses itu. Eksekusi satu proses dapat berpengaruh terhadap kelakuan proses-proses yang berkompetisi. Jika dua proses ingin mengakses satu sumber daya tunggal maka sistem operasi mengalokasikan untuk salah satu proses dan mengharuskan proses lain menunggu. Proses yang ditolak pengaksesan menjadi melambat. Kasus ekstrim yang dapat terjadi adalah proses di-blocked terus-menerus sehingga tak pernah mengakses sumber daya. Proses tak pernah dapat berakhir dengan suskses. Kondisi tidak pernah dapat kesempatan dialokasikan sumber daya disebut starvation. Sistem operasi harus menghindarkan terjadinya kondisi ini. Persaingan proses-proses untuk memperoleh sumber daya menimbulkan tiga masalah : 1. Mutual exclusion 2. Deadlock 3. Starvation Pengendalian persaingan melibatkan sistem operasi, yang bertugas mengalokasikan sumber daya. Proses-proses itu sendiri harus menyatakan keperluan mutual exclusion (diprogram oleh pemrogram menggunakan system call yang disediakan sistem operasi) dan sistem operasi menangani agar tidak terlanggar kondisi mutual exclusion, serta tidak terjadi deadlock dan starvation. Lfskbtbnb!ejboubsb!qsptft.qsptft!efohbo!qfnblbjbo! qsptft!efohbo!qfnblbjbo! cfstbnb! Dalam kasus kerjasama pemakaian sumber daya bersama meliputi proses-proses yang saling berinteraksi tanpa dinyatakan secara eksplisit. Contoh : Banyak proses mengakses variabel atau berkas yang dipakai bersama. Proses-proses dapat 3 pengulangan By Susiana Sari 7 dari 8

menggunakan dan memperbarui data yang dipakai bersama tanpa peduli proses-proses lain. Proses mengetahui bahwa proses-proses lain dapat juga mengakses data yang sama. Proses-proes harus bekerja sama untuk menjamin integritas data yang dipakai bersama tersebut. Kerjasama diantara proses-proses dalam pemakaian bersama mempunyai masalah : Mutual exclusion Deadlock Starvation Karena data disimpan pada suatu sumber daya (peralatan, memori), maka terdapat masalah pengendalian mutual exclusion, deadlock dan starvation. Perbedaannya adalah item-item data dapat diakses dengan dua mode, yaitu : 1. Operasi pembacaan dan penulisan harus mutually exclusive (yaitu benar-benar hanya satu proses yang berada di critical section). 2. Operasi penulisan saja yang harus mutually exclusive. Pada situasi ini, masalah baru muncul yaitu mengenai koherensi data. Critical section digunakan untuk menjamin integritas data. Lfskbtbnb!ejboubsb!qsptft.qsptft!efohbo!lpnvojlbtj qsptft!efohbo!lpnvojlbtj! Pada kasus persaingan, proses-proses memakai sumber daya tanpa peduli prosesproses lain. Pada kasus kedua, proses-proses memakai bersama nilai dan meski masingmasing proses tidak secara eksplisit peduli proses-proses lain. Tapi proses-proses peduli untuk menjaga integritas data. Ketiak proses-proses bekerja sama dengan komunikasi, beragam proses berpartisipasi dalam suatu usaha dengan menghubungkan semua proses. Komunikasi menyediakan cara untuk sinkronisasi atau koordinasi beragam aktivitas. Komunikasi dicirikan dengan berisi pesan-pesan dengan suatu urutan. Primitif untuk mengirim dan menerima pesan disediakan sebagai bagian bahasa pemrograman atau disediakan kernel sistem operasi. Karena tak ada sesuatu yang dipakai bersama diantara proses-proses itu dalam melewatkan pesan-pesan, tak ada masalah mutual exclusion. Tetapi masalah deadlock dan starvation dapat muncul. Sumber: http://www.total.or.id/info.php?kk=kongkurensi http://kuliah.dinus.ac.id/ika/so5.html http://bebas.vlsm.org/v06/kuliah/sistemoperasi/buku/sistemoperasi-4.x-2/ch23.html ardi.tif.uad.ac.id/so/so-slide6.ppt By Susiana Sari 8 dari 8