Mekanisme Monitor
Monitor Sebuah bahasa pemrograman membangun yang merangkum variabel, prosedur akses dan inisialisasi kode dalam suatu variabel tipe data abstrak. Monitor hanya dapat diakses melalui prosedur akses dan hanya satu proses yang dapat secara aktif mengakses monitor dalam satu waktu. Prosedur-prosedur pengaksesan adalah bagian penting. Dimana monitor mungkin memiliki antrian proses-proses yang sedang menunggu untuk mengaksesnya.
Anda mungkin mendapatkan pengalaman dari belajar semua contoh semaphore bahwa sinyal dan menunggu panggilan masih dapat tersebar di mana-mana dalam program anda dengan cara yang tidak terlalu terstruktur dengan baik. Jika Anda benar-benar mendapatkan seperti perasaan, konsep monitor datang untuk menyelamatkan. Konsep monitor berasal dari 1974 kertas CAR Hoare’s.
Sebuah monitor memiliki empat komponen seperti yang ditunjukkan di bawah ini: inisialisasi, data pribadi, prosedur memonitor, dan antrian masuk monitor. Komponen inisialisasi berisi kode yang digunakan tepat satu kali ketika monitor dibuat, Bagian data pribadi berisi semua data pribadi, termasuk prosedur swasta, yang hanya dapat digunakan dalam monitor. Dengan demikian, barang-barang pribadi tidak terlihat dari luar monitor. Prosedur monitor prosedur yang dapat dipanggil dari luar monitor. Antrian entri memantau berisi semua thread yang disebut prosedur monitor tapi belum diberikan izin. Kita akan kembali ke ini segera.
Oleh karena itu, monitor terlihat seperti kelas dengan inisialisasi, data pribadi dan prosedur monitor sesuai dengan konstruktor, data pribadi dan metode kelas tersebut. Satu-satunya perbedaan utama adalah bahwa kelas tidak memiliki antrian masuk.
Monitor yang seharusnya digunakan dalam lingkungan multithreaded atau multiproses di mana beberapa thread / proses dapat menghubungi prosedur monitor pada saat yang sama meminta layanan. Dengan demikian, monitor menjamin bahwa setiap saat paling banyak satu thread bisa mengeksekusi dalam monitor! Apa artinya ini? Ketika thread panggilan prosedur monitor, kita dapat melihat prosedur monitor disebut sebagai perpanjangan ke thread panggilan. Jika prosedur monitor disebut dalam eksekusi, kita akan mengatakan thread memanggil di monitor melaksanakan prosedur monitor disebut.
Sekarang, jika dua thread di monitor (yaitu, mereka adalah melaksanakan dua, mungkin, monitor prosedur yang sama), beberapa data pribadi dapat dimodifikasi oleh kedua benang pada saat yang sama menyebabkan kondisi ras terjadi. Oleh karena itu, untuk menjamin keutuhan data pribadi, monitor saling memberlakukan pengecualian implisit. Lebih tepatnya, jika thread panggilan prosedur monitor, thread ini akan diblokir jika ada thread lain eksekusi pada monitor. Mereka benang yang tidak diberikan izin masuk akan antri masuk ke antrian monitor luar monitor. Ketika monitor menjadi kosong (yaitu, tidak ada thread mengeksekusi di dalamnya), salah satu benang dalam antrian entri akan dirilis dan diberikan izin untuk menjalankan prosedur monitor disebut. Meskipun kita mengatakan “antrian masuk,” Anda tidak harus melihat secara harfiah. Lebih tepatnya, ketika thread harus dilepaskan dari antrian masuk, Anda tidak perlu menganggap kebijakan apapun yang thread yang akan dirilis.
Secara ringkas, monitor memastikan saling eksklusi otomatis sehingga tidak ada lebih dari satu thread bisa mengeksekusi dalam memonitor setiap saat. Ini adalah kemampuan yang sangat usably dan berguna.
Monitor sebagai Mini-OS
Konsep monitor sangat mirip dengan sebuah sistem operasi. Satu dapat mempertimbangkan inisialisasi sebagaimana data yang diinisialisasi ketika sistem boot up, data pribadi dan kode sebagai struktur data internal dan fungsi dari sebuah sistem operasi, dan prosedur monitor sebagai panggilan sistem. Program-program, tentu saja, benang yang membuat permintaan layanan. Oleh karena itu, monitor bisa dianggap sebagai mini-OS dengan layanan terbatas.
*sumber: http://blog.ub.ac.id/zarkazi/2011/03/26/semaphore-dan-monitor-algoritmanya-deker-peterson-dijkstra/
TUGAS SISTEM OPERASI
Rizki Amalia H.
0922025

- Sistem Operasi
- Sistem Operasi untuk Desktop, Laptop, dan Mobile
- Mekanisme Semaphore
- Perbedaan Server dan PC
Random Posts :
Share this article
Berlangganan Artikel Gratis
Dapatkan Update Info Terbaru Melalui Email
Masukkan Email Disini:
Jangan Lupa Konfirmasi Email Pemberitahuan




