os202


Project maintained by idrisyoga23 Hosted on GitHub Pages — Theme by mattgraham

HOME


Top 10 List of Week 07

  1. Critical Section
    Critical Section adalah bagian dari program yang mencoba mengakses sumber daya bersama. Sumber daya itu dapat berupa sumber daya apa pun di komputer seperti lokasi memori, struktur data, CPU, atau perangkat IO apa pun.

Critical Section tidak dapat dijalankan oleh lebih dari satu proses pada saat yang bersamaan; sistem operasi menghadapi kesulitan dalam mengizinkan dan melarang proses memasuki bagian kritis.

  1. Hardware Support for Synchronization
    Proses Sinkronisasi berarti berbagi sumber daya sistem dengan proses sedemikian rupa sehingga, akses bersamaan ke data bersama ditangani sehingga meminimalkan kemungkinan data yang tidak konsisten. Menjaga konsistensi data menuntut mekanisme untuk memastikan pelaksanaan yang sinkron dari proses kerja sama.

  2. Mutex Locks
    Mutex Locks pada dasarnya adalah variabel yang bersifat biner yang menyediakan fungsionalitas kode bijaksana untuk saling pengecualian. Kadang-kadang, mungkin ada beberapa utas yang mungkin mencoba mengakses sumber daya yang sama seperti memori atau I / O dll. Untuk memastikan tidak ada penggantian. Mutex menyediakan mekanisme penguncian.

  3. Semaphores
    Semaphore adalah variabel integer yang digunakan untuk menyelesaikan masalah bagian kritis dengan menggunakan dua operasi atom, tunggu dan sinyal yang digunakan untuk sinkronisasi proses. Semaphores mempunyai 2 tipe yaitu counting dan binary

  4. POSIX Synchronization
    Thread POSIX, biasanya disebut sebagai pthreads, adalah model eksekusi yang ada secara independen dari suatu bahasa, serta model eksekusi paralel. Ini memungkinkan program untuk mengontrol berbagai aliran pekerjaan yang tumpang tindih dalam waktu. Setiap aliran pekerjaan disebut sebagai utas, dan pembuatan serta kontrol atas aliran ini dicapai dengan melakukan panggilan ke API Utas POSIX. Thread POSIX adalah API yang ditentukan oleh POSIX.1c standar, ekstensi Threads

  5. Livelock
    Livelock terjadi ketika dua atau lebih proses terus-menerus mengulangi interaksi yang sama sebagai respons terhadap perubahan dalam proses lain tanpa melakukan pekerjaan yang berguna. Proses ini tidak dalam status menunggu, dan berjalan secara bersamaan. Ini berbeda dengan kebuntuan karena dalam kebuntuan semua proses berada dalam status menunggu.

  6. Starvation
    Startvation merupakan masalah yang sangat erat kaitannya dengan Livelock dan Deadlock. Dalam sistem yang dinamis, permintaan sumber daya terus terjadi. Oleh karena itu, diperlukan beberapa kebijakan untuk mengambil keputusan tentang siapa yang mendapat sumber daya kapan. Proses ini, jika masuk akal, dapat menyebabkan beberapa proses tidak pernah diservis meskipun tidak menemui jalan buntu.

  7. Deadlock
    Deadlock adalah situasi di mana sekumpulan proses diblokir karena setiap proses memegang sumber daya dan menunggu sumber daya lain yang diperoleh oleh beberapa proses lain.

  8. Mutual Exclusion
    Mutual Exclusion adalah properti kontrol konkurensi, yang diterapkan untuk tujuan mencegah kondisi ras. Merupakan persyaratan bahwa satu utas eksekusi tidak pernah memasuki bagian kritisnya pada saat yang sama utas eksekusi bersamaan lainnya memasuki bagian kritisnya sendiri, yang mengacu pada interval waktu di mana utas eksekusi mengakses sumber daya bersama, seperti Berbagi memori.

  9. Banker’s Algorithm
    Banker’s Algoritm adalah algoritme alokasi sumber daya dan penghindaran kebuntuan yang menguji keamanan dengan mensimulasikan alokasi untuk jumlah maksimum yang mungkin telah ditentukan sebelumnya dari semua sumber daya, kemudian membuat pemeriksaan “status-s” untuk menguji kemungkinan aktivitas, sebelum memutuskan apakah alokasi harus diizinkan untuk melanjutkan.