CRITICAL REGIONS DAN MONITORS

Ukuran: px
Mulai penontonan dengan halaman:

Download "CRITICAL REGIONS DAN MONITORS"

Transkripsi

1 CRITICAL REGIONS DAN MONITORS Oleh Sergio ( ) - <srg_wong@fastmail.fm> Tedi Kurniadi ( ) - <tedy_cs@yahoo.com> Copyright 2004 Sergio - Tedi Kurniadi silahkan menggunakan, memodifikasi, ataupun menyebarluaskan isi dokumen ini, selama tidak untuk tujuan komersil dan tidak menghilangkan nama penulis. 1

2 Kelemahan Semafor 1. Konsep low level 2. Menghilangkan wait tidak memenuhi mutex (mutual exclusion) 3. Menghilangkan signal deadlock 4. Kode Semafor tersebar pada program problem maintenance Butuh konsep high level! 2

3 3 Critical Regions 1. Bagian kode yang selalu dieksekusi dengan syarat mutex 2. Melepas tanggung jawab mutex dari sisi programmer kepada compiler 3. Terdiri dari dua bagian: a. Variabel yang harus diakses secara mutex b. Statement yang mengidentifikasi sebuah critical region yang dimana variabel-variabel di dalamnya dapat diakses Var v : shared T; region v do { begin end

4 Conditional Critical Regions Critical Regions!= Semafor CR tidak hanya menggunakan mutex, tetapi juga boolean expression dalam implementasi sinkronisasinya (conditional). region v when B do{ begin... end 4

5 Cara Kerja CCR m = 0 main queue m = 1 m-- cek kondisi (boolean B) B = true Eksekusi statement join event queue B = false m++ m = mutex selesai 5

6 Implementasi CCR Bounded Buffer buffer: record { buf: array[1..size] of data next_full, next_empty: integer := 1,1 full_slots: integer := 0 procedure insert(d: bdata) region buffer when full_slots < SIZE { buf[next_empty] := d next_empty := next_empty mod SIZE + 1 full_slots +:= 1 6

7 Implementasi CCR (cont.) function remove: bdata region buffer when full_slots > 0 { d: bdata := buf[next_full] next_full := next_full mod SIZE + 1 full_slots -:= 1 return d Implementasi pada Java? synchronized (object) { 7

8 Monitors Bagan Ilustrasi Monitors 8

9 9 Monitors terdiri dari private data dan operasi-operasi terhadap data tersebut dpt berisi type, konstanta, variabel, dan prosedur monitor body melakukan inisialisasi pada private data compiler mengawasi syarat mutex pada monitor setiap monitor memiliki boundary queue, tempat dimana proses-proses yg ingin memanggil routine dalam monitor menunggu, apabila monitor sedang digunakan monitor adalah pengembangan CCR - semua code yang mengakses shared data dilokalisasi

10 10 Variable Condition memungkinkan proses untuk melakukan block sampai kondisi true condition x,y; Contoh variabel condition: Delay danresume * x.delay() : melakukan block pada proses yang memanggil operasi ini dan melepas lock monitor (menunggu) * x.resume() : meneruskan satu buah proses yang blocked. Apabila tidak ada proses yg blocked, operasi resume tidak menimbulkan efek. (berbeda dengan signal pada semafor yang selalu mengubah status dari semafor)

11 11 Variable Condition (Problem) x.resume() pada monitor dengan sebuah proses lainnya sedang menunggu (x.delay()) Solusi: -Resume-and-Continue proses Q harus menunggu sampai P melepas monitor -Resume-and-Wait proses P harus menunggu sampai Q melepas monitor -Immediate Resumption P langsung melepas monitor (Pascal-FC)

12 Implementasi Monitors Dining Philosopher monitor diningphilosophers{ int[] state = new int[5]; static final int THINKING = 0; static final int HUNGRY = 1; static final int EATING = 2; condition[] self = new condition[5]; public diningphilosophers { for (int i = 0; i < 5; i++) state[i] = THINKING; 12

13 Implementasi Monitors (cont.) public entry pickup(int i) { state[i] = HUNGRY; test(i); if (state[i]!= EATING) self[i].wait; public entry putdown(int i) { state[i] = THINKING; // test left and right neighbors test(i + 4 % 5); test(i + 1 % 5); 13

14 14 Implementasi Monitors (cont.) private test(int i) { if ( (state[i + 4 % 5)!= EATING) && (state[i] == HUNGRY) && (state[i + 1 % 5!= EATING) ) { state[i] = EATING; self[i].signal; Applet Dining Philosopher:

15 Resource Allocation Monitor Resource Allocation { boolean busy; condition x; void acquire (int time) { if (busy) x.wait(time); busy = true; 15

16 Resource Allocation (cont.) void release() { busy = false; x.signal(); void init() { busy = false; 16

Bab 22. Perangkat Sinkronisasi II

Bab 22. Perangkat Sinkronisasi II Bab 22. Perangkat Sinkronisasi II kelompok 113.22 Femphy Pisceldo 1204000335 Hendra Dwi Hadmanto 1204000416 Zoni Yuki Haryanda 1204000955 Sebagian dibuat dengan SoftWare Bayar yang dibajak (MS. PowerPoint),

Lebih terperinci

Monitor. Process Synchronization. SISTIM OPERASI (IKI-20230) ProcessSynchronization Ch. 6. Johny Moningka

Monitor. Process Synchronization. SISTIM OPERASI (IKI-20230) ProcessSynchronization Ch. 6. Johny Moningka Monitor SISTIM OPERASI (IKI-20230) ProcessSynchronization Ch. 6 Johny Moningka (moningka@cs.ui.ac.id) Fakultas Ilmu Komputer Universitas Indonesia Semester 2000/2001 Process Synchronization Background

Lebih terperinci

Proses Sinkronisasi. Latar Belakang Masalah Critical Section Sinkronisasi Hardware Semaphores Monitors

Proses Sinkronisasi. Latar Belakang Masalah Critical Section Sinkronisasi Hardware Semaphores Monitors 7 Sinkronisasi Proses Sinkronisasi Latar Belakang Masalah Critical Section Sinkronisasi Hardware Semaphores Monitors 2 Overview (1) Proteksi OS: Independent process tidak terpengaruh atau dapat mempengaruhi

Lebih terperinci

7 Sinkronisasi. Proses Sinkronisasi. Overview (1) Overview (2) Latar Belakang Masalah Critical Section Sinkronisasi Hardware Semaphores Monitors

7 Sinkronisasi. Proses Sinkronisasi. Overview (1) Overview (2) Latar Belakang Masalah Critical Section Sinkronisasi Hardware Semaphores Monitors Mata Kuliah : Sistem Operasi Kode MK : IT-012336 7 Sinkronisasi Tim Teaching Grant Mata Kuliah Sistem Operasi Proses Sinkronisasi Latar Belakang Masalah Critical Section Sinkronisasi Hardware Semaphores

Lebih terperinci

Laporan Tugas Scheduling Pengantar Sistem Operasi

Laporan Tugas Scheduling Pengantar Sistem Operasi Laporan Tugas Scheduling Pengantar Sistem Operasi Kelas E Anggota Kelompok: Cindy Alicia Sahara (5214100172) Ratih Kinanti A (5214100174) Patricia Hanna S (5214100177) Indriarti Kusumanita (5214100178)

Lebih terperinci

Process Synchronization

Process Synchronization Process Synchronization SISTIM OPERASI (Operating System) IKI-20230 Johny Moningka (moningka@cs.ui.ac.id) Fakultas Ilmu Komputer Universitas Indonesia Semester 2000/2001 Process Synchronization Background

Lebih terperinci

BAB 4. SINKRONISASI & DEADLOCK

BAB 4. SINKRONISASI & DEADLOCK BAB 4. SINKRONISASI & DEADLOCK Sinkronisasi Perangkat Keras dan Semafor Oleh Muhammad Irfan Nasrullah Email : ewoh@gawab.com 1 Sinkronisasi Perangkat Keras Mengapa perlu sinkronisasi perangkat keras? 2

Lebih terperinci

Sistem Operasi Komputer. Pertemuan VI Proses Sinkronisasi

Sistem Operasi Komputer. Pertemuan VI Proses Sinkronisasi Sistem Operasi Komputer Pertemuan VI Proses Sinkronisasi Proses Sinkronisasi Latar belakang Critical section problem (low level synchronization) Sinkronisasi hardware Semaphores Problem klasik sinkronisasi

Lebih terperinci

Bab 6: Sinkronisasi Proses. Latar Belakang

Bab 6: Sinkronisasi Proses. Latar Belakang Bab 6: Sinkronisasi Proses Latar Belakang Permasalahan Critical-Section Hardware Sinkronisasi Semaphores Permasalahan Klasik Sinkronisasi Sinkronisasi pada Solaris 2 dan Windows 2000 7.1 Latar Belakang

Lebih terperinci

Monitor. Makalah Sistem Operasi. Disusun oleh :

Monitor. Makalah Sistem Operasi. Disusun oleh : Makalah Sistem Operasi Monitor Disusun oleh : Faturrahman 5208100001 Aris K 5208100030 Ach. Pramono 5208100158 Fais Nasrulloh 5208100704 Arief Anwar Shodiq 5208100117 Semester Ganjil 2008/2009 Jurusan

Lebih terperinci

ILUSTRASI KLASIK: BOUNDED BUFFER

ILUSTRASI KLASIK: BOUNDED BUFFER ILUSTRASI KLASIK: BOUNDED BUFFER Oleh kelompok 54.4: Reza Lesmana (1203000978) Suryamita Harindrari (1203001087) Fitria Rahma Sari (1203007034) Kritik dapat dikirimkan melalui rezalesmana@mhs.cs.ui.ac.id

Lebih terperinci

Sinkronisasi dan Deadlock

Sinkronisasi dan Deadlock Sinkronisasi dan Deadlock Latar Belakang Sinkronisasi (1) Mengapa perlu dilakukan sinkronisasi? Sinkronisasi diperlukan untuk menghindari terjadinya ketidakkonsistenan data akibat adanya akses data secara

Lebih terperinci

Sinkronisasi dan Deadlock

Sinkronisasi dan Deadlock Sinkronisasi dan Deadlock Latar Belakang Sinkronisasi (1) Mengapa perlu dilakukan sinkronisasi? Sinkronisasi diperlukan untuk menghindari terjadinya ketidakkonsistenan data akibat adanya akses data secara

Lebih terperinci

Bab 5. Sinkronisasi Proses POKOK BAHASAN: TUJUAN BELAJAR: 5.1 LATAR BELAKANG

Bab 5. Sinkronisasi Proses POKOK BAHASAN: TUJUAN BELAJAR: 5.1 LATAR BELAKANG Bab 5 Sinkronisasi Proses POKOK BAHASAN: Permasalahan Critical Section Sinkronisasi Perangkat Keras Semaphore Masalah-masalah Klasik dalam Sinkronisasi TUJUAN BELAJAR: Setelah mempelajari materi dalam

Lebih terperinci

Analisis Penerapan Semaphore dalam Mengatasi Masalah Sinkronisasi Dining Philosophers.

Analisis Penerapan Semaphore dalam Mengatasi Masalah Sinkronisasi Dining Philosophers. Analisis Penerapan Semaphore dalam Mengatasi Masalah Sinkronisasi Dining Philosophers. Ramdani 1, D. Lesmiadi 1, K. Santika 1, M. Nasrun 1, Irzaman 2 1 Jurusan Informatika, FT, Jl. Dipati Ukur Bandung

Lebih terperinci

Apa yang akan dipelajari?

Apa yang akan dipelajari? Concurrency: Mutual Exclusion dan Sinkronisasi (Pertemuan ke-8) Pendahuluan Apa yang akan dipelajari? Ruang lingkup concurrency Contoh kasus perlunya concurrency Jenis interaksi antar proses Mekanisme

Lebih terperinci

TUGAS MATA KULIAH TEKNIK KOMPILASI

TUGAS MATA KULIAH TEKNIK KOMPILASI TUGAS MATA KULIAH TEKNIK KOMPILASI TEKNIK OPTIMASI DAN TABEL INFORMASI DOSEN : HARUN MUKHTAR,M.KOM Nama : Walter Sitio NIM : 080403019 Jurusan : Teknik Infomatika UNIVERSITAS MUHAMMAHDIYAH RIAU Teknik

Lebih terperinci

B. Jawablah dengan ringkas dan lengkap. (Jawaban tidak lebih dari 10 kalimat) (Nilai 40) Solusi: kata kunci dalam huruf miring.

B. Jawablah dengan ringkas dan lengkap. (Jawaban tidak lebih dari 10 kalimat) (Nilai 40) Solusi: kata kunci dalam huruf miring. Fakultas Ilmu Komputer Universitas Indonesia UTS: Sistim Komputer Ujian tertulis bersifat tutup buku, kecuali untuk 2 lembar referensi. Waktu ujian: 120 menit (8:00 10:00). Jumlah soal 20 (3 lembar). Periksa

Lebih terperinci

T UGAS STUDI KASUS SISTEM OPERASI. Mutual Exclusion. Mata Kuliah : Sistem Operasi [ CF 1322] Disusun Oleh :

T UGAS STUDI KASUS SISTEM OPERASI. Mutual Exclusion. Mata Kuliah : Sistem Operasi [ CF 1322] Disusun Oleh : T UGAS STUDI KASUS SISTEM OPERASI Mutual Exclusion Mata Kuliah : Sistem Operasi [ CF 1322] Disusun Oleh : Muhammad Rizky Rafidianto 5208 100 043 Route Gemilang 5208 100 073 Ferlina Kusuma Wardhani 5208

Lebih terperinci

Sequential Process. Keterangan SISTEM OPERASI KOMUNIKASI ANTAR PROSES

Sequential Process. Keterangan SISTEM OPERASI KOMUNIKASI ANTAR PROSES SISTEM OPERASI KOMUNIKASI ANTAR PROSES 1 2 Keterangan Sequential Process Model konseptual untuk empat sequential proses yang independent Multiprogramming dengan empat program Pada kenyataannya hanya satu

Lebih terperinci

TEKNIK OPTIMASI. Dependensi Optimasi. Optimasi Lokal. Menghasilkan kode program dengan ukuran yang lebih kecil, sehingga lebih cepat eksekusinya.

TEKNIK OPTIMASI. Dependensi Optimasi. Optimasi Lokal. Menghasilkan kode program dengan ukuran yang lebih kecil, sehingga lebih cepat eksekusinya. Dependensi Optimasi TEKNIK OPTIMASI Menghasilkan kode program dengan ukuran yang lebih kecil, sehingga lebih cepat eksekusinya. Berdasarkan ketergantungan pada mesin : Machine Dependent Optimizer Machine

Lebih terperinci

Sekolah Tinggi Teknologi Adisutjipto Yogyakarta

Sekolah Tinggi Teknologi Adisutjipto Yogyakarta Sekolah Tinggi Teknologi Adisutjipto Yogyakarta Materi Kuliah : Sistem Operasi / OS Semester Genap E.N. Tamatjita 1 Pararel Processing Pertemuan Ke-5 Paralel processing is a situation in which two/more

Lebih terperinci

Critical Section Mutual Exclusion Semaphore Tugas. Sinkronisasi Thread. Praktikum Sistem Operasi. Ilmu Komputer IPB. Sinkronisasi Thread

Critical Section Mutual Exclusion Semaphore Tugas. Sinkronisasi Thread. Praktikum Sistem Operasi. Ilmu Komputer IPB. Sinkronisasi Thread 2017 Critical Section Critical Section A critical section is a section of code that can be executed by at most one process at a time. The critical section exists to protect shared resources from multiple

Lebih terperinci

Objek Data, Variabel, dan Konstanta. Konsep Bahasa Pemrograman Materi 4 Yudianto Sujana, M.Kom

Objek Data, Variabel, dan Konstanta. Konsep Bahasa Pemrograman Materi 4 Yudianto Sujana, M.Kom Objek Data, Variabel, dan Konstanta Konsep Bahasa Pemrograman Materi 4 Yudianto Sujana, M.Kom Pengantar Penyimpanan data di komputer (memori, register, dan lainnya) Organisasi yang sederhana Barisan bit

Lebih terperinci

Sistem Operasi Pertemuan 5 Concurrency: Mutual Exclusion & Synchronization

Sistem Operasi Pertemuan 5 Concurrency: Mutual Exclusion & Synchronization Sistem Operasi 2009 Pertemuan 5 Concurrency: Mutual Exclusion & Synchronization H u s n i Lab. Sistem Komputer & Jaringan Teknik Informatika Univ. Trunojoyo Ikhtisar Prinsip Mendasar dari Concurrency Mutual

Lebih terperinci

Bab 26. Readers/Writers

Bab 26. Readers/Writers Bab 26. Readers/Writers Achmad Hariyadi 0606031433 Indra Firmancahya 0606101502 Komentar Umum: Secara umum bab ini sudah menjelaskan tentang readers/writers bahwa semafor tetap akan digunakan dalam program

Lebih terperinci

Understanding Class Definition. Viska Mutiawani, M.Sc

Understanding Class Definition. Viska Mutiawani, M.Sc Understanding Class Definition Viska Mutiawani, M.Sc Konsep penting fields constructors methods parameters assignment statements conditional statements Ticket machines an external view Menyelidiki perilaku

Lebih terperinci

Konkurensi merupakan landasan umum perancangan sistem operasi. Proses-proses disebut konkuren jika proses-proses berada pada saat yang sama.

Konkurensi merupakan landasan umum perancangan sistem operasi. Proses-proses disebut konkuren jika proses-proses berada pada saat yang sama. Operating System (OS) Konkurensi merupakan landasan umum perancangan sistem operasi. Proses-proses disebut konkuren jika proses-proses berada pada saat yang sama. 1 Beberapa masalah yang harus diselesaikan:

Lebih terperinci

Readers-Writers & The Dining Philosophers Problem

Readers-Writers & The Dining Philosophers Problem Readers-Writers & The Dining Philosophers Problem Maharmon Arnaldo Api Perdana Contact: apiperdana@gmail.com Pembahasan Masalah Readers-Writers Program Readers-Writers Solusi Readers-Writers Masalah The

Lebih terperinci

Pertemuan 4 ELEMEN-ELEMEN BAHASA PEMROGRAMAN

Pertemuan 4 ELEMEN-ELEMEN BAHASA PEMROGRAMAN Pertemuan 4 ELEMEN-ELEMEN BAHASA PEMROGRAMAN I. Elemen-Elemen Dalam Bahasa Pemrograman Berikut adalah elemen-elemen pada bahasa pemrograman: Berikut adalah element-element pada bahasa pemrograman: 1. Aturan

Lebih terperinci

Understanding Class Definition

Understanding Class Definition Understanding Class Definition Viska Mutiawani, M.Sc 1 Viska Mutiawani - Informatika FMIPA Konsep penting fields constructors methods parameters assignment statements conditional statements 2 Viska Mutiawani

Lebih terperinci

Obyektif : KONTROL ALUR PROGRAM

Obyektif : KONTROL ALUR PROGRAM KONTROL ALUR PROGRAM Obyektif : 1. Mengetahui dan memahami tentang percabangan (seleksi) 2. Mengetahui dan memahami tentang perulangan (iterasi) 3. Dapat membuat program tentang control alur program PERCABANGAN

Lebih terperinci

24/09/2017 PERCABANGAN

24/09/2017 PERCABANGAN 1 PERCABANGAN STATEMENT IF Pernyataan if akan menentukan sebuah pernyataan (atau blok kode) yang akan dieksekusi jika dan hanya jika persyaratan bernilai benar (true). 2 BENTUK PERNYATAAN IF atau 3 PENJELASAN

Lebih terperinci

1/3/2013. Race Condition adalah situasi di mana beberapa proses mengakses

1/3/2013. Race Condition adalah situasi di mana beberapa proses mengakses BAB 6 1 Akses-akses yang dilakukan secara bersama-sama ke data yang sama, dapat menyebabkan data menjadi tidak konsisten. Untuk menjaga agar data tetap konsisten, dibutuhkan mekanisme-mekanisme untuk memastikan

Lebih terperinci

Pertemuan #3: Sinkronisasi dan Deadlock

Pertemuan #3: Sinkronisasi dan Deadlock Pertemuan #3: Sinkronisasi dan Deadlock Lecturer: Abdusy Syarif Prodi Teknik Informatika Fakultas Ilmu Komputer LATAR BELAKANG Akses-akses yang dilakukan secara bersama-sama ke data yang sama, dapat menyebabkan

Lebih terperinci

Reserved words Reserved words atau keywords merupakan kata-kata spesifik digunakan oleh compiler untuk keperluan pemrograman. Contoh reserved words

Reserved words Reserved words atau keywords merupakan kata-kata spesifik digunakan oleh compiler untuk keperluan pemrograman. Contoh reserved words Comments Comments digunakan untuk memberikan keterangan/penjelasan suatu baris program. Comments tidak akan dikompilasi oleh compiler. Lambang untuk comments : - double slash ( // ) untuk memberikan penjelasan

Lebih terperinci

Perjalanan sebuah intruksi

Perjalanan sebuah intruksi Perjalanan sebuah intruksi Source Program X = Y + X Analisis Leksikal Token-token Id1:=Id2+Id1 Id1 := Id2 + Id1 Analisis Sintaksis Code Generator dan Analisis sematiks LDA A ADD Y STO X

Lebih terperinci

Percabangan & Perulangan

Percabangan & Perulangan Struktur Dasar Java Percabangan & Perulangan Object-oriented Programming (OOP) with JAVA 2011/2012 Macam-macam Percabangan if (...) if ( ) else ( ) if ( ) else if ( ) else ( ) switch ( ) Percabangan :

Lebih terperinci

STRUKTUR PROGRAM. Secara ringkas, struktur suatu program Pascal dapat terdiri dari : 1.Judul Program 2.Blog Program a.

STRUKTUR PROGRAM. Secara ringkas, struktur suatu program Pascal dapat terdiri dari : 1.Judul Program 2.Blog Program a. PASCAL STRUKTUR PROGRAM Struktur program Pascal terdiri dari sebuah judul program (program heading) dan suatu blok program (program block) atau badan program (body program). Blok program dibagi lagi menjadi

Lebih terperinci

DASAR PEMOGRAMAN JAVA

DASAR PEMOGRAMAN JAVA DASAR PEMOGRAMAN JAVA Pertemuan ke-2 Oleh: Winda Aprianti Tipe Data Bilangan Karakter Kata atau Kalimat Boolean Literal merepresentasikan nilai suatu tipe, dimana tipe itu sendiri menjelaskan bagaimana

Lebih terperinci

Kuliah#7 TSK617 Pengolahan Paralel - TA 2011/2012. Eko Didik Widianto

Kuliah#7 TSK617 Pengolahan Paralel - TA 2011/2012. Eko Didik Widianto Kuliah#7 TSK617 Pengolahan Paralel - TA 2011/2012 Eko Didik Teknik Sistem Komputer - Universitas Diponegoro Review Kuliah Sebelumnya dibahas tentang: pustaka Posix Thread dan aplikasinya Pustaka Pthread

Lebih terperinci

Pemrograman Berorientasi Obyek (IT251) Ramos Somya, S.Kom., M.Cs.

Pemrograman Berorientasi Obyek (IT251) Ramos Somya, S.Kom., M.Cs. Pemrograman Berorientasi Obyek (IT251) Ramos Somya, S.Kom., M.Cs. Thread adalah sebuah pengontrol aliran program dengan menggunakan kendali tunggal. Suatu proses dikontrol oleh paling sedikit satu thread.

Lebih terperinci

2 TIPE DATA DAN VARIABEL

2 TIPE DATA DAN VARIABEL BAB 2 TIPE DATA DAN VARIABEL Kompetensi Dasar dan Indikator : Setelah mengikuti materi kuliah ini mahasiswa mampu menggunakan tipe data dan variable yang ada dalam Java, dengan indikator mahasiswa mampu:

Lebih terperinci

Concurrency 1: y Mutual Exclusion dan Sinkronisasi (Perte rt muan ke muan -10) 10 Oktober 2014

Concurrency 1: y Mutual Exclusion dan Sinkronisasi (Perte rt muan ke muan -10) 10 Oktober 2014 Concurrency 1: Mutual Exclusion dan Sinkronisasi (Pertemuan ke-10) Oktober 2014 Pokok Bahasan Pokok Bahasan: Sinkronisasi dan Mutual Exclusion Sub Pokok Bahasan: Konsep monitor dan implementasinya Konsep

Lebih terperinci

Variabel dengan tipe dasar hanya dapat menyimpan sebuah nilai

Variabel dengan tipe dasar hanya dapat menyimpan sebuah nilai Variabel dengan tipe dasar hanya dapat menyimpan sebuah nilai 5 buah nilai dengan tipe yang sama dapat saja disimpan dalam 5 buah variabel, tetapi bagaimana dengan 100 nilai? Disimpan dengan 100 variabel?

Lebih terperinci

two/more processor operate in unison.

two/more processor operate in unison. Sistem Operasi 6 Process Synchronization Antonius Rachmat C, S.Kom, M.Cs Paralel l Processing Paralel alel processing is a situation in which two/more processor operate in unison. Executing instruction

Lebih terperinci

The Critical Section Problem Algorithm III

The Critical Section Problem Algorithm III The Critical Section Problem Algorithm III Di dalam suatu sistem terdapat n proses yang saling bersaing untuk menggunakan data. Masing-masing proses tersebut mempunyai kode segmen yang disebut Critical

Lebih terperinci

IF PEMROGRAMAN LANJUT PERULANGAN. Oleh : Andri Heryandi, M.T.

IF PEMROGRAMAN LANJUT PERULANGAN. Oleh : Andri Heryandi, M.T. IF34348 - PEMROGRAMAN LANJUT PERULANGAN 05 Oleh : Andri Heryandi, M.T. JENIS-JENIS PERULANGAN Perulangan FOR Perulangan DO WHILE Perulangan WHILE Oleh : Andri Heryandi, M.T. 2 PERULANGAN FOR Perulangan

Lebih terperinci

Sistem Operasi. Critical section, konkurensi, mutasi exclusion, starvation dan deadlock. Juliansyahwiran, S. Kom, MTI. Modul ke: Fakultas FASILKOM

Sistem Operasi. Critical section, konkurensi, mutasi exclusion, starvation dan deadlock. Juliansyahwiran, S. Kom, MTI. Modul ke: Fakultas FASILKOM Modul ke: 09 Fakultas Eka FASILKOM Sistem Operasi Critical section, konkurensi, mutasi exclusion, starvation dan deadlock Juliansyahwiran, S. Kom, MTI. Program Studi Sistem Informasi Critical section,

Lebih terperinci

Sistem Operasi. Kongkurensi

Sistem Operasi. Kongkurensi Kongkurensi Konkurensi merupakan landasan umum perancangan system operasi. Prosesproses disebut konkuren jia proses proses itu berada pada saat yang sama. Prosesproses konkuren dapat sepenuhnya tak bergantung

Lebih terperinci

TABEL INFORMASI / SIMBOL

TABEL INFORMASI / SIMBOL TABEL INFORMASI / SIMBOL Fungsi Tabel Informasi atau Tabel Simbol : Membantu pemeriksaan kebenaran semantik dari program sumber. Membantu dan mempermudah pembuatan intermediate code dan proses pembangkitan

Lebih terperinci

PEMAHAMAN DASAR DASAR JAVA

PEMAHAMAN DASAR DASAR JAVA MODUL 1 PEMAHAMAN DASAR DASAR JAVA A. PENGANTAR JAVA Java Standard Development Kit (JDK/SDK) merupakan alat-alat utama bagi programmer untuk membuat dan menjalankan java. Development Kit dapat didownload

Lebih terperinci

Konstruksi Dasar Algoritma

Konstruksi Dasar Algoritma Konstruksi Dasar Algoritma ALGORITMA DAN PEMROGRAMAN [IF6110202] Yudha Saintika, S.T., M.T.I. Sub-Capaian Pembelajaran MK Pendahuluan Instruksi dan Aksi Algoritma merupakan deskripsi urutan pelaksanaan

Lebih terperinci

BAHASA PEMROGRAMAN JAVA PUTU INDAH CIPTAYANI JURUSAN SISTEM INFORMASI STMIK AMIKOM YOGYAKARTA

BAHASA PEMROGRAMAN JAVA PUTU INDAH CIPTAYANI JURUSAN SISTEM INFORMASI STMIK AMIKOM YOGYAKARTA 1 BAHASA PEMROGRAMAN JAVA PUTU INDAH CIPTAYANI JURUSAN SISTEM INFORMASI STMIK AMIKOM YOGYAKARTA IDENTIFIER Identifier adalah suatu tanda yang mewakili nama-nama variabel, method, class, dsb. Ingat : Bahasa

Lebih terperinci

6 Maret Structure of Java [Penyeleksian Kondisi]

6 Maret Structure of Java [Penyeleksian Kondisi] 6 Maret 2012 Structure of Java [Penyeleksian Kondisi] Input User Menggunakan JOptionPane (GUI). Import.javax.swing. String, Int, harus di rubah Menggunakan Scanner (Dos). Import.java.util Scanner, objek

Lebih terperinci

PEMROGRAMAN WEB 08 JavaScript Dasar

PEMROGRAMAN WEB 08 JavaScript Dasar PEMROGRAMAN WEB 08 JavaScript Dasar Andi WRE JavaScript Scripting language Lightweight scripting language Client-side scripting language Membuat halaman web menjadi lebih interaktif Digunakan untuk menambahkan

Lebih terperinci

Aplikasi Rekursif dalam Analisis Sintaks Program

Aplikasi Rekursif dalam Analisis Sintaks Program Aplikasi Rekursif dalam Analisis Sintaks Program Albertus Kelvin / 13514100 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl. Ganesha 10 Bandung 40132,

Lebih terperinci

MANAJEMEN PROSES. Satu Empat Model program counter program counter Proses

MANAJEMEN PROSES. Satu Empat Model program counter program counter Proses MANAJEMEN PROSES Proses : Adalah program yang sedang di jalankan atau software yang sedang dilaksanakan termasuk sistem operasi yang disusun menjadi sejumlah proses sequential. Konsep dasar : 1. Multiprogramming

Lebih terperinci

Paralel processing Benefits Job level Process level Thread level

Paralel processing Benefits Job level Process level Thread level Sistem Operasi 6 Process Synchronization Antonius Rachmat C, S.Kom, M.Cs Paralel Processing Paralel processing is a situation in which two/more processor operate in unison. Executing instruction simultaneously

Lebih terperinci

Bab 27. Sinkronisasi Dengan Semafor

Bab 27. Sinkronisasi Dengan Semafor Bab 27. Sinkronisasi Dengan Semafor 27.1. Pendahuluan Sinkronisasi dua arah adalah suatu mekanisme dimana suatu thread dapat mengendalikan sinkronisasi thread lain, begitu pula sebaliknya. Berikut ini

Lebih terperinci

BAB II VARIABEL DAN TIPE DATA

BAB II VARIABEL DAN TIPE DATA BAB II VARIABEL DAN TIPE DATA Bahasa pemrograman pada umumnya, mengenal adanya variabel yang digunakan untuk menyimpan nilai atau data. Sedangkan Java sendiri dikenal sebagai bahasa pemrograman dengan

Lebih terperinci

Teknik Optimasi. Teknik Kompilasi Dosen: Utami Dewi W.,S.Kom

Teknik Optimasi. Teknik Kompilasi Dosen: Utami Dewi W.,S.Kom Teknik Optimasi Teknik Kompilasi Dosen: Utami Dewi W.,S.Kom Dependensi Optimasi Tahapan optimasi kode yang bertujuan untuk menghasilkan kode program yang berukuran lebih kecil dan lebih cepat eksekusinya.

Lebih terperinci

Java Script (Bagian 1)

Java Script (Bagian 1) Java Script (Bagian 1) By: U. Abd. Rohim Website : www.abdrohim.com mailto : info@abdrohim.com Internet 1Pemrograman Internet I 1 Apa itu? adalah bahasa pemrograman script yang berbasis objek buatan Netscape

Lebih terperinci

DEADLOCK. Haryono Setiadi, ST, M.Eng

DEADLOCK. Haryono Setiadi, ST, M.Eng DEADLOCK Haryono Setiadi, ST, M.Eng OBJEK PEMBELAJARAN Overview Deadlock Ilustrasi Deadlock Syarat terjadinya deadlock Metode mengatasi deadlock Penghidaran deadlock PENDAHULUAN Proses dikatan deadlock

Lebih terperinci

Mengunci sebuah object: Untuk memastikan bahwa hanya satu thread yang mendapatkan hak akses kedalam method tertentu

Mengunci sebuah object: Untuk memastikan bahwa hanya satu thread yang mendapatkan hak akses kedalam method tertentu Sinkronisasi Mengapa menggunakan sinkronisasi threads? Bagaimanapun juga sebuah thread yang berjalan bersama-sama kadang-kadang membutuhkan resource atau method dari luar Butuh untuk berkomunikasi satu

Lebih terperinci

The Critical Section Problem Algorithm III. Muhammad Fikry Hazmi (143) Kresna Ridwan (145) Guntur Kondang Prakoso (153)

The Critical Section Problem Algorithm III. Muhammad Fikry Hazmi (143) Kresna Ridwan (145) Guntur Kondang Prakoso (153) The Critical Section Problem Algorithm III Muhammad Fikry Hazmi (143) Kresna Ridwan (145) Guntur Kondang Prakoso (153) Definisi Critical Section adalah bagian dari suatu proses yang akan melakukan akses

Lebih terperinci

Modul Praktikum 3 Pemograman Berorientasi Objek

Modul Praktikum 3 Pemograman Berorientasi Objek Modul Praktikum 3 Pemograman Berorientasi Objek 1. Judul : Kontrol Keputusan dan Pengulangan 2. Tujuan Percobaan : Diakhir praktikum, mahasiswa diharapkan mampu : Menggunakan struktur kontrol keputusan

Lebih terperinci

MK. PEMROGRAMAN SISTEM Semester/SKS : 6/3 COMPILER. Jurusan Sistem Komputer S1 Universitas Gunadarma

MK. PEMROGRAMAN SISTEM Semester/SKS : 6/3 COMPILER. Jurusan Sistem Komputer S1 Universitas Gunadarma MK. PEMROGRAMAN SISTEM Semester/SKS : 6/3 COMPILER Jurusan Sistem Komputer S1 Universitas Gunadarma Aspek Kompilasi Programmer dengan High Level Languange (HLL) vs. Komputer dengan Machine Language Untuk

Lebih terperinci

PEMROGRAMAN JAVA : VARIABEL DAN TIPE DATA

PEMROGRAMAN JAVA : VARIABEL DAN TIPE DATA PEMROGRAMAN JAVA : VARIABEL DAN TIPE DATA Asep Herman Suyanto info@bambutechno.com http://www.bambutechno.com Bahasa pemrograman pada umumnya, mengenal adanya variabel yang digunakan untuk menyimpan nilai

Lebih terperinci

SOLUSI QUIZ 2 SISOP CS3613

SOLUSI QUIZ 2 SISOP CS3613 SOLUSI QUIZ 2 SISOP CS3613 Soal-soal berikut ini berkaitan dengan topik: SINKRONISASI dan MUTUAL EXCLUTION (Total nilai = 110) 1. Jelaskan pengertian critical section dan berikan contohnya (minimal 2)!

Lebih terperinci

BAB II MANAJEMEN PROSES

BAB II MANAJEMEN PROSES BAB II MANAJEMEN PROSES Tujuan : 1. Dapat menjelaskan mengenai alur proses dalam komputer 2. Dapat mamahami algoritma penjadwalan proses 3. Dapat menjelaskan konsep-konsep yang berkaitan dengan penjadwalan

Lebih terperinci

Sinkronisasi dan Deadlock Sistem Operasi

Sinkronisasi dan Deadlock Sistem Operasi Sinkronisasi dan Deadlock Sistem Operasi Muhammad Iqbal Jurusan Sistem Komputer Fakultas Ilmu Komputer Universitas Sriwijaya Email:qiodaimi@gmail.com ABSTRAK Saat menggunakan komputer, notebook, netbook

Lebih terperinci

Structure dasar dari bahasa pemrograman arduino adalah sederhana yang

Structure dasar dari bahasa pemrograman arduino adalah sederhana yang Structuer Pemrograman 1. Structure Structure dasar dari bahasa pemrograman arduino adalah sederhana yang hanya terdiri dari dua bagian. void setup( ) // Statement; void loop( ) // Statement; Dimana setup

Lebih terperinci

PERTEMUAN 2 ARRAY, PERCABANGAN, DAN PERULANGAN

PERTEMUAN 2 ARRAY, PERCABANGAN, DAN PERULANGAN PERTEMUAN 2 ARRAY, PERCABANGAN, DAN PERULANGAN PERTEMUAN 2 ARRAY, PERCABANGAN, DAN PERULANGAN Obektif: Praktikan mengetahui arra, percabangan, dan perulangan pada Java. Praktikan mengetahui bentuk umum

Lebih terperinci

BAB 7. Sebagai contoh, kita memiliki tiga variabel dengan tipe data int yang memiliki identifier berbeda untuk tiap variabel.

BAB 7. Sebagai contoh, kita memiliki tiga variabel dengan tipe data int yang memiliki identifier berbeda untuk tiap variabel. 7.1 Tujuan BAB 7 Java Array Dalam bab ini, kita akan mendiskusikan mengenai array dalam Java. Pertama, kita akan mendefinisikan apa yang dimaksud dengan array, kemudian kita juga akan mendiskusikan bagaimana

Lebih terperinci

SUMBER BELAJAR PENUNJANG PLPG

SUMBER BELAJAR PENUNJANG PLPG SUMBER BELAJAR PENUNJANG PLPG 2017 [TIK] BAB VIII PEMROGRAMAN BERORIENTASI OBJEK [Alfa Faridh Suni] KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN DIREKTORAT JENDERAL GURU DAN TENAGA KEPENDIDIKAN 2017 BAB VIII

Lebih terperinci

MODUL 2 Review Pemograman Web Teknik Informatika Universitas Pasundan Bandung 2016/2017

MODUL 2 Review Pemograman Web Teknik Informatika Universitas Pasundan Bandung 2016/2017 MODUL 2 Review Pemograman Web Teknik Informatika Universitas Pasundan Bandung 2016/2017 Variabel Maret, 2017 [MODUL 2 - Review] Digunakan untuk menyimpan sebuah value, data atau informasi Nama variabel

Lebih terperinci

MAKALAH DEADLOCK. DIAJUKAN UNTUK MEMENUHI TUGAS MATA KULIAH Sistem Operasi Dosen Penampu Bapak Adi Sucipto, Ir., M.Kom. oleh :

MAKALAH DEADLOCK. DIAJUKAN UNTUK MEMENUHI TUGAS MATA KULIAH Sistem Operasi Dosen Penampu Bapak Adi Sucipto, Ir., M.Kom. oleh : MAKALAH DEADLOCK DIAJUKAN UNTUK MEMENUHI TUGAS MATA KULIAH Sistem Operasi Dosen Penampu Bapak Adi Sucipto, Ir., M.Kom. oleh : Damas Fahmi Assena NIM : 161240000500 PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS

Lebih terperinci

Concurrency 1 : Mutual Exclusion dan Sinkronisasi (P ( e P rtemuan ua ke-9) 9 September 2014

Concurrency 1 : Mutual Exclusion dan Sinkronisasi (P ( e P rtemuan ua ke-9) 9 September 2014 Concurrency 1: 1 Mutual Exclusion dan Sinkronisasi (Pertemuan ke-9) September 2014 Pokok Bahasan Pokok Bahasan: Sinkronisasi dan Mutual Exclusion Sub Pokok Bahasan: Prinsip semaphore biner Pengendalian

Lebih terperinci

PROCEDURE DAN FUNCTION. Mardhiya Hayaty, ST, M.Kom

PROCEDURE DAN FUNCTION. Mardhiya Hayaty, ST, M.Kom PROCEDURE DAN FUNCTION Mardhiya Hayaty, ST, M.Kom Sub Rutin Adalah kumpulan program Digunakan untuk mengurangi jumlah baris kode program yang penggunaannya mungkin berulangulang/sering dipakai Dalam bahasa

Lebih terperinci

Logika pemrograman sederhana

Logika pemrograman sederhana Logika pemrograman sederhana Setelah belajar materi 1, 2 dan 3 sekarang saatnya mengenal logika pemrograman sederhana, di materi 1 sudah di bahas sedikit apa itu algoritma pemrograman, sekarang saatnya

Lebih terperinci

Masalah Deadlock. Contoh Persimpangan Jalan. Resource-Allocation Graph. Deadlock

Masalah Deadlock. Contoh Persimpangan Jalan. Resource-Allocation Graph. Deadlock Mata Kuliah : Sistem Operasi Kode MK : IT-012336 8 Deadlock Tim Teaching Grant Mata Kuliah Sistem Operasi Masalah Deadlock Sekumpulan proses sedang blocked karena setiap proses sedang menunggu (antrian)

Lebih terperinci

Operator, Statement kondisional, dan Iterasi pada Java

Operator, Statement kondisional, dan Iterasi pada Java Operator, Statement kondisional, dan Iterasi pada Java Operator Operator Aritmatika Operator ini digunakan pada operasi-operasi aritmatika seperti penjumlahan, pengurangan, pembagian dll. Jenis Operator

Lebih terperinci

1. Mana diantara pilihan-pilihan berikut ini yang merupakan penulisan loop yang benar?

1. Mana diantara pilihan-pilihan berikut ini yang merupakan penulisan loop yang benar? 1 of 14 2/21/2008 2:34 PM Waktu Sisa : 0:43:58 1. Mana diantara pilihan-pilihan berikut ini yang merupakan penulisan loop yang benar? 2 of 14 2/21/2008 2:34 PM 2. Pernyataan manakah yang benar mengenai

Lebih terperinci

Tipe if : If tanpa else (if) If dengan else (if-else) Nested if

Tipe if : If tanpa else (if) If dengan else (if-else) Nested if Struktur kontrol keputusan pernyata-an dari Java yang mengijinkan user untuk memilih dan mengeksekusi blok kode spesifik dan mengabaikan blok kode yang lain. Tipe : If switch Tipe if : If tanpa else (if)

Lebih terperinci

Membuat dan Menggunakan Class

Membuat dan Menggunakan Class Pertemuan 3 Halaman 1/1 Membuat class pada java : Untuk mendefinisikan suatu class pada java digunakan : class ClassName { suatu class dapat terdiri dari - attribute / data field - method Attribute Attribute

Lebih terperinci

Thread. 16 th week Estu Sinduningrum ST,MT

Thread. 16 th week Estu Sinduningrum ST,MT Thread 16 th week Estu Sinduningrum ST,MT Multitasking dan Multithreading Multitasking Multitasking adalah suatu istilah yang menjelaskan bahwa sebuah komputer dapat menjalankan bebeiapa aktiviias (yang

Lebih terperinci

BAB V. STATEMEN KONTROL

BAB V. STATEMEN KONTROL BAB V. STATEMEN KONTROL Statemen kontrol digunakan untuk mengatur jalannya alur program sesuai dengan yang diinginkan. Statemen ini dikategorikan menjadi 3 jenis, yaitu pemilihan, pengulangan dan peloncatan

Lebih terperinci

MODUL PRAKTIKUM SISTEM OPERASI PRAKTIKUM III Sinkronisasi Proses

MODUL PRAKTIKUM SISTEM OPERASI PRAKTIKUM III Sinkronisasi Proses MODUL PRAKTIKUM SISTEM OPERASI PRAKTIKUM III Sinkronisasi Proses A. Tujuan Pada akhir praktikum ini, peserta dapat: 1. Mengkompilasi kode sumber dengan thread yang berbagi akses ke area global yang tidak

Lebih terperinci

BAB-2 : TIPE DATA, VARIABEL DAN OPERATOR

BAB-2 : TIPE DATA, VARIABEL DAN OPERATOR BAB-2 : TIPE DATA, VARIABEL DAN OPERATOR Setelah selesai pembahasan pada bab ini, diharapkan Anda dapat : Mengenal dan dapat menggunakan tipe data Mengenal dan menggunakan variable Mengenal dan menggunakan

Lebih terperinci

int i = 0; while (i < 10) { System.out.println( Informatika Unpas ); i++; }

int i = 0; while (i < 10) { System.out.println( Informatika Unpas ); i++; } I. Bahan Kajian 1. Perulangan (Iterasi) Perulangan(iterasi), menyatakan bahwa suatu instruksi tertentu akan diulang sampai tercapai kondisi tertentu, tanpa kita harus menulis perintah tersebut secara berulang.

Lebih terperinci

PROSES & THREADS 2 AGUS PAMUJI. SISTEM OPERASI - Proses & Threads

PROSES & THREADS 2 AGUS PAMUJI. SISTEM OPERASI - Proses & Threads PROSES & THREADS 2 AGUS PAMUJI 1 Hubungan antara proses Proses yang kooperatif Concurrent Process Proses yang bersifat simultan Independent Process Cooperating Process Tidak terpengaruh / dipengaruhi oleh

Lebih terperinci

Algoritma dan Pemrograman PROSEDUR. Oleh: Eddy Prasetyo N

Algoritma dan Pemrograman PROSEDUR. Oleh: Eddy Prasetyo N Algoritma dan Pemrograman PROSEDUR Oleh: Eddy Prasetyo N Definisi Sederetan instruksi algoritmik yang diberi nama, dan akan menghasilkan efek neto yang terdefinisi. Spesifikasi nama prosedur dan parameter

Lebih terperinci

2. Pilih instruksi yang dapat digunakan dalam method actionperformed untuk membedakan antara tombol buttonone dan buttontwo.

2. Pilih instruksi yang dapat digunakan dalam method actionperformed untuk membedakan antara tombol buttonone dan buttontwo. Waktu Sisa : 2:14:53 1. Dari pilihan berikut ini, item manakah yang memiliki atribut dan behaviour? object class attribute data type method behavior 2. Pilih instruksi yang dapat digunakan dalam method

Lebih terperinci

Pengenalan JavaScript

Pengenalan JavaScript Pengenalan JavaScript Tujuan - Mahasiswa memahami konsep dasar Javascript - Mahasiswa mampu memahami cara menggunakan Javascript - Mahasiswa mampu memahami dasar variabel di Javascript - Mahasiswa mampu

Lebih terperinci

disebut ternary operator. Di dalam suatu operasi dapat terdapat banyak operator. Urutan eksekusi dari operatoroperator

disebut ternary operator. Di dalam suatu operasi dapat terdapat banyak operator. Urutan eksekusi dari operatoroperator OPERATOR Operator digunakan untuk menyatakan suatu perhitungan/operasi. Operator yang digunakan untuk operasi yang melibatkan satu operand disebut unary operator. Jika melibatkan dua operand maka disebut

Lebih terperinci

BAB V PENYELEKSIAN KONDISI DAN PERULANGAN

BAB V PENYELEKSIAN KONDISI DAN PERULANGAN BAB V PENYELEKSIAN KONDISI DAN PERULANGAN Untuk menghasilkan suatu program, sangat penting untuk mengatur agar program dapat berjalan dengan aliran atau susunan yang baik, sehingga dapat memecahkan masalah

Lebih terperinci

MODUL. Variabel. Workshop Programming

MODUL. Variabel. Workshop Programming W o r P r o 1 Variabel MODUL Workshop Programming Digunakan untuk menyimpan sebuah value, data atau informasi Nama variabel diawali dengan tanda $ Setelah tanda $ diawali oleh huruf atau under---scrore

Lebih terperinci

BAB 7 Java Array. Sebagai contoh, kita memiliki tiga variabel dengan tipe data int yang memiliki identifier yang berbeda untuk tiap variabel.

BAB 7 Java Array. Sebagai contoh, kita memiliki tiga variabel dengan tipe data int yang memiliki identifier yang berbeda untuk tiap variabel. 7.1 Tujuan BAB 7 Java Array Dalam bagian ini, kita akan mendiskusikan mengenai array dalam Java. Pertama, kita akan mendefinisikan apa yang dimaksud dengan array, kemudian kita juga akan mendefinisikan

Lebih terperinci

Sistem Operasi Komputer. Pembahasan Deadlock

Sistem Operasi Komputer. Pembahasan Deadlock Sistem Operasi Komputer Pertemuan VII Deadlock Pembahasan Deadlock Model sistem Karakteristik deadlock Metode penanganan deadlock Deadlock prevention (mencegah) Deadlock avoidance (menghindari) Deadlock

Lebih terperinci