Konkurensi
description
Transcript of Konkurensi
-
Sistem Operasi
Kongkurensi
Konkurensimerupakanlandasanumumperancangansystemoperasi.Prosesprosesdisebutkonkurenjiaprosesprosesituberadapadasaatyangsama.Prosesproseskonkurendapatsepenuhnyatakbergantungdenganyanglaintapidapatjugasalingberinteraksi.Prosesprosesyangberinteraksimemerlukansinkronisasiagarterkendalidenganbaik.
Prosesprosesyangberinteraksimempunyaibeberapamasalahyangharusdiselesaikan,yaitu:
# MutualExclusion# Deadlock# StarVation# Sinkronisasi
Prinsipprinsipkonkurensimeliputi:# Alokasiwaktuprocessoruntukprosesproses# Pemakaianbersamadanpersainganuntukmendapatkansumberdaya# Komunikasiantarproses# Sinkronisasiaktivitasbanyakproses.
KesulitankesulitanyangditimbulkankonkurensiMasalahmasalahyangdihadapiprosesproseskonkurenpadamultiprogrammingdanmultiprocessingserupa,yaitu:kecepataneksekusiprosesprosesdisystemtidakdapatdiprediksi.
Kecepatanprosespadasystemantaralain:# Aktivitasaktivitasproseslain# Carasystemoperasimenanganiinterupsi# Kebijakanpenjadwalanyangdilakukansystemoperasi
Beberapakesulitanyangmunkinmuncul:# Pemakaianbersamasumberdayaglobal
Ketikaduaprosesmenggunakanvariableglobalyangsama,sertakeduanyamembacadanmenulisvariableitumakaurutanterjadinyapembacaandanpenulisanterhadapvariableitumenjadikritis.
# PengelolaanalokasisumberdayaagaroptimalJikaprosesAmemintasuatukanalInput/Outputtertentu,dandapatterjadikemudianprosesAdisuspendsebelummenggunakankanalitu.Jikasystemoperasimenguncikanaldanmencegahprosesproseslainmenggunakankanalitusertakeduanya,makatindakaninihanyamenghasilkaninefisiensi
Konkurensi #5 #1
-
Sistem Operasi
# PencariankesalahanpemrogramanPencariankesalahanpadapemrogramankonkurensilebihsulitdibandingkanpencariankesalahanpadaprogramprogramsekuen.
MutualExclusion
MutualExclusionadalahjaminanhanyasatuprosesyangmengaksessumberdayapadasatuintervaltertentu.
Terdapatsumberdayayangtakdapatdipakaibersamapadasaatbersamaan(mis.printer).Sumberdayainidisebutdengansumberdayakritis.Bagianprogramyangmenggunakansumberdayakritisdisebutmemasukicriticalregion/station.Hanyasatuprogrampadasatusaatyangdiijinkanmasukcriticalregion.Programmertidakdapatbergantungpadasystemoperasiuntukmemehamidanmemaksabatasaninikarenamaksudprogramtidakdapatdiketahui.
Sistemhanyamenyediakanlayanan(systemcall)untukmencegahprosesmasukcriticalregionyangsedangdimasukiproseslain.Programmerharusmenspesifikasibagianbagiancriticalregionsehinggasystemoperasiakanmenjaganyadengansuatumekanismeuntukmencegahproseslainmasukcriticalregionyangsedangdipakaiproseslain.
Pemaksaaanadanyamutualexclusionmenimbulkandeadlockdanstartvation
Kriteriapenyelesaianmutualexclusion:1. Mutualexclusionharusdijamin,hanyasatuprosespadasaatyang
diijinkanmasukkecriticalsection.2. Prosesyangberadadinoncriticalsection,dilarangmemblockedproses
lainyanginginmasukcriticalsection.3. Harusdijaminprosesyanginginmasukcriticalsectiontidakmenunggu
selamawaktuyangtakberhinga.4. Ketikatidakadaprosespadacriticalsectionmakaprosesyangingin
masukcriticalsectionharusdiijinkanmasuktanpatertunda.5. Tidakadaasumsimengenaikecepatanrelativeprosesataujumlah
prosesyangada.
Starvation
Prosesdikatakanmengalamistarvationjikaprosesprosesitumenunggualokasisumberdayasampaitakberhingga,sementaraprosesproseslaindapatmemperolehalokasisumberdaya.
Konkurensi #5 #2
-
Sistem Operasi
Ilustrasi:Misalterdapat3(tiga)prosesP1,P2danP3.P1,P2danP3.memerlukanaksessumberdayaRsecaraperiodik.Selanjutnya:
P1sedangdiberisumberdayaR,P2danP3blockedmenunggusumbersumberdayaR.KetikaP1keluardaricriticalregion,P2danP3diijinkanmengaksesR.AsumsiP3diberihakakses.Kemudiansetelahselesai,hakakseskembalidiberikankeP1yangsaatitumembutuhkansumberdayaR.
JikapemberianhakaksesbergantianterusmenerusantaraP1danP3,makaP2tidakpernahmemperolehaksessumberdayaR,meskitidakadadeadlock.PadasituasiiniP2disebutmengalamistartvation.
Deadlock
Prosesdisebutdeadlockjikaprosemenunggusuatukejadianyangtakpernahterjadi.Sekumpulanprosesberkondisideadlockbilasetiapprosesyangadamenunggusuatukejadianyanghanyadapatdilakukanproseslainyangjugaberadadikumpulantersebut.
Ilustrasi: TerdapatduaprosesP1danP2 DuasumberkritisR1danR2 ProsesP1danP2harusmengakseskeduasumberdayaitu(R1dan
R2). R1diberikanpadaP1sedangR2diberikanpadaP2. Karenauntukmelanjutkaneksekusimemerlukanduasumberdaya
sekaligusmakaprosesakansalingmenunggusumberdayalainselamanya.
Syaratterjadinyadeadlock: Mutualexclusion
Tiapsumberdayasaatdiberikanpadasatuproses. HoldandwaitCondition
Prosesprosesyangsedangmenggenggamsumberdaya,menunggusumberdayasumberdayabaru
NonPreemptionConditionSumberdayasumberdayayangsebelumnyaduberikantidakdapatdiambilpaksadariprosesitu.Sumberdayasumberdayaharussecaraeksplisitdilepaskandariprosesyangmenggenggamnya.
Konkurensi #5 #3
-
Sistem Operasi
CirculairWaitConditionHarusterdapatrantaisirkulerdariduaprosesataulebih,masingmasingmenunggusumberdayayangdigenggamolehberikutnyapadarantaiitu.
MetodeMengaasideadlock: Pencegahanterjadinyadeadlock Pengindaranterjadinyadeadlock Deteksidanpemulihandeadlock
InteraksiantaraProses
Padasystemdenganbanyakproses(konkuren),terdapat3kategoriinteraksi,yaitu:
1. Prosesprosestidaksalingpeduli(independent)Prosesprosestidakdimaksudkanuntukbekerjabersamauntukmencapaitujuantertentu.
2. ProsesprosessalingmempedulikansecaratidaklangsungProsesprosestidakperlusalingmempedulikanidentitasprosesproseslaintapisamasamamengaksesobjektertentu(sepertibufferInput/Output).Prosesprosesituperlubekerjasamadalammemakaibersamaobjektertentu.
3. ProsesprosessalingmempedulikansecarlangsungProsesprosesdapatsalingbekomunikasidandirancangbekerjasamauntuksuatuaktivitas.
Interaksiantaraprosesprosesdanmasalahmasalahyangharusdiatasi
DerajatKepedulian
Hubungan Akibatsatuprosesterhadaplainya
Masalahpengendalianyangperludilakukan
Prosestakperduli
Persaingan Hasilsatuprosesindependentterhadapaksiproseslain.
Pewaktuanprosesdapatberdampak
Mutualexclusion Deadlock Starvasion
Konkurensi #5 #4
-
Sistem Operasi
Prosessecarataklangsungpeduliterhadapproseslain
Kerjasamadenganpemakaianbersama
Hasilhasilsatuprosesdapatbergantunginformasiyangdiperolehdariproseslain
Pewaktuanprosesdapatberdampak
Mutualexclusion Deadlock Starvasion Koherensidata
Prosessecaralangsungpeduliterhadapproseslain
Kerjasamadengankomunikasi
Hasilhasilsuatuprosesdapatbergantungpadainformasiyangdiperolehdariproseslain
Pewaktuanprosesdapatberdampak
Deadlock Starvasion
Persainganantaraprosesprosesuntuksumberdaya
Prosesprosesberkompetisiketikaprosesprosesbersaingmenggunakansumberdayayangsama.Masingmasingprosestakperdulikeberadaanposesproseslaindantidakdipengaruhiolehprosesproseslain.
Padasaatberkompetisitersebut,tidakterjadipertukaraninformasiantarprosesprosesitu.Eksekusisatuprosesdapatberpengaruhterhadapkelakuanprosesproesesyangberkompetisi.Jikaduaprosesakanmengaksessatusumberdayatunggal,makasystemoperasiakanmengalokasiuntuksatuprosesdanproseslainmenunggu(diblocked),prosesyangditolakaksesnyamenjadilambat.
Masalahmasalahyangditimbulkandaripersainganini:MutualExclusion,Deadlock,danStarvation.
Kerjasamadiantaraprosesprosesdenganpemakaianbersama
Dalamkasuskerjasamapemakaiansumberdayabersamaanmeliputiprosesprosesyangsalingberinteraksitanpadinyatakaneksplisit.Masalahyangada:MutualExclusion,Deadlock,danStarvation.
Konkurensi #5 #5