good
Top 10 List of Week 07
Alfina Megasiwi

Top 10 List of Week 07

  1. Critical Region in Process Synchronization with Real Time Example

    Video ini membahas apa itu critical region dengan menggunakan ilustrasi suatu ruangan (sebagai critical region) yang hanya dapat dimasuki oleh satu orang (sebagai process) pada satu waktu, sehingga yang lainnya akan membentuk suatu queue (waiting). Setiap program pasti memiliki suatu part yang dapat diakses dengan cara mutual exclusive seperti file access, database access, dan variable access. Video ini juga akan membahas code untuk entering dan exit critical region berikut remindernya.

  2. Race Condition in Software with Example

    Race condition dapat terjadi pada multiple processes atau threads pada suatu shared data. Race conditions dipelajari pada concurrent programming terutama pada multi-process program. Misal terdapat dua process yang membaca X dan meng-increment X menjadi X+10 dan X merupakan shared data, dimana X = 10. Yang terjadi adalah X akan bernilai 20 (incorrect), padahal seharusnya 30, inilah yang dinamakan race condition. Video ini juga akan membahas solusi dari race condition tersebut yaitu Locking.

  3. Peterson’s Algorithm with Illustration

    Video ini membahas Algoritma Peterson menggunakan ilustrasi yang mudah dipahami (dengan ilustrasi dua mobil sebagai dua process yang berbeda, serta four way road yang bagian tengahnya diibaratkan sebagai critical region). Empat kondisi yang diperlukan untuk mutual exclusion : tidak ada dua process pada suatu critical region, tidak ada asumsi mengenai banyaknya CPU dan speednya, tidak ada process di luar critical region yang dapat menghalangi process lain, serta tidak ada process yang harus menunggu selamanya untuk masuk ke critical region. Video ini juga akan membahas code dari Peterson’s Algorithm.

  4. Semaphores Illustration

    Video ini mengilustrasikan semaphore sebagai security guard yang bertugas untuk mengecek tempat duduk yang tersedia pada suatu cafe. Ia (semaphore) memperbolehkan customer (processes) masuk apabila terdapat tempat duduk (resources) yang tersedia, apabila semua kursi telah terisi, pelanggan harus menunggu di luar cafe. Semaphore akan men-track available resource dengan count, apabila suatu resource telah tersedia, countnya akan di-increment namun apabila suatu process meng-occupies suatu resource, maka countnya akan di-decrement. Hal ini terjadi pada multiprocess atau multithreaded environment.

  5. Classical problems of Synchronization with Semaphore Solution

    Web ini membahas beberapa contoh problem pada synchronization. Problem-problem tersebut diantaranya Bounded-buffer (atau Producer-Consumer Problem), Dining-Philosphers Problem, Readers and Writers Problem, dan Sleeping Barber Problem. Web ini membahas pengertian dari tiap-tiap problem, ilustrasinya, dan cara untuk mengatasi tiap problem dengan menggunakan semaphores.

  6. Memahami Hak Akses File di Linux

    Saat menjalankan command di Linux, ada kalanya suatu file tidak dapat dibuka apabila kita tidak berada pada root. Hal ini berkaitan erat dengan file permission di Linux. Tujuan utama dari file permission adalah untuk membatasi akses user terhadap suatu file agar file terproteksi dari modifikasi user yang tidak bertanggung jawab. Web ini akan membahas tentang attribute file permission yang menjelaskan permission untuk 3 kelompok user (owner, group, dan other/world) serta flag file permission huruf (RWX) dan flag file permission angka. Web ini juga akan membahas apa itu sticky, SUID, dan SGID permission serta cara mengesetnya pada sebuah file/aplikasi.

  7. Deadlock, 4 Conditions of Deadlocks, and Deadlock Handling

    Suatu process menggunakan resources yang berbeda-beda. Penggunaan resources-nya yaitu dengan me-request resources, menggunakan resource, dan melepaskan resource. Deadlock terjadi ketika dua process atau lebih saling menunggu process yang lain untuk melepaskan resource yang sedang dipakai. Karena beberapa process itu saling menunggu, maka tidak terjadi kemajuan dalam kerja process-process tersebut. Deadlock dapat terjadi ketika empat kondisi berikut berlangsung secara bersamaan, yaitu mutual exclusion, hold and wait, no preemption, dan circular wait. Terdapat tiga cara untuk mengatasi deadlock, yakni Deadlock prevention or avoidance, Deadlock detection and recovery, dan Ignore the problem all together. Video ini akan membahas dengan jelas hal-hal yang telah disebutkan di atas.

  8. Deadlock Detection and Recovery

    Apabila suatu sistem tidak menerapkan deadlock-prevention atau deadlock-avoidance algorithm, maka kemungkinan akan terjadi deadlock pada sistem tersebut. Oleh karena itu, untuk mengatasi deadlock, OS akan mengecek ada atau tidaknya deadlock pada sistem secara berkala. Setelah ditemukan, OS akan me-recover sistem tersebut dengan menggunakan recovery techniques. Web ini akan membahas deadlock detection pada single instance dan multiple instance resource, deadlock recovery, process termination, serta resource preemption.

  9. Deadlock in DBMS

    Deadlock dapat terjadi pada sistem database. Deadlock juga merupakan salah satu problem yang paling ditakuti pada DBMS, sebab apabila deadlock terjadi, tidak akan ada task yang selesai karena task tersebut akan berada pada waiting state selamanya. Untuk database yang tidak terlalu besar, kita dapat menggunakan deadlock avoidance, namun untuk database yang relatif besar, kita dapat menggunakan deadlock prevention method. Web ini akan membahas contoh dari deadlock pada DBMS, deadlock avoidance, detection (wait for graph), serta prevention (wait-die scheme dan wound wait scheme).

  10. Difference between Deadlock and Starvation

    Secara umum, perbedaan antara deadlock dan starvation ialah deadlock merupakan suatu kondisi dimana dua proses atau lebih saling menunggu proses yang lain untuk melepaskan resource yang sedang dipakai, sedangkan starvation terjadi ketika suatu process menunggu dalam jangka waktu yang tak terbatas untuk mendapatkan resource yang dibutuhkan. Web ini akan membahas apa itu deadlock, apa itu starvation, dan comparison keduanya.


© 2021-2021 --- Alfina Megasiwi --- File Revision: 28/05/2021 (1).