View
221
Download
0
Embed Size (px)
Citation preview
8/17/2019 Sistem Operasi_sinkronisasi Proses
1/21
S I N K R O N I S A S I P R O S E SSEPT IAN CAHYADI
8/17/2019 Sistem Operasi_sinkronisasi Proses
2/21
Proses-proses yang konkuren adalahproses-proses (le!h dar! sa"u# eradapada saa" yang sa$a% Proses-proses !n!
dapa" sepenuhnya "ak ergan"ungdengan yang la!nnya& "ap! dapa" 'ugasal!ng er!n"eraks!%
ATAR ) E AKAN*
Proses-proses yang er!n"eraks!$e$erlukan s!nkron!sas! agar"erkendal! dengan a!k%
8/17/2019 Sistem Operasi_sinkronisasi Proses
3/21
+ASA AH PADA +ODE SHARED+E+ORY
,% Proses-proses yang $elakukan akses searakonkuren pada da"a yang d!gunakan ersa$a-
sa$a $enyeakan da"a "!dak kons!s"en(!nons!s"ene#
.% Pada $odel shared $e$ory un"ukpenyelesa!an per$asalahan ounded-u/erpal!ng anyak $eny!$pan n 0 , !"e$ padau/er pada saa" yang ersa$aan%
8/17/2019 Sistem Operasi_sinkronisasi Proses
4/21
SO1S I +ASA AH TERSE)1T
+od!2kas! kode produer- onsu$er dengan$ena$ahkan 3ar!ael counter yang d!!n!s!al!sas! 4dan d!na!kkan se"!ap sa"u !"e$ aru d!"a$ahkan
ke u/er%
8/17/2019 Sistem Operasi_sinkronisasi Proses
5/21
A*OR IT+A )O1NDED-)155ER
6de2ne )155ER7SI8E ,4
"ypede9 s"ru" :
%%% ; !"e$<
!"e$ u/er=)155ER7SI8E>< !n" !n ? 4<
!n" ou" ? 4<int counter = 0;
8/17/2019 Sistem Operasi_sinkronisasi Proses
6/21
Proses pada producer akan $ena$ahkan sa"u n!la!3ar!ael counter seaga! er!ku" @
!"e$ ne"Produed<
Bh!le (,# :
Bh!le (oun"er ?? )155ER7SI8E#
< do no"h!ng u/er=!n> ? ne"Produed< !n ? (!n ,#
F )155ER7SI8E< counter++;
;
8/17/2019 Sistem Operasi_sinkronisasi Proses
7/21
Seal!knya 'uga proses pada consumer akan $enurunkan sa"u
n!la! 3ar!ael counter seaga! er!ku" @
!"e$ ne"Consu$ed<
Bh!le (,# :
Bh!le (oun"er ?? 4#
< do no"h!ng
ne"Consu$ed ? u/er=ou">< ou" ? (ou" ,# F )155ER7SI8E<counter--;
;
8/17/2019 Sistem Operasi_sinkronisasi Proses
8/21
Pernya"aan oun"er akan d!!$ple$en"as!kandala$ ahasa $es!n seaga! er!ku" @
reg!s"er, ? oun"er
reg!s"er, ? reg!s"er, ,
oun"er ? reg!s"er,
PER NYATA AN CO1 NTE R
8/17/2019 Sistem Operasi_sinkronisasi Proses
9/21
Sedangkan pernya"aan oun"er-- akand!!$ple$en"as!kan dala$ ahasa $es!n seaga!er!ku" @
reg!s"er, ? oun"er
reg!s"er, ? reg!s"er, ,
oun"er ? reg!s"er,
8/17/2019 Sistem Operasi_sinkronisasi Proses
10/21
Pernya"aan yang d!'alankan adalah @•
produer@ reg!s"er, ? oun"er (reg!s"er, ? G#• produer@ reg!s"er, ? reg!s"er, ,
(reg!s"er, ? #• onsu$er@ reg!s"er. ? oun"er (reg!s"er. ?
G#• onsu$er@ reg!s"er. ? reg!s"er. 0 ,
(reg!s"er. ? #•
produer@ oun"er ? reg!s"er, (oun"er ? #• onsu$er@ oun"er ? reg!s"er. (oun"er ? #
8/17/2019 Sistem Operasi_sinkronisasi Proses
11/21
S!"uas! d!$ana eerapa proses$engakses dan $e$an!pulas! da"a yang
d!gunakan ersa$a-sa$a searakonkuren d!seu" dengan race condition%
8/17/2019 Sistem Operasi_sinkronisasi Proses
12/21
CR IT ICA SECT ION PRO)E+
Sua"u sys"e$ "erd!r! dar! n proses d!$ana
se$uanya erko$pe"!s! $enggunakan da"ayang d!gunakan ersa$a-sa$a% +as!ng-$as!ng proses $e$punya! seuah kode
seg$en yang d!seu" dengan critical section
8/17/2019 Sistem Operasi_sinkronisasi Proses
13/21
*a$aran pen"!ng dar! s!s"e$ adalah& ke"!ka
seuah proses d!'alankan d! dala$ critical section&"!dak ada proses la!n yang d!!'!nkan un"uk
$en'alankan critical section-nya%
Daerah kode yang $eng!$ple$en"as!kan per!n"ah!n! d!seu" daerah entry%
Critical section !asanya d!!ku"! oleh daerah exit %
Kode peng!nga" "erle"ak d! daerah remainder %
8/17/2019 Sistem Operasi_sinkronisasi Proses
14/21
J SYARAT SO 1S I CR I T IC ASECT ION
,% +u"ual Elus!on
• Apa!la proses Pi $en'alankan critical section-nya& $aka "!dak ada proses la!n yang dapa"$en'alankan critical section%
8/17/2019 Sistem Operasi_sinkronisasi Proses
15/21
.% Progress
• Apa!la "!dak ada proses yang $en'alankancritical section-nya dan "erdapa" eerapaproses yang akan $e$asuk! critical section-nya&$aka hanya proses-proses !"u yang "!dakd!proses d! dala$ daerah peng!nga" (remainder #dapa" !ku" erpar"!s!pas! d! dala$ kepu"usan
proses $ana yang akan $e$asuk! criticalsection selan'u"nya& dan pe$!l!han !n! "!dakdapa" d!"unda "!a-"!a%
J SYARAT SO 1S I CR I T IC ASECT ION
8/17/2019 Sistem Operasi_sinkronisasi Proses
16/21
J SYARAT SO 1S I CR I T IC ASECT ION
J% )ounded a!"!ng
• Terdapa" a"asan 'u$lah Bak"u yang d!!'!nkanoleh proses la!n un"uk $e$asuk! critical sectionse"elah seuah proses $e$ua" per$!n"aanun"uk $e$asuk! critical section-nya dan seelu$
per$!n"aan d!kaulkan%
8/17/2019 Sistem Operasi_sinkronisasi Proses
17/21
STR1KT1R 1+1+ PR OSES P I
8/17/2019 Sistem Operasi_sinkronisasi Proses
18/21
A*OR IT+A ,
8/17/2019 Sistem Operasi_sinkronisasi Proses
19/21
A*OR IT+A .
8/17/2019 Sistem Operasi_sinkronisasi Proses
20/21
A*OR IT+A J
8/17/2019 Sistem Operasi_sinkronisasi Proses
21/21
A*ORIT+A )AKERY