Ringkasan dari dokumen tersebut adalah:
1. Dokumen tersebut membahas tentang deadlock pada sistem operasi dan cara-cara mengatasinya.
2. Ada empat kondisi untuk terjadinya deadlock yaitu mutual exclusion, hold and wait, no preemption, dan circular wait.
3. Cara mengatasi deadlock meliputi mengabaikan masalahnya, mendeteksi dan memperbaikinya, serta melewati preemption atau membunuh proses penyebabnya.
1. TUGAS MODUL BAB IV SISTEM OPERASI
DisusunOleh :
MUKHAMMAD YAJID ALBUSTOMI
D1 TI-B / 20
DosenPembimbing :
DeddyKusbianto
D1 TEKNOLOGI INFORMASI
POLITEKNIK NEGERI MALANG
2. TUGAS PENDAHULUAN
1. Jelaskanapa yang dimaksuddengan deadlock
Deadlockadalahsuatukondisi
permanent
dimana
tidakberjalanlagiataupuntidakadakomunikasilagiantar
alamartisebenarnyaadalahkebuntuan.
proses
proses.
Kebuntuan
yang
dimaksuddalamsistemoperasiadalahkebuntuan
proses.
JadiDeadlockbisadisebabkankarena proses yang satumenunggusumberdaya
yang sedangdipegangoleh proses lain yang sedangmenunggusumberdaya
yang dipegangoleh proses tersebut. Dengan kata lainsetiap proses dalam set
menungguuntuksumber yang hanyadapatdikerjakanoleh proses lain dalam set
yang sedangmenunggu.
2. Sebutkan empat kondisi untuk terjadinya deadlock
Empatkondisi
yang
dapatmenyebabkanterjadinya
deadlock.
Keempatkondisitersebuttidakdapatberdirisendiri, salingmendukung.
Mutual
Eksklusif:
bolehmemakaisumberdaya,
hanyaadasatu
dan
proses
proses
lain
yang
yang
inginmemakaisumberdayatersebutharusmenungguhinggasumberdayatadi
dilepaskanatautidakada proses yang memakaisumberdayatersebut.
Memegangdanmenunggu:
proses
yang
sedangmemakaisumberdayabolehmemintasumberdayalagimaksudnyame
nungguhinggabenar-benarsumberdaya
yang
dimintatidakdipakaioleh
proses
lain,
halinidapatmenyebabkankelaparansumberdayasebabdapatsajasebuah
proses tidakmendapatsumberdayadalamwaktu yang lama.
Tidak ada Preemption: sumber daya yang ada pada sebuah proses tidak
boleh diambil begitu saja oleh proses lainnya. Untuk mendapatkan
sumber daya tersebut, maka harus dilepaskan terlebih dahulu oleh proses
yang
memegangnya,
selain
itu
seluruh
proses
menunggu
dan
3. mempersilahkan hanya proses yang memiliki sumber daya yang boleh
berjalan.
Circular Wait: kondisi seperti rantai, yaitu sebuah proses membutuhkan
sumber daya yang dipegang proses berikutnya.
3. Sebutkan cara-cara untuk mengatasi deadlock, dan jelaskan masingmasing dari cara tersebut
MengabaikanMasalahDeadlock
Untukmemastikansistemtidakmemasuki
sistemdapatmenggunakanpencegahan
deadlock.
deadlock,
deadlock
ataupenghindaran
Penghindaran
deadlock
membutuhkaninformasitentangsumberdaya yang mana yang akansuatu
proses
memintadanberapa
lama
akandigunakan.
Denganinformasitersebutdapatdiputuskanapakahsuatu
proses
harusmenungguatautidak. Hal inidisebabkanolehkeberadaansumberdaya,
apakahiasedangdigunakanoleh
proses
lain
MetodeinilebihdikenaldenganAlgoritma
atautidak.
Ostrich.
DalamalgoritmainidikatakanbahwauntukmenghadapiDeadlockialahdengan
berpura-purabahwatidakadamasalahapa
akanmelakukansuatuhal
pun.
Hal
iniseakan-
yang
fatal,
tetapisistemoperasiUnixmenanggulangiDeadlockdengancarainidengantida
kmendeteksiDeadlockdanmembiarkannyasecaraotomatismematikan
program
sehinggaseakan-akantidakterjadiapa
pun.
JadijikaterjadiDeadlock, makatabelakanpenuh, sehingga proses yang
menjalankan
proses
melalui
operator
harusmenunggupadawaktutertantudanmencobalagi.
MendeteksidanMemperbaiki
CaranyaialahdengancaramendeteksijikaterjadiDeadlockpadasuatu proses
makadideteksisistemmana yang terlibat di dalamnya. Setelah diketahui
sistem mana saja yang terlibat maka diadakan proses untuk memperbaiki
4. dan
menjadikan
sistem
Jikasebuahsistemtidakmemastikan
berjalan
kembali.
deadlock
akanterjadi,
danjugatidakdidukungdenganpendeteksian
deadlock
sertapencegahannya, makakitaakansampaipadakondisi deadlock yang
dapatberpengaruhterhadap
performance
sistemkarenasumberdayatidakdapatdigunakanoleh
proses-proses
yang
proses
lain
Akhirnyasistemakanberhentidanharusdirestart.
sehingga
jugaterganggu.
Hal-hal
yang
terjadidalammendeteksiadanyaDeadlockadalah:
Permintaansumberdayadikabulkanselamamemungkinkan.
Sistemoperasimemeriksaadakahkondisicircular waitsecaraperiodik.
PemeriksaanadanyaDeadlockdapatdilakukansetiapadasumberdaya
yang hendakdigunakanolehsebuah proses.
Memeriksadenganalgoritmatertentu.
Ada beberapajalanuntukkembalidariDeadlock:
LewatPreemption
Dengancarauntuksementarawaktumenjauhkansumberdayadaripemak
ainya,
danmemberikannyapada
untukmemberipada
proses
yang
lain.
proses
Ide
lain
tanpadiketahuiolehpemilikdarisumberdayatersebuttergantungdarisifats
umberdayaitusendiri.
Perbaikandengancarainisangatsulitataudapatdikatakantidakmungkin.
Cara
inidapatdilakukandenganmemilihkorban
yang
akandikorbankanataudiambilsumberdayanyautuksementara,
tentusajaharusdenganperhitungan yang cukup agar waktu yang
dikorbankanseminimalmungkin.
Setelahkitamelakukan
preemption
dilakukanpengkondisian proses tersebutdalamkondisiaman. Setelah
itu proses dilakukan lagi dalam kondisi aman tersebut.
5. Lewat Melacak Kembali
Setelah melakukan beberapa langkah preemption, maka proses
utama yang diambil sumber dayanya akan berhenti dan tidak dapat
melanjutkan kegiatannya, oleh karena itu dibutuhkan langkah untuk
kembali pada keadaan aman dimana proses masih berjalan dan
memulai proses lagi dari situ.
Tetapiuntukbeberapakeadaansangatsulitmenentukankondisiamanters
ebut,
olehkarenaituumumnyadilakukancaramematikan
program
tersebutlalumemulaikembali proses.
Meskipunsebenarnyalebihefektifjikahanyamundurbeberapalangkahsaj
asampaiDeadlocktidakterjadilagi.
Untukbeberapasistemmencobadengancaramengadakanpengecekanb
eberapa kali secaraperiodikdanmenandaitempatterakhir kali menuliske
disk,
sehinggasaatterjadiDeadlockdapatmulaidaritempatterakhirpenandaan
nyaberada.
Lewatmembunuh proses yang menyebabkanDeadlock
Cara
yang
paling
umumialahmembunuhsemua
mengalamiDeadlock.
Cara
proses
ini
yang
paling
umumdilakukandandilakukanolehhampirsemuasistemoperasi.Namun,
untukbeberapasistem,
kitajugadapatmembunuhbeberapa
proses
sajadalamsiklusDeadlockuntukmenghindariDeadlockdanmempersilahk
an
proses
lainnyakembaliberjalan.
Ataudipilihsalahsatukorbanuntukmelepaskansumberdayanya,
dengancarainimakamasalahpemilihankorbanmenjadilebihselektif,
sebabtelahdiperhitungkanbeberapakemungkinanjikasi
harusmelepaskansumberdayanya. Kriteriaseleksikorbanialah:
Yang paling jarangmemakaiprosesor
Yang paling sedikithasilprogramnya
proses
6. Yang paling banyakmemakaisumberdayasampaisaatini
Yang alokasi sumber daya totalnya tersedkit
Yang memilikiprioritasterkecil
TUGAS PRAKTIKUM
Deadlock adalahsuatukondisidimanadua proses ataulebihsalingmenunggu proses
untukmelepaskanseumberdayaatau resources yang sedangdipakai. Mudahnya, ada
proses
A
yang
membutuhkansuatu
resources,
tetapi
resources
tersebutsedangdipakaioleh proses lain.
Deadlock terjadikarenasebuah proses membutuhkan resources tertentu, tetapi
resources
tersebutsedangdigunakanoleh
tersebuttidakakanmelepaskan
process
resources
dilakukannyabelumselesai
Tampilan Windows Task Manager :
Applications
Bukaberbagaimacamaplikasisecarabersamaan ,
lain.
selama
Padahal
proses
proses
lain
yang
8. Performance
Apabilaterusmenerusdijalankan ,pasti computer akansedikitlambatsehingga bias
menyebabkan HANG. Karena computer
tidaksanggupmemprosesberbagaimacamaplikasidan system secarabersamaan
(Physical Memory dan CPU usage meningkat)
Apabilakitaterusmembukaaplikasibahkanmembukaaplikasi lain maka computer akan
down bahkan bias sampai BSOD (Blue Screen of Death).
9. DEADLOCK PADA LINUX
Beberapakasus deadlock jugaterjadiketika OS Linux dijalankandarikondisi sleep,
proses yang mengakses USB device akanmengalami deadlock
Hal inidisebabkanfungsi scheduler pada kernel yang digunakantidakmenyimpan
state sebelum sleep, sehinggaketika kernel dijalankankembali, Proses-proses
yang mengakses USB device tersebutmenunggugiliranmengakses, sementara
scheduler belummenjadwalkanmasing-masing proses.
Kasusinijugaterjadipada Serial device
1. Buka 2 terminal (ctrl+alt+t).
2. Pada terminal pertamamasukkanperintahsudo apt-get install vlc (masukkan
password root bila di butuhkan)
10. 3. pada terminal kedua, masukanperintah“sudo apt-get install xosview”
(masukan password root bila di butuhkan)
4. lalupada terminal pertamatekan enter
5. kemudiantekan enter padapada terminal 2.
6. Yang terjadiadalahpadasaat terminal 1 melakukan proses penginstallan,
terminal 2 akanmenunggu , Tidakbisa berbarengan.
7. Ini yang disebutdengan deadlock / kernel panic padalinux.
11. Kesimpulan
Deadlock adalahsituasidimana 1 ataulebih proses
tidakakanpernahselesaitanpaadanya recovery
Empatkondisipentinguntuk deadlock : mutual exclusion, hold and wait, circular
wait, and no preemption
Deadlock bisadiatasiolehberbagaistrategi : prevention, avoidance, detection and
recovery