Modul C
Laporan Tugas Sistem Operasi
MODUL C
Disusun untuk memenuhi
Tugas Sistem Operasi
Oleh:
M.Taris Rizki
2208107010047
JURUSAN INFORMATIKA
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS SYIAH KUALA
DARUSSALAM, BANDA ACEH
2023
I. Pendahuluan
Bahan Referensi
Merujuk pada bahan praktikum di https://www.javatpoint.com/synchronization-in-java untuk pemahaman yang lebih mendalam.
II. Tujuan Praktikum
Praktikum ini bertujuan untuk memahami konsep "Static
Synchronization" dalam pemrograman Java. Synchronization digunakan untuk
mengontrol akses bersama terhadap sumber daya bersama oleh beberapa utas
(threads), dan dalam konteks ini, fokus pada metode statis yang disinkronkan di
dalam kelas. Tujuan praktikum ini adalah untuk memberikan pemahaman mendalam
tentang penggunaan sinkronisasi statis dan kata kunci synchronized dalam Java.
III. Bahan Praktikum Program Modul A:
IV. Hasil dan Modifikasi
1. TestSynchronization4.java
Dalam skrip ini, pendekatan statis digunakan untuk
sinkronisasi di dalam kelas Table. Dalam contoh khusus ini, empat utas yang
berbeda (t1, t2, t3, t4) digunakan untuk mencetak tabel perkalian dengan angka
yang berbeda.
Hasil dari eksekusi program menunjukkan bahwa meskipun keempat utas berjalan secara bersamaan, penggunaan sinkronisasi statis pada metode printTable di kelas Table memastikan tidak terjadi interferensi di antara utas-utas tersebut. Output yang dihasilkan terstruktur dan sesuai dengan urutan yang diharapkan.
2. TestSynchronization5.java
kode Java yang diatas mencontohkan penggunaan
sinkronisasi dengan kata kunci synchronized. Kelas Table memiliki
metode statis yang disinkronkan bernama printTable(), yang mencetak
huruf dari 'A' hingga 'J' dengan jeda 400 milidetik antara setiap pencetakan.
Sinkronisasi memastikan bahwa hanya satu utas yang dapat mengeksekusi metode
ini pada satu waktu, mencegah konflik potensial. Kelas TestSynchronization5
membuat empat utas (t1, t2, t3, dan t4), masing-masing memanggil metode printTable().
Metode start() memulai eksekusi konkuren dari utas-utas tersebut. Secara
keseluruhan, mekanisme sinkronisasi ini memastikan akses teratur dan terkendali
ke sumber daya bersama, dalam hal ini, metode printTable(), di antara
beberapa utas.
V. Kesimpulan
Praktikum membahas "Static Synchronization" dalam
Java, di mana kunci ditempatkan pada kelas untuk mengontrol akses bersama.
Contoh program menunjukkan bahwa dengan sinkronisasi statis, utas-utas berjalan
tanpa interferensi. Metode synchronized juga diterapkan untuk mengatur akses
terkendali ke sumber daya bersama, memastikan eksekusi yang teratur.
Kesimpulannya, pemahaman konsep ini krusial untuk menghindari masalah
interferensi dalam pemrograman Java.







Komentar
Posting Komentar