Dekker's algorithm

http://dbpedia.org/resource/Dekker's_algorithm an entity of type: Software

L'algorisme de Dekker, és un algorisme de programació concurrent que permet que dos processos accedeixin sense conflicte a un recurs compartit, utilitzant només memòria compartida per a comunicar-se. Aquest algorisme fou inventat pel matemàtic neerlandès i fou un dels primers algorismes dissenyats per garantir exclusió mútua. rdf:langString
Der Dekker-Algorithmus ist die älteste bekannte vollständige Lösung des Problems, den wechselseitigen Ausschluss (Mutex) in der dezentralen Steuerung von Prozessen (Prozesssynchronisation) zu gewährleisten. Er vermeidet gegenseitiges Blockieren (Deadlock) und gewährleistet, dass stets genau ein Prozess in einen kritischen Abschnitt gelangen kann (Sequentialisierung). Der Algorithmus wurde 1965 von dem niederländischen Mathematiker Theodorus Dekker formuliert. In der hier beschriebenen Form kann er aber nur zwei Prozesse wechselseitig ausschließen. rdf:langString
L'algorithme de Dekker est un algorithme d'exclusion mutuelle. Il est basé sur une approche par attente active et est divisé en deux parties, à savoir le protocole d'entrée dans la section critique et le protocole de sortie. L'algorithme présenté dans cet article est une version pouvant fonctionner avec N thread, version due à Edsger Dijkstra. rdf:langString
Algoritme Dekker adalah algoritme yang menjabarkan dua atau lebih proses tentang yang berbagi sumber yang sama tanpa adanya konflik. Algoritme ini diciptakan oleh , seorang matematikawan Belanda, yang diterapkan oleh Edsger W. Dijkstra. rdf:langString
L'algoritmo di Dekker, noto anche come algoritmo di proiezione di Dijkstra, costituisce una soluzione completa al problema della mutua esclusione nella coordinazione decentrata di processi (sincronizzazione), impedendo lo stallo (deadlock) ed assicurando che soltanto un processo alla volta possa eseguire una sezione critica (serializzazione). Tale algoritmo è attribuito al matematico olandese da Edsger W. Dijkstra nel suo manoscritto sui processi cooperanti sequenziali. rdf:langString
데커의 알고리즘(Dekker's algorithm)은 네덜란드의 수학자 테오도루스 데커가 상호 배제를 위해 고안한 병행 프로그래밍 알고리즘이다. 이 알고리즘은 의사소통을 위해 공유 메모리를 사용하여 두 프로세스(또는 스레드)가 하나의 자원을 혼란 없이 공유할 수 있게 한다. 데커의 알고리즘은 (test-and-set) 명령과 같은 원자적 명령이 없는 경우에도 사용할 수 있으며, 바쁜 대기(busy waiting) 알고리즘에 속한다. rdf:langString
Algorytm Dekkera – pierwszy algorytm poprawnie rozwiązujący problem wzajemnego wykluczania się równolegle działających procesów. Tylko jeden z nich może w danej chwili wykonywać ich wspólną sekcję krytyczną (zob. programowanie współbieżne). Rozwiązanie to zostało przypisane holenderskiemu matematykowi T. J. Dekkerowi przez Edsgera Dijkstrę w jego manuskrypcie na temat współdziałania procesów sekwencyjnych. Algorytm pozwala dwóm wątkom na bezkonfliktową pracę na danych pochodzących z jednego źródła przy użyciu do komunikacji między nimi jedynie pamięci dzielonej. rdf:langString
Алгоритм Деккера — первое известное корректное решение проблемы взаимного исключения в параллельном программировании. Эдсгер Дейкстра ссылается на голландского математика как на автора данного алгоритма в своей работе о межпроцессном взаимодействии. Он позволяет двум потокам выполнения совместно использовать неразделяемый ресурс без возникновения конфликтов, используя только общую память для коммуникации. rdf:langString
Алгоритм Декера — перший відомий правильний розв'язок задачі взаємного виключення в паралельному програмуванні. Едсгер Дейкстра посилається на голландського математика Теодора Декера як на його винахідника в своєму рукописі про взаємодію між процесами. Він дозволяє двом процесам спільно використовувати одновикористовний ресурс без конфліктів, використовуючи тільки спільну пам'ять для зв'язку. rdf:langString
Dekker's algorithm is the first known correct solution to the mutual exclusion problem in concurrent programming where processes only communicate via shared memory. The solution is attributed to Dutch mathematician Th. J. Dekker by Edsger W. Dijkstra in an unpublished paper on sequential process descriptions and his manuscript on cooperating sequential processes. It allows two threads to share a single-use resource without conflict, using only shared memory for communication. rdf:langString
El algoritmo de Dekker es un algoritmo de programación concurrente para exclusión mutua, que permite a dos procesos o hilos de ejecución compartir un recurso sin conflictos. Fue uno de los primeros algoritmos de exclusión mutua inventados, implementado por Edsger Dijkstra. Si ambos procesos intentan acceder a la sección crítica simultáneamente, el algoritmo elige un proceso según una variable de turno. Si el otro proceso está ejecutando en su sección crítica, deberá esperar su finalización. Condiciones • No hay prioridad entre procesos. • La capacidad de los equipos es irrelevante. Ventajas rdf:langString
デッカーのアルゴリズムはオランダ人数学者 T・J・デッカーの考案した相互排他のためのアルゴリズムである。これにより、共有メモリによる通信のみで、2つのプロセスが1つのリソースを競合することなく共有することができる。 厳密に交互にとっていく素朴なアルゴリズムを避けて発明された世界初の相互排他アルゴリズムの1つである。 ふたつのプロセスが同時に同じクリティカルセクションにアクセスしようとしたとき、このアルゴリズムはどちらのプロセスがアクセス権を得るかを決定する。もしもう一方のプロセスが既にクリティカルセクションに変更を加えていたら、その完了を待つ。 rdf:langString
rdf:langString Algorisme de Dekker
rdf:langString Dekker-Algorithmus
rdf:langString Algoritmo de Dekker
rdf:langString Dekker's algorithm
rdf:langString Algorithme de Dekker
rdf:langString Algoritma dekker
rdf:langString Algoritmo di Dekker
rdf:langString 데커의 알고리즘
rdf:langString デッカーのアルゴリズム
rdf:langString Algorytm Dekkera
rdf:langString Алгоритм Деккера
rdf:langString Алгоритм Декера
xsd:integer 36826
xsd:integer 1123217173
rdf:langString L'algorisme de Dekker, és un algorisme de programació concurrent que permet que dos processos accedeixin sense conflicte a un recurs compartit, utilitzant només memòria compartida per a comunicar-se. Aquest algorisme fou inventat pel matemàtic neerlandès i fou un dels primers algorismes dissenyats per garantir exclusió mútua.
rdf:langString Der Dekker-Algorithmus ist die älteste bekannte vollständige Lösung des Problems, den wechselseitigen Ausschluss (Mutex) in der dezentralen Steuerung von Prozessen (Prozesssynchronisation) zu gewährleisten. Er vermeidet gegenseitiges Blockieren (Deadlock) und gewährleistet, dass stets genau ein Prozess in einen kritischen Abschnitt gelangen kann (Sequentialisierung). Der Algorithmus wurde 1965 von dem niederländischen Mathematiker Theodorus Dekker formuliert. In der hier beschriebenen Form kann er aber nur zwei Prozesse wechselseitig ausschließen.
rdf:langString Dekker's algorithm is the first known correct solution to the mutual exclusion problem in concurrent programming where processes only communicate via shared memory. The solution is attributed to Dutch mathematician Th. J. Dekker by Edsger W. Dijkstra in an unpublished paper on sequential process descriptions and his manuscript on cooperating sequential processes. It allows two threads to share a single-use resource without conflict, using only shared memory for communication. It avoids the strict alternation of a naïve turn-taking algorithm, and was one of the first mutual exclusion algorithms to be invented.
rdf:langString El algoritmo de Dekker es un algoritmo de programación concurrente para exclusión mutua, que permite a dos procesos o hilos de ejecución compartir un recurso sin conflictos. Fue uno de los primeros algoritmos de exclusión mutua inventados, implementado por Edsger Dijkstra. Si ambos procesos intentan acceder a la sección crítica simultáneamente, el algoritmo elige un proceso según una variable de turno. Si el otro proceso está ejecutando en su sección crítica, deberá esperar su finalización. Condiciones • No hay prioridad entre procesos. • La capacidad de los equipos es irrelevante. • Si un proceso muere fuera de la región crítica, el algoritmo sigue funcionando. • Un bloqueo mutuo no se considera como solución válida. Existen cinco versiones del algoritmo Dekker, teniendo ciertos fallos los primeros cuatro. La versión 5 es la que trabaja más eficientemente, siendo una combinación de la 1 y la 4. * Versión 1: Alternancia estricta. Garantiza la exclusión mutua, pero su desventaja es que acopla los procesos fuertemente, esto significa que los procesos lentos atrasan a los procesos rápidos. * Versión 2: Problema interbloqueo. No existe la alternancia, aunque ambos procesos caen a un mismo estado y nunca salen de ahí. * Versión 3: Colisión región crítica no garantiza la exclusión mutua. Este algoritmo no evita que dos procesos puedan acceder al mismo tiempo a la región crítica. * Versión 4: Postergación indefinida. Aunque los procesos no están en interbloqueo, un proceso o varios se quedan esperando a que suceda un evento que tal vez nunca suceda. shared int cierto = 1;/* ''Definición de variables compartidas'' */ shared int bandera[2] = {0,0}; shared int turno = 0; while (cierto) { bandera[proc_id] = cierto; // Está listo para acceder a la Sección Crítica while (bandera[1-proc_id] == cierto) { // Mientras el otro esté procesando if (turno == 1-proc_id) { // si es su turno bandera[proc_id] = 0; // indicar que no está listo y while (turno == (1-proc_id)) {} // esperar activamente. bandera[proc_id] = 1; // Cuando terminó de esperar, está listo } } /* ''Sección crítica'' */ turno = 1-proc_id; // Indicar el turno del otro proceso bandera[proc_id] = 0; // Indicar que ya no está listo (para acceder a la Sección Crítica) /* ''Sección no crítica'' */ } Ventajas • Este algoritmo garantiza la exclusión mutua. • Garantiza la libertad de bloqueos mutuos. • Garantiza la libertad de inanición. • Es un algoritmo simple y portable. Desventajas • Solo puede manejar un máximo de dos procesos. • Hace uso de espera activa. • No suspende a los procesos que están esperando acceso. • Puede llegar a entrar en ciclos infinitos.
rdf:langString L'algorithme de Dekker est un algorithme d'exclusion mutuelle. Il est basé sur une approche par attente active et est divisé en deux parties, à savoir le protocole d'entrée dans la section critique et le protocole de sortie. L'algorithme présenté dans cet article est une version pouvant fonctionner avec N thread, version due à Edsger Dijkstra.
rdf:langString Algoritme Dekker adalah algoritme yang menjabarkan dua atau lebih proses tentang yang berbagi sumber yang sama tanpa adanya konflik. Algoritme ini diciptakan oleh , seorang matematikawan Belanda, yang diterapkan oleh Edsger W. Dijkstra.
rdf:langString デッカーのアルゴリズムはオランダ人数学者 T・J・デッカーの考案した相互排他のためのアルゴリズムである。これにより、共有メモリによる通信のみで、2つのプロセスが1つのリソースを競合することなく共有することができる。 厳密に交互にとっていく素朴なアルゴリズムを避けて発明された世界初の相互排他アルゴリズムの1つである。 ふたつのプロセスが同時に同じクリティカルセクションにアクセスしようとしたとき、このアルゴリズムはどちらのプロセスがアクセス権を得るかを決定する。もしもう一方のプロセスが既にクリティカルセクションに変更を加えていたら、その完了を待つ。 f0 := false f1 := false turn := 0 // or 1 p0: f0 := true p1: f1 := true while f1 = true { while f0 = true { if turn ≠ 0 { if turn ≠ 1 { f0 := false f1 := false while turn ≠ 0 { while turn ≠ 1 { } } f0 := true f1 := true } } } } // Start of Critical Section ・・・ // End of Critical Section turn := 1 turn := 0 f0 := false f1 := false
rdf:langString L'algoritmo di Dekker, noto anche come algoritmo di proiezione di Dijkstra, costituisce una soluzione completa al problema della mutua esclusione nella coordinazione decentrata di processi (sincronizzazione), impedendo lo stallo (deadlock) ed assicurando che soltanto un processo alla volta possa eseguire una sezione critica (serializzazione). Tale algoritmo è attribuito al matematico olandese da Edsger W. Dijkstra nel suo manoscritto sui processi cooperanti sequenziali.
rdf:langString 데커의 알고리즘(Dekker's algorithm)은 네덜란드의 수학자 테오도루스 데커가 상호 배제를 위해 고안한 병행 프로그래밍 알고리즘이다. 이 알고리즘은 의사소통을 위해 공유 메모리를 사용하여 두 프로세스(또는 스레드)가 하나의 자원을 혼란 없이 공유할 수 있게 한다. 데커의 알고리즘은 (test-and-set) 명령과 같은 원자적 명령이 없는 경우에도 사용할 수 있으며, 바쁜 대기(busy waiting) 알고리즘에 속한다.
rdf:langString Algorytm Dekkera – pierwszy algorytm poprawnie rozwiązujący problem wzajemnego wykluczania się równolegle działających procesów. Tylko jeden z nich może w danej chwili wykonywać ich wspólną sekcję krytyczną (zob. programowanie współbieżne). Rozwiązanie to zostało przypisane holenderskiemu matematykowi T. J. Dekkerowi przez Edsgera Dijkstrę w jego manuskrypcie na temat współdziałania procesów sekwencyjnych. Algorytm pozwala dwóm wątkom na bezkonfliktową pracę na danych pochodzących z jednego źródła przy użyciu do komunikacji między nimi jedynie pamięci dzielonej.
rdf:langString Алгоритм Деккера — первое известное корректное решение проблемы взаимного исключения в параллельном программировании. Эдсгер Дейкстра ссылается на голландского математика как на автора данного алгоритма в своей работе о межпроцессном взаимодействии. Он позволяет двум потокам выполнения совместно использовать неразделяемый ресурс без возникновения конфликтов, используя только общую память для коммуникации.
rdf:langString Алгоритм Декера — перший відомий правильний розв'язок задачі взаємного виключення в паралельному програмуванні. Едсгер Дейкстра посилається на голландського математика Теодора Декера як на його винахідника в своєму рукописі про взаємодію між процесами. Він дозволяє двом процесам спільно використовувати одновикористовний ресурс без конфліктів, використовуючи тільки спільну пам'ять для зв'язку.
xsd:nonNegativeInteger 8444

data from the linked data cloud