1 / 25

Kelompok 5

Sistem Operasi Kelas E Teknik Informatika. “ Sinkronisasi Proses ”. Kelompok 5. Rifki Baidhowi 09650 117. Ida Fitriana 09650 087. Satya Bagus F 09650 062. Definisi Sinkronisasi. Sinkronisasi adalah proses pengaturan jalannya beberapa proses pada saat yang bersamaan .

mariah
Download Presentation

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 KelasE TeknikInformatika “Sinkronisasi Proses” Kelompok 5 Rifki Baidhowi 09650117 Ida Fitriana 09650087 Satya Bagus F 09650062

  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 mencobamengatasimasalah critical section untukduaproses. Algoritmainimenerapkansistembergilirkepadakeduaproses yang inginmengeksekusi critical section, sehinggakeduaprosestersebutharusbergantianmenggunakan critical section. Bentuk : int turn = 0 atauint turn = 1 Algoritma I -Dekker • 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 danberdasarkanalgoritmapenjadwalan yang 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 : variabel yang hanyadapatdiaksesolehduabuahoperasistandar Monitor : menanganimasalah yang munculkarenapemakaiansemafor Java Monitor : implementasidari monitor Readers / Writers

  15. PerangkatSinkronisasi Test and Set Sebagianbesarsistemkomputersaatinimenyediakaninstruksiinstruksiperangkatkeraskhusus yang mengizinkankitauntukmengujidanmemodifikasinilaidarisebuahvariabel. InstruksiinidisebutinstruksiTestAndSet(). Instruksiinibersifatatomik, yaituinstruksi yang tidakdapatdiinterupsi. Kita dapatmenggunakaninstruksikhususiniuntukmemecahkanmasalah critical 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 inihanyamemilikinilai1 atau0. Seringjugadisebutsebagaisemaforprimitif • Counting semaphore: Semaphore inimemilikinilai0, 1, sertainteger lainnya. Banyaksistemoperasiyang tidaksecaralangsungmengimplementasikansemaphore ini, 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 dapatmengaturaktivitassertapenggunaan resource olehbeberapa thread. Ide monitor pertama kali diperkenalkanoleh C.A.R Hoare dan Per Brinch-Hansen padaawal 1970-an. • Monitor merupakankumpulandariprosedur, variabel, danstruktur data dalamsatumodul. Monitor hanyadapatdiaksesdenganmenjalankanfungsinya. Dilakukanuntukmelindungivariabeldariakses yang tidaksahdanjugamengurangiterjadinya error. http://afies.web.ugm.ac.id/treasurers/wp-content/uploads/2007/12/SistemOperasi-4.X-1.pdf

  21. PerangkatSinkronisasi Monitor Java Mengimplementasikan monitor. Monitor JVM bekerjadengan object locking dan method-method wait() serta notify(). Monitor JVM dapatdigunakandenganmenggunakan keyword 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 Salahsatudarisekianbanyakpermasalahansinkronisasi yang seringterjadididunianyata, yaituketikaadaduajenisproses readers dan writers salingberbagi (shared) data danmengakses database 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