1 / 25

Kelompok 5

Sistem Operasi Kelas F Teknik Informatika. “ Sinkronisasi Proses ”. Kelompok 5. Ardhy Widhiantoro 09650194. Aang Khunaefi 09650216. Delliana Eka W 09650127. Definisi Sinkronisasi. Sinkronisasi adalah proses pengaturan jalannya beberapa proses pada saat yang bersamaan .

leann
Télécharger la présentation

Kelompok 5

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. SistemOperasi Kelas F TeknikInformatika “Sinkronisasi Proses” Kelompok 5 ArdhyWidhiantoro 09650194 AangKhunaefi 09650216 DellianaEka W 09650127

  2. DefinisiSinkronisasi • Sinkronisasiadalahprosespengaturanjalannyabeberapaprosespadasaat yang bersamaan. • Tujuanutamasinkronisasiadalahmenghindariterjadinyainkonsistensi data karenapengaksesanolehbeberapaproses yang berbeda (mutual exclusion) sertauntukmengatururutanjalannyaproses-prosessehinggadapatberjalandenganlancardanterhindardarideadlock atau starvation. http://afies.web.ugm.ac.id/treasurers/wp-content/uploads/2007/12/SistemOperasi-4.X-1.pdf

  3. Critical Section Critical section adalahsegmenkode yang mengakses data yang digunakanprosessecarabersama-sama yang dapatmembawaprosesitukebahaya race condition Race condition adalahsuatukondisidimanaduaataulebihprosesmengakses shared memory/sumberdayapadasaat yang bersamaandanhasilakhirdari data tersebuttergantungdariprosesmana yang terakhirselesaidieksekusisehinggahasilakhirnyaterkadangtidaksesuaidengan yang dikehendaki. http://afies.web.ugm.ac.id/treasurers/wp-content/uploads/2007/12/SistemOperasi-4.X-1.pdf

  4. Solusi Critical Section 3 syarat • Mutual Exclusion • Progress • Bounded Waiting Solusi • SolusiPerangkatLunak • SolusiPerangkatKeras • http://afies.web.ugm.ac.id/treasurers/wp-content/uploads/2007/12/SistemOperasi-4.X-1.pdf • http://lecturer.eepis-its.edu/~arna/Diktat_SO/5.Sinkronisasi%20Proses.pdf

  5. SolusiPerangkatLunak 4 MacamAlgoritma : Algoritma I -Dekker Algoritma II Algoritma III-Peterson AlgoritmaTukangRoti

  6. SolusiPerangkatLunak Algoritma I -Dekker Algoritma I mencobamengatasimasalah critical section untukduaproses. Algoritmainimenerapkansistembergilirkepadakeduaproses yang inginmengeksekusi critical section, sehinggakeduaprosestersebutharusbergantianmenggunakan critical section. Bentuk : int turn = 0 atauint turn = 1 • http://afies.web.ugm.ac.id/treasurers/wp-content/uploads/2007/12/SistemOperasi-4.X-1.pdf • Stallings, william . 2005 . SistemOperasiEdisiKeempat . Jakarta : Indeks, Gramedia

  7. SolusiPerangkatLunak

  8. SolusiPerangkatLunak Algoritma II jugamencobamemecahkanmasalah critical section untukduaproses. Algoritmainimengantisipasimasalah yang munculpadaalgoritma I denganmengubahpenggunaanvariabel turn denganvariabel flag. Variabel flag menyimpankondisiprosesmana yang bolehmasuk critical section. Proses yang membutuhkanakseske critical section akanmemberikannilai flag-nya true. Sedangkanproses yang tidakmembutuhkan critical section akan men-set nilaiflagnyabernilai false. Algoritma II http://afies.web.ugm.ac.id/treasurers/wp-content/uploads/2007/12/SistemOperasi-4.X-1.pdf

  9. SolusiPerangkatLunak

  10. SolusiPerangkatLunak Algoritma III ditemukanoleh G.L. Pettersonpadatahun 1981. Algoritmainiadalahsolusiuntukmemecahkanmasalah critical section padaduaproses. Idedarialgoritmainiadalahmenggabungkanvariabel yang di-sharing padaAlgoritma I danAlgoritma II, yaituvariabel turn danvariabel flag. SamasepertipadaAlgoritma I dan II, variabel turn menunjukkangiliranprosesmana yang diperbolehkanmemasuki critical section, danvariabel flag menunjukkanapakahsuatuprosesmembutuhkanakseske critical section atautidak. Algoritma III-Peterson http://afies.web.ugm.ac.id/treasurers/wp-content/uploads/2007/12/SistemOperasi-4.X-1.pdf

  11. SolusiPerangkatLunak

  12. SolusiPerangkatLunak Algoritmauntuksolusiprosesinidinamakanalgoritma bakery (tukangroti) / Lamport's Baker Algorithm danberdasarkanalgoritmapenjadwalanyang biasadigunakanolehtukangroti, eskrim, registrasisepeda motor dansebagainya. Para pelanggan yang inginmembelirotisebelumnyaharusmengambilnomorurutterlebihdahuludanurutanorang yang bolehmembeliditentukanolehnomorurut yang dimilikimasing-masingpelanggantersebut. AlgoritmaTukangRoti • http://afies.web.ugm.ac.id/treasurers/wp-content/uploads/2007/12/SistemOperasi-4.X-1.pdf • http://imam_muiz.staff.gunadarma.ac.id/Downloads/files/11368/SISTEM+OPERASI-5.pdf

  13. SolusiPerangkatLunak

  14. PerangkatSinkronisasi Test and Set : instruksiatomik Semaphore : variabelyang hanyadapatdiaksesolehduabuahoperasistandar Monitor : menanganimasalahyang munculkarenapemakaiansemafor Java Monitor : implementasidari monitor Readers / Writers

  15. PerangkatSinkronisasi Test and Set Sebagianbesarsistemkomputersaatinimenyediakaninstruksiinstruksiperangkatkeraskhusus yang mengizinkankitauntukmengujidanmemodifikasinilaidarisebuahvariabel. InstruksiinidisebutinstruksiTestAndSet(). Instruksiinibersifatatomik, yaituinstruksi yang tidakdapatdiinterupsi. Kita dapatmenggunakaninstruksikhususiniuntukmemecahkanmasalahcritical section yang sederhana. http://afies.web.ugm.ac.id/treasurers/wp-content/uploads/2007/12/SistemOperasi-4.X-1.pdf

  16. PerangkatSinkronisasi Contoh Test and Set

  17. PerangkatSinkronisasi Semaphore Semaphore adalahpendekatan yang dikemukakanDjikstra. Prinsip semaphore adalahsebagaiberikut : Duaprosesataulebihdapatbekerjasamadenganmenggunakanpenanda-penandasederhana. Prosesdipaksaberhentisampaiprosesmemperolehpenandatertentu. Sembarangkebutuhankoordinasikompleksdapatdipenuhidenganstruksturpenanda yang sesuaikebutuhannya. Variabelkhususuntukpenandaaninidisebut semaphore. http://lecturer.eepis-its.edu/~arna/Diktat_SO/5.Sinkronisasi%20Proses.pdf

  18. PerangkatSinkronisasi Jenis Semaphore • Binary semaphore :Semaphore inihanyamemilikinilai 1 atau 0. Seringjugadisebutsebagaisemaforprimitif • Counting semaphore : Semaphore inimemilikinilai 0, 1, serta integer lainnya. Banyaksistemoperasi yang tidaksecaralangsungmengimplementasikansemaphoreini, tetapidenganmemanfaatkanbinary semaphore. http://afies.web.ugm.ac.id/treasurers/wp-content/uploads/2007/12/SistemOperasi-4.X-1.pdf

  19. PerangkatSinkronisasi Contoh Semaphore

  20. PerangkatSinkronisasi Monitor • Monitor adalahsuatutipe data abstrak yang dapatmengaturaktivitassertapenggunaanresource olehbeberapa thread. Ide monitor pertama kali diperkenalkanoleh C.A.R Hoare danPer Brinch-Hansen padaawal1970-an. • Monitor merupakankumpulandariprosedur, variabel, danstruktur data dalamsatumodul. Monitor hanyadapatdiaksesdenganmenjalankanfungsinya. Dilakukanuntukmelindungivariabeldariakses yang tidaksahdanjugamengurangiterjadinyaerror. http://afies.web.ugm.ac.id/treasurers/wp-content/uploads/2007/12/SistemOperasi-4.X-1.pdf

  21. PerangkatSinkronisasi Monitor Java Mengimplementasikanmonitor. Monitor JVM bekerjadengan object locking dan method-method wait() serta notify(). Monitor JVM dapatdigunakandenganmenggunakankeyword synchronized. http://afies.web.ugm.ac.id/treasurers/wp-content/uploads/2007/12/SistemOperasi-4.X-1.pdf

  22. PerangkatSinkronisasi Monitor Java • Method-method tersebutadalah: • void wait(). thread yang memanggil method iniakanmasukke waiting queue. • void wait(long timeout) dan void wait(long timeout, intnanos). • void notify(). Membangunkansatu thread yang adadi waiting queue yang dipilihsecara random. • void notifyAll(). http://afies.web.ugm.ac.id/treasurers/wp-content/uploads/2007/12/SistemOperasi-4.X-1.pdf

  23. PerangkatSinkronisasi Readers / Writers Salahsatudarisekianbanyakpermasalahansinkronisasiyang seringterjadididunianyata, yaituketikaadaduajenisproses readers dan writers salingberbagi (shared) data danmengaksesdatabase secaraparalel. Proses yang pertama (reader) bertugasuntukmembaca data, sedangkanproseskeduabertugasuntukmenulis data baru/mengupdatenilaidalam data (writer). http://afies.web.ugm.ac.id/treasurers/wp-content/uploads/2007/12/SistemOperasi-4.X-1.pdf

  24. PerangkatSinkronisasi Kondisi Readers / Writers Kondisiberikutharusdipenuhioleh readers dan writers: a. Maksimalhanyaadasatu writer yang mengubah data. Jikasuatu writer sedangmengubah data, makatidakadasatupun reader yang diperbolehkanuntukmembaca data. b. Dalamsuatuwaktudiperbolehkanlebihdarisatu reader membaca data. Ketika data sedangdibaca, tidakada writer yang bolehmengubah data. • http://imam_muiz.staff.gunadarma.ac.id/Downloads/files/11368/SISTEM+OPERASI-5.pdf

  25. TerimaKasih

More Related