An Entity of Type: software, from Named Graph: http://dbpedia.org, within Data Space: dbpedia.org

In concurrent programming, a monitor is a synchronization construct that allows threads to have both mutual exclusion and the ability to wait (block) for a certain condition to become false. Monitors also have a mechanism for signaling other threads that their condition has been met. A monitor consists of a mutex (lock) object and condition variables. A condition variable essentially is a container of threads that are waiting for a certain condition. Monitors provide a mechanism for threads to temporarily give up exclusive access in order to wait for some condition to be met, before regaining exclusive access and resuming their task.

Property Value
dbo:abstract
  • En la programació paral·lela, els monitors són objectes destinats a ser usats sense perill per més d'un fil d'execució. La característica que principalment els defineix és que els seus mètodes són executats amb exclusió mútua. Això significa, que en cada moment en el temps, un fil com a màxim pot estar executant qualsevol dels seus mètodes. Aquesta exclusió mútua simplifica el raonament d'implementar monitors en lloc de codi de ser executat en paral·lel. En l'estudi i ús dels semàfors es pot veure que les crides a les funcions necessàries per utilitzar-queden repartides en el codi del programa, fent difícil corregir errors i assegurar el bon funcionament dels algorismes. Per evitar aquests inconvenients es van desenvolupar els monitors. El concepte de monitor va ser definit per primera vegada per Charles Antony Richard Hoare en un article de l'any 1974. L'estructura dels monitors s'ha implementat en diversos llenguatges de programació, inclòs , , i Java, i com a biblioteca de programes. (ca)
  • Monitor je synchronizační primitivum, které se používá pro řízení přístupu ke sdíleným prostředkům. Jeho zvláštností je, že jde o speciální konstrukci programovacího jazyka (musí ho tedy implementovat překladač), typicky implementovanou pomocí jiného synchronizačního primitiva. Výhodou monitoru oproti jiným primitivům je jeho vysokoúrovňovost – snadněji se používá a je bezpečnější. Při jeho použití je méně pravděpodobné, že programátor udělá chybu. Monitor se skládá z dat, ke kterým je potřeba řídit přístup, a množiny funkcí, které nad těmito daty operují. (cs)
  • Ein Monitor in der Informatik ist ein programmiersprachliches Konzept zur Synchronisation von Zugriffen zeitlich verschränkt oder parallel laufender Prozesse oder Threads auf gemeinsam genutzten Datenstrukturen oder Ressourcen. Inkonsistente Zustände der Datenstrukturen werden vermieden, ohne dass ProgrammiererSynchronisationsprimitive wie z. B. Semaphore explizit nutzen müssen. Ein wechselseitiger Ausschluss bei Zugriffen auf die gemeinsam genutzte Datenstruktur wird erreicht, indem ein Compiler bei der Übersetzung eines Programmteils, das vom Programmierer mit Elementen der Programmiersprache als Monitor gekennzeichnet wurde, entsprechende Synchronisationsprimitive einfügt. Das Konzept wird z. B. von den Programmiersprachen Ada, Modula, Concurrent Pascal oder Java realisiert. (de)
  • Konkurrentzian, monitorea hariek erabil dezaketen objetua edo moduloa da. Bere bereizgarri nagusia metodoak elkar-bazterketarekin exekutatzen direla da. Horrela, momentu jakin batean, hariek ezin dute monitorearen metodoak deitu beste hari batek monitorearen metodo bat erabiltzen ari denean. (eu)
  • En la programación paralela, los monitores son estructuras de datos abstractas destinadas a ser usadas sin peligro por más de un hilo de ejecución. La característica que principalmente los define es que sus métodos son ejecutados con exclusión mutua. Lo que significa, que en cada momento en el tiempo, un hilo como máximo puede estar ejecutando cualquiera de sus métodos. Esta exclusión mutua simplifica el razonamiento de implementar monitores en lugar de código a ser ejecutado en paralelo. En el estudio y uso de los semáforos se puede ver que las llamadas a las funciones necesarias para utilizarlos quedan repartidas en el código del programa, haciendo difícil corregir errores y asegurar el buen funcionamiento de los algoritmos. Para evitar estos inconvenientes se desarrollaron los monitores. El concepto de monitor fue definido por primera vez por Charles Antony Richard Hoare en un artículo del año 1974.​ La estructura de los monitores se ha implementado en varios lenguajes de programación, incluido , Modula-2, Modula-3 y Java, y como biblioteca de programas. (es)
  • In concurrent programming, a monitor is a synchronization construct that allows threads to have both mutual exclusion and the ability to wait (block) for a certain condition to become false. Monitors also have a mechanism for signaling other threads that their condition has been met. A monitor consists of a mutex (lock) object and condition variables. A condition variable essentially is a container of threads that are waiting for a certain condition. Monitors provide a mechanism for threads to temporarily give up exclusive access in order to wait for some condition to be met, before regaining exclusive access and resuming their task. Another definition of monitor is a thread-safe class, object, or module that wraps around a mutex in order to safely allow access to a method or variable by more than one thread. The defining characteristic of a monitor is that its methods are executed with mutual exclusion: At each point in time, at most one thread may be executing any of its methods. By using one or more condition variables it can also provide the ability for threads to wait on a certain condition (thus using the above definition of a "monitor"). For the rest of this article, this sense of "monitor" will be referred to as a "thread-safe object/class/module". Monitors were invented by Per Brinch Hansen and C. A. R. Hoare, and were first implemented in Brinch Hansen's Concurrent Pascal language. (en)
  • Un moniteur est une approche pour synchroniser deux ou plusieurs tâches qui utilisent des ressources partagées, habituellement des appareils séparés (imprimantes) ou des ensembles de variables. Autrefois, les systèmes d'exploitation se réduisaient à un simple programme moniteur enchainant l'exécution des autres (par exemple le DOS de l'IBM 360 à la fin des années 1960). Ce sens est aujourd'hui inusité et n'a rien à voir avec le sens actuel (synchronisation). (fr)
  • Un monitor, nella programmazione, è un costrutto di sincronizzazione di un linguaggio di alto livello. Un'istanza di un tipo monitor può essere utilizzata da due o più processi o thread per rendere mutuamente esclusivo l'accesso a risorse condivise. Il vantaggio nell'utilizzo del monitor deriva dal fatto che non si deve codificare esplicitamente alcun meccanismo per realizzare la mutua esclusione, giacché il monitor permette che un solo processo sia attivo al suo interno. (it)
  • 전산학에서 모니터(monitor)는 프로세스 또는 스레드를 동기화하는 방법 중 하나로서, 그 방법으로 활용하기 위해 구현된 기능 또는 모듈을 뜻하기도 한다. 주로 고급 언어에서 이 기능을 지원하며, 한번에 하나의 프로세스만 모니터에서 활동하도록 보장해준다. 예를 들어, 자바에서 스레드를 동기화하는 방법으로 모니터가 사용할 수 있다. (ko)
  • Monitor – obiekt, który może być bezpiecznie używany przez kilka wątków. Metody monitora chronione są przez muteksy, przez co w dowolnym momencie czasowym z dowolnej metody może korzystać tylko jeden wątek naraz. Upraszcza to budowę obiektów, zwalniając programistę z konieczności implementacji skomplikowanych wykluczeń. Monitory umożliwiają także wątkom czasowe zwolnienie wyłącznego dostępu podczas oczekiwania na spełnienie jakiegoś warunku. W tym czasie inny wątek może bezpiecznie wykonać swoje zadanie, a gdy warunek zostanie spełniony, poprzedni wątek z powrotem przejmie wyłączną kontrolę i dokończy pracę. Dwa wątki mogą także sygnalizować sobie, że warunek został spełniony. Monitory zostały wynalezione przez C.A.R. Hoare’a oraz i zostały po raz pierwszy zaimplementowane w języku . (pl)
  • モニタ(Monitor)は、リソース(何らかのハードウェア機器や変数群)を共有する複数のタスクの同期を実現する手法である。 が発明し、 言語に最初に実装され、Solo Operating System でのプロセス間通信方式として使われた。 (ja)
  • Een monitor in het gedistribueerd programmeren is een synchronisatiemechanisme dat aangeboden wordt door de programmeertaal, het besturingssysteem of de hardware waarop of waarmee een multiprogramma uitgevoerd wordt. De basis van alle synchronisatie is de semafoor, waarmee ieder synchronisatieprobleem fijnmazig op te lossen valt. Een monitor is een synchronisatie-mechanisme met een hoger abstractieniveau, waarin de synchronisatie op een minder fijnmazig niveau wordt uitgevoerd voor de programmeur in plaats van gepland door de programmeur zelf. Om van een monitor gebruik te maken, moet een programmeur meestal een (deel van) zijn programma speciaal merken om gesynchroniseerd te worden. Bij het uitvoeren van het multiprogramma verloopt het uitvoeren van dit aangemerkte deel dan via de monitor -- een thread of proces dat de aangemerkte code uit wil voeren, meldt zich aan bij de monitor en mag pas verdergaan als de monitor toestemming geeft. De monitor zorgt ervoor dat ten hoogste een thread of proces op ieder moment toestemming heeft. Door de algemene manier van werken van een monitor, is de controle over de synchronisatie meestal groffer dan bereikt kan worden via direct gebruik van seinpalen. Toch is de monitor zeer populair, aangezien synchronisatie van componenten in een multiprogramma door veel programmeurs als moeilijk wordt ervaren. (nl)
  • Em computação concorrente, monitor é uma técnica para sincronizar duas ou mais tarefas que compartilham um recurso em comum, geralmente um dispositivo de hardware ou uma região da memória. Com um modelo de concorrência baseado em monitores, o compilador ou o interpretador podem inserir mecanismos de exclusão mútua transparentemente em vez do programador ter acesso às primitivas para tal, tendo que realizar o bloqueio e desbloqueio de recursos manualmente. Foi inventado por Per Brinch Hansen, originalmente implementado na linguagem e usada para estruturar a comunicação entre processos na linguagem . O monitor consiste de um conjunto de procedimentos para permitir a manipulação de um recurso compartilhado, uma trava de exclusão mútua, as variáveis associadas ao recurso e uma invariante que define as premissas para evitar disputa de recursos. O exemplo a seguir demonstra o uso de um monitor para realizar transações de banco: Monitor conta_bancária Inteiro balanço ← 0 Rotina saque( Inteiro quantia ) Se quantia < 0 Então erro "Quantia não pode ser negativa" Senão Se balanço < quantia Então erro "Saldo insuficiente" Senão balanço ← balanço - quantia FimSe FimRotina Rotina depósito( Inteiro quantia ) Se quantia < 0 Então erro "Quantia não pode ser negativa" Senão balanço ← balanço + quantia FimSe FimRotinaFimMonitor Nesse caso, a invariante do monitor simplesmente define que o balanço deve refletir todas as operações do passado antes que outra operação comece. Essa condição implícita pode ser explicitada através de comentários, e a exclusão mútua é feita pelo compilador. (pt)
  • 監視器 (英語:Monitors,也称为监视器) 是一种程序结构,结构内的多个子程序(对象或模块)形成的多个工作线程互斥访问共享資源。這些共享資源一般是或一群變數。管程实现了在一个时间点,最多只有一个线程在执行管程的某个子程序。与那些通过修改数据结构实现互斥访问的并发程序设计相比,管程实现很大程度上简化了程序设计。 管程提供了一种机制,线程可以临时放弃互斥访问,等待某些条件得到满足后,重新获得执行权恢复它的互斥访问。 管程是东尼·霍尔与泊·派克·漢森提出的,并由泊·派克·漢森首次在中实现。东尼·霍尔证明了這與信号量是等價的。管程在当时也被用于环境中的进程間通訊。 在程式語言,,Modula-2,Modula-3,Mesa以及Java中都提供這個功能。 (zh)
  • Монітор — в мовах програмування, це високорівнева конструкція для отримання ексклюзивного доступу до спільних ресурсів. Монітор реалізується за допомогою м'ютекса та умовних змінних. Монітор був винайдений П.Б. Хансеном та Тоні Гоаром та вперше був застосований в мові Concurrent Pascal. (uk)
  • Монитор — в языках программирования высокоуровневый механизм взаимодействия и синхронизации процессов, обеспечивающий доступ к разделяемым ресурсам. Подход к синхронизации двух или более компьютерных задач, использующих общий ресурс, обычно аппаратуру или набор переменных. При многозадачности, основанной на мониторах, компилятор или интерпретатор прозрачно для программиста вставляет код блокировки-разблокировки в оформленные соответствующим образом процедуры, избавляя программиста от явного обращения к примитивам синхронизации. (ru)
dbo:thumbnail
dbo:wikiPageExternalLink
dbo:wikiPageID
  • 1367789 (xsd:integer)
dbo:wikiPageLength
  • 69183 (xsd:nonNegativeInteger)
dbo:wikiPageRevisionID
  • 1122802829 (xsd:integer)
dbo:wikiPageWikiLink
dbp:wikiPageUsesTemplate
dcterms:subject
gold:hypernym
rdf:type
rdfs:comment
  • Monitor je synchronizační primitivum, které se používá pro řízení přístupu ke sdíleným prostředkům. Jeho zvláštností je, že jde o speciální konstrukci programovacího jazyka (musí ho tedy implementovat překladač), typicky implementovanou pomocí jiného synchronizačního primitiva. Výhodou monitoru oproti jiným primitivům je jeho vysokoúrovňovost – snadněji se používá a je bezpečnější. Při jeho použití je méně pravděpodobné, že programátor udělá chybu. Monitor se skládá z dat, ke kterým je potřeba řídit přístup, a množiny funkcí, které nad těmito daty operují. (cs)
  • Ein Monitor in der Informatik ist ein programmiersprachliches Konzept zur Synchronisation von Zugriffen zeitlich verschränkt oder parallel laufender Prozesse oder Threads auf gemeinsam genutzten Datenstrukturen oder Ressourcen. Inkonsistente Zustände der Datenstrukturen werden vermieden, ohne dass ProgrammiererSynchronisationsprimitive wie z. B. Semaphore explizit nutzen müssen. Ein wechselseitiger Ausschluss bei Zugriffen auf die gemeinsam genutzte Datenstruktur wird erreicht, indem ein Compiler bei der Übersetzung eines Programmteils, das vom Programmierer mit Elementen der Programmiersprache als Monitor gekennzeichnet wurde, entsprechende Synchronisationsprimitive einfügt. Das Konzept wird z. B. von den Programmiersprachen Ada, Modula, Concurrent Pascal oder Java realisiert. (de)
  • Konkurrentzian, monitorea hariek erabil dezaketen objetua edo moduloa da. Bere bereizgarri nagusia metodoak elkar-bazterketarekin exekutatzen direla da. Horrela, momentu jakin batean, hariek ezin dute monitorearen metodoak deitu beste hari batek monitorearen metodo bat erabiltzen ari denean. (eu)
  • Un moniteur est une approche pour synchroniser deux ou plusieurs tâches qui utilisent des ressources partagées, habituellement des appareils séparés (imprimantes) ou des ensembles de variables. Autrefois, les systèmes d'exploitation se réduisaient à un simple programme moniteur enchainant l'exécution des autres (par exemple le DOS de l'IBM 360 à la fin des années 1960). Ce sens est aujourd'hui inusité et n'a rien à voir avec le sens actuel (synchronisation). (fr)
  • Un monitor, nella programmazione, è un costrutto di sincronizzazione di un linguaggio di alto livello. Un'istanza di un tipo monitor può essere utilizzata da due o più processi o thread per rendere mutuamente esclusivo l'accesso a risorse condivise. Il vantaggio nell'utilizzo del monitor deriva dal fatto che non si deve codificare esplicitamente alcun meccanismo per realizzare la mutua esclusione, giacché il monitor permette che un solo processo sia attivo al suo interno. (it)
  • 전산학에서 모니터(monitor)는 프로세스 또는 스레드를 동기화하는 방법 중 하나로서, 그 방법으로 활용하기 위해 구현된 기능 또는 모듈을 뜻하기도 한다. 주로 고급 언어에서 이 기능을 지원하며, 한번에 하나의 프로세스만 모니터에서 활동하도록 보장해준다. 예를 들어, 자바에서 스레드를 동기화하는 방법으로 모니터가 사용할 수 있다. (ko)
  • モニタ(Monitor)は、リソース(何らかのハードウェア機器や変数群)を共有する複数のタスクの同期を実現する手法である。 が発明し、 言語に最初に実装され、Solo Operating System でのプロセス間通信方式として使われた。 (ja)
  • 監視器 (英語:Monitors,也称为监视器) 是一种程序结构,结构内的多个子程序(对象或模块)形成的多个工作线程互斥访问共享資源。這些共享資源一般是或一群變數。管程实现了在一个时间点,最多只有一个线程在执行管程的某个子程序。与那些通过修改数据结构实现互斥访问的并发程序设计相比,管程实现很大程度上简化了程序设计。 管程提供了一种机制,线程可以临时放弃互斥访问,等待某些条件得到满足后,重新获得执行权恢复它的互斥访问。 管程是东尼·霍尔与泊·派克·漢森提出的,并由泊·派克·漢森首次在中实现。东尼·霍尔证明了這與信号量是等價的。管程在当时也被用于环境中的进程間通訊。 在程式語言,,Modula-2,Modula-3,Mesa以及Java中都提供這個功能。 (zh)
  • Монітор — в мовах програмування, це високорівнева конструкція для отримання ексклюзивного доступу до спільних ресурсів. Монітор реалізується за допомогою м'ютекса та умовних змінних. Монітор був винайдений П.Б. Хансеном та Тоні Гоаром та вперше був застосований в мові Concurrent Pascal. (uk)
  • Монитор — в языках программирования высокоуровневый механизм взаимодействия и синхронизации процессов, обеспечивающий доступ к разделяемым ресурсам. Подход к синхронизации двух или более компьютерных задач, использующих общий ресурс, обычно аппаратуру или набор переменных. При многозадачности, основанной на мониторах, компилятор или интерпретатор прозрачно для программиста вставляет код блокировки-разблокировки в оформленные соответствующим образом процедуры, избавляя программиста от явного обращения к примитивам синхронизации. (ru)
  • En la programació paral·lela, els monitors són objectes destinats a ser usats sense perill per més d'un fil d'execució. La característica que principalment els defineix és que els seus mètodes són executats amb exclusió mútua. Això significa, que en cada moment en el temps, un fil com a màxim pot estar executant qualsevol dels seus mètodes. Aquesta exclusió mútua simplifica el raonament d'implementar monitors en lloc de codi de ser executat en paral·lel. (ca)
  • En la programación paralela, los monitores son estructuras de datos abstractas destinadas a ser usadas sin peligro por más de un hilo de ejecución. La característica que principalmente los define es que sus métodos son ejecutados con exclusión mutua. Lo que significa, que en cada momento en el tiempo, un hilo como máximo puede estar ejecutando cualquiera de sus métodos. Esta exclusión mutua simplifica el razonamiento de implementar monitores en lugar de código a ser ejecutado en paralelo. (es)
  • In concurrent programming, a monitor is a synchronization construct that allows threads to have both mutual exclusion and the ability to wait (block) for a certain condition to become false. Monitors also have a mechanism for signaling other threads that their condition has been met. A monitor consists of a mutex (lock) object and condition variables. A condition variable essentially is a container of threads that are waiting for a certain condition. Monitors provide a mechanism for threads to temporarily give up exclusive access in order to wait for some condition to be met, before regaining exclusive access and resuming their task. (en)
  • Een monitor in het gedistribueerd programmeren is een synchronisatiemechanisme dat aangeboden wordt door de programmeertaal, het besturingssysteem of de hardware waarop of waarmee een multiprogramma uitgevoerd wordt. De basis van alle synchronisatie is de semafoor, waarmee ieder synchronisatieprobleem fijnmazig op te lossen valt. Een monitor is een synchronisatie-mechanisme met een hoger abstractieniveau, waarin de synchronisatie op een minder fijnmazig niveau wordt uitgevoerd voor de programmeur in plaats van gepland door de programmeur zelf. (nl)
  • Em computação concorrente, monitor é uma técnica para sincronizar duas ou mais tarefas que compartilham um recurso em comum, geralmente um dispositivo de hardware ou uma região da memória. Com um modelo de concorrência baseado em monitores, o compilador ou o interpretador podem inserir mecanismos de exclusão mútua transparentemente em vez do programador ter acesso às primitivas para tal, tendo que realizar o bloqueio e desbloqueio de recursos manualmente. O exemplo a seguir demonstra o uso de um monitor para realizar transações de banco: (pt)
  • Monitor – obiekt, który może być bezpiecznie używany przez kilka wątków. Metody monitora chronione są przez muteksy, przez co w dowolnym momencie czasowym z dowolnej metody może korzystać tylko jeden wątek naraz. Upraszcza to budowę obiektów, zwalniając programistę z konieczności implementacji skomplikowanych wykluczeń. Monitory zostały wynalezione przez C.A.R. Hoare’a oraz i zostały po raz pierwszy zaimplementowane w języku . (pl)
rdfs:label
  • Monitor (concurrència) (ca)
  • Monitor (synchronizace) (cs)
  • Monitor (Informatik) (de)
  • Monitor (concurrencia) (es)
  • Monitore (konkurrentzia) (eu)
  • Monitor (sincronizzazione) (it)
  • Moniteur (programmation) (fr)
  • Monitor (synchronization) (en)
  • 모니터 (동기화) (ko)
  • モニタ (同期) (ja)
  • Monitor (gedistribueerd programmeren) (nl)
  • Monitor (programowanie współbieżne) (pl)
  • Monitor (concorrência) (pt)
  • Монитор (синхронизация) (ru)
  • 監視器 (程序同步化) (zh)
  • Монітор (синхронізація) (uk)
owl:sameAs
prov:wasDerivedFrom
foaf:depiction
foaf:isPrimaryTopicOf
is dbo:knownFor of
is dbo:wikiPageDisambiguates of
is dbo:wikiPageRedirects of
is dbo:wikiPageWikiLink of
is foaf:primaryTopic of
Powered by OpenLink Virtuoso    This material is Open Knowledge     W3C Semantic Web Technology     This material is Open Knowledge    Valid XHTML + RDFa
This content was extracted from Wikipedia and is licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License