Ageng Anugrah
Operating Systems 2021-1 (OS211)
Ageng Anugrah Wardoyo Putra
Computer Science Student at Universitas Indonesia

Top 10 List of Week 06

  1. Race Condition
    Saya memilih website ini karena bacaannya ringkas, mudah dimengerti, dan disertai dengan contoh. Secara singkat race condition dalam sistem operasi adalah suatu kondisi dimana dua atau lebih proses mengakses shared memory/sumber daya pada saat yang bersamaan dan hasil akhir dari data tersebut tergantung dari proses mana yang terakhir selesai dieksekusi sehingga hasil akhirnya terkadang tidak sesuai dengan yang dikehendaki.

  2. Apa itu Synchronization?
    Saya memilih artikel ini karena isinya lengkap, disertai gambar, dan juga contoh. Synchronization adalah sebuah proses di mana sistem saling membagikan resources-nya sehingga terjadilah concurrent access untuk membagikan data yang dikendalikan.

  3. Critical Section
    Saya memilih website ini karena berbahasa indonesia, singkat, dan mudah dimengerti. Critical section adalah segmen kode yang mengakses data yang digunakan proses secara bersama-sama yang dapat membawa proses itu ke bahaya race condition.

  4. Dining Philosopher Problem
    Saya memilih video ini karena dalam video tersebut terdapat pseudocode dan penjelasan yang cukup detail dalam videonya. Dining Philosopher Problem merupakan salah satu masalah klasik dalam synchronization.

  5. Deadlock dalam Sistem Operasi
    Saya memilih website ini karena artikelnya menarik, banyak gambar, dan disertai ilustrasi. Secara singkat deadlock adalah keadaan ketika suatu thread me-request resource namun resource tersebut tidak tersedia, maka thread akan memasuki waiting state. Ada waiting thread yang tidak bisa berubah state lagi karena resource yang direquest sedang digunakan oleh waiting thread yang lain.

  6. Semaphores in Process Synchronization
    Saya memilih website ini karena penjelasannya yang lumayan detail mengenai semaphore selain itu juga ada penjelasan mengenai tipe tipe semaphore. Pada artikel ini membahas mengenai Semaphores dalam proses sinkronisasi, Binary Semaphore dan Counting Semaphore, Implementation of binary semaphores, dan Implementation of counting semaphore.

  7. Cara menghindari deadlock
    Saya memilih website ini karena penjelasannya yang singkat dan disertai ilustrasi. Deadlock mempunyai beberapa karakteristik seperti Mutual Exclusion, Hold and Wait, No preemption, dan Circular wait. Untuk mencegah deadlock kita harus bisa mengeliminasi setidaknya 1 dari beberapa karakteristik deadlock.

  8. Mutex Lock
    Saya memilih artikel ini karena pembahasannya mengenai mutex lumayan lengkap dan di sertai contoh code. Mutex Lock adalah sebuah lock yang kita set sebelum menggunakan shared resource dan dilepaskan setelah menggunakannya. Hal ini memastikan sinkronisasi akses kepada shared resource di dalam kode.

  9. POSIX In C
    Saya memilih artikel ini karena artikelnya simple, singkat dan mudah dipahami. Artikel ini membahas mengenai pengimplementasian Semaphores menggunakan bahasa pemrograman C menggunakan library POSIX pada sistem Linux dan dilengkapi juga dengan source code.

  10. Recovery from Deadlock
    Saya memilih laman ini karena berbahasa indonesia dan mudah dipahami, di dalamnya terdapat juga ilustrasi yang semakin mempermudah pemahaman kita. Untuk recovery dari deadlock kita bisa menggunakan process termination maupun resource preemption. Process Termination akan menghapus proses-proses yang terlibat pada kondisi deadlock dengan mengacu pada beberapa syarat. Sedangkan Resources Preemption lebih menekankan kepada bagaimana menghambat suatu proses dan sumber daya, agar tidak terjebak pada unsafe condition.


© 2021-2021 --- Ageng Anugrah Wardoyo Putra