Algoritma Dekkers

Pengarang: Robert Simon
Tanggal Pembuatan: 17 Juni 2021
Tanggal Pembaruan: 24 Juni 2024
Anonim
Algoritma Dekker - Kelompok 3
Video: Algoritma Dekker - Kelompok 3

Isi

Definisi - Apa yang dimaksud dengan Algoritma Dekkers?

Algoritma Dekker adalah algoritma pertama yang diketahui yang memecahkan masalah saling pengecualian dalam pemrograman bersamaan. Itu dikreditkan ke Th. J. Dekker, seorang ahli matematika Belanda yang menciptakan algoritma untuk penipu lain. Algoritma Dekkers digunakan dalam proses antrian, dan memungkinkan dua utas berbeda untuk berbagi sumber daya sekali pakai yang sama tanpa konflik dengan menggunakan memori bersama untuk komunikasi.


Pengantar Microsoft Azure dan Microsoft Cloud | Sepanjang panduan ini, Anda akan mempelajari tentang apa itu cloud computing dan bagaimana Microsoft Azure dapat membantu Anda untuk bermigrasi dan menjalankan bisnis Anda dari cloud.

Techopedia menjelaskan Algoritma Dekkers

Algoritma Dekker hanya akan memungkinkan satu proses untuk menggunakan sumber daya jika dua proses mencoba menggunakannya secara bersamaan. Sorot algoritma adalah bagaimana memecahkan masalah ini. Ini berhasil mencegah konflik dengan menerapkan saling pengecualian, yang berarti bahwa hanya satu proses dapat menggunakan sumber daya pada suatu waktu dan akan menunggu jika proses lain menggunakannya. Ini dicapai dengan menggunakan dua "bendera" dan "token". Bendera menunjukkan apakah suatu proses ingin memasuki bagian kritis (CS) atau tidak; nilai 1 berarti BENAR bahwa proses ingin memasuki CS, sementara 0, atau SALAH, berarti sebaliknya. Token, yang juga dapat memiliki nilai 1 atau 0, menunjukkan prioritas ketika kedua proses memiliki flag yang disetel ke TRUE.

Algoritma ini dapat berhasil menegakkan saling pengecualian tetapi akan terus menguji apakah bagian kritis tersedia dan karenanya menghabiskan waktu prosesor yang signifikan. Ini menciptakan masalah yang dikenal sebagai sinkronisasi lockstep, di mana setiap utas hanya dapat dijalankan dalam sinkronisasi ketat. Ini juga tidak dapat diperluas karena hanya mendukung maksimal dua proses untuk saling pengecualian.