About: Reentrancy (computing)     Goto   Sponge   NotDistinct   Permalink

An Entity of Type : yago:WikicatProgrammingParadigms, within Data Space : dbpedia.org associated with source document(s)
QRcode icon
http://dbpedia.org/describe/?url=http%3A%2F%2Fdbpedia.org%2Fresource%2FReentrancy_%28computing%29

In computing, a computer program or subroutine is called reentrant if multiple invocations can safely run concurrently on multiple processors, or on a single processor system, where a reentrant procedure can be interrupted in the middle of its execution and then safely be called again ("re-entered") before its previous invocations complete execution. The interruption could be caused by an internal action such as a jump or call, or by an external action such as an interrupt or signal, unlike recursion, where new invocations can only be caused by internal call.

AttributesValues
rdf:type
rdfs:label
  • Codi reentrant (ca)
  • Eintrittsinvarianz (de)
  • Reentrancia (informática) (es)
  • Réentrance (fr)
  • Codice rientrante (it)
  • 재진입성 (ko)
  • リエントラント (ja)
  • Reentrancy (computing) (en)
  • Wielobieżność (pl)
  • Реентерабельность (ru)
  • Reentrância (pt)
  • Повторновикористовна підпрограма (uk)
  • 可重入 (zh)
rdfs:comment
  • 컴퓨터 프로그램 또는 서브루틴에 재진입성(Reentrancy)이 있으면, 이 서브루틴은 동시에 안전하게 실행 가능하다. 즉 재진입이 가능한 루틴은 동시에 접근해도 언제나 같은 실행 결과를 보장한다. 재진입이 가능하려면 함수는 다음 조건을 만족하여야 한다. * 정적 (전역) 변수를 사용하면 안 된다. * 정적 (전역) 변수의 주소를 반환하면 안 된다. * 호출자가 호출 시 제공한 매개변수만으로 동작해야 한다. * 싱글턴 객체의 잠금에 의존하면 안 된다. * 다른 비-재진입 함수를 호출하면 안 된다. 여러 '사용자/객체/프로세스'와 멀티프로세싱이 대개 재진입 코드의 제어를 복잡하게 만든다. 또한 입출력 코드는 디스크나 터미널과 같은 공유 자원에 의존하고 있기 때문에 보통은 재진입성이 없다. 재진입성은 함수형 프로그래밍의 핵심 개념이다. (ko)
  • Wielobieżność (ang. reentrancy) – jest to cecha funkcji. Funkcja jest określana jako wielobieżna jeżeli wykonywanie jej może zostać przerwane (poprzez przerwanie lub wywołanie innej funkcji wewnątrz ciała funkcji), a potem może ona zostać (bezpiecznie) ponownie wywołana zanim poprzednie wywołanie zostanie zakończone. Po zakończeniu drugiego wywołania, można wrócić do przerwanego wywołania, a wykonywanie go może bezpiecznie kontynuować. Funkcje wielobieżne można więc wywoływać rekurencyjnie. (pl)
  • En programació la reentrància es refereix a la qualitat d'una subrutina per a ser executada concurrentment d'una forma segura, és a dir, la subrutina es pot invocar mentre s'està executant. Per a tenir aquesta qualitat, la subrutina no pot emmagatzemar (globals) ni tampoc constants, no ha de retornar la direcció de les dades estàtiques, ni de les constants; ha de treballar només amb les dades proporcionades pel subprograma que l'ha invocat, no ha de tenir exclusió mútua dels recursos construïts sobre el model de Singleton, i al seu torn només ha invocar subrutines que també compleixen amb les qualitats esmentades, és a dir que també siguin reentrants (ca)
  • Der Begriff Eintrittsinvarianz wird in einer (teilweise maschinellen) deutschen Übersetzung des US-englischen Artikels Reentrancy von Microsoft benutzt. Damit wird ein Programm-Attribut beschrieben, welches die mehrfache (quasi-gleichzeitige) Nutzung eines Programm-Codes erlaubt. Eine verständlichere Übersetzung wäre wiedereintrittsfähig wie bereits im folgenden Text oder die native Nutzung von reentrant als gängigen Fachausdruck. Eintrittsinvariante Programmkonstrukte sind die Basis für viele Multitasking-Systeme (Threadsicherheit). (de)
  • En informática, un programa informático o subrutina se llama reentrante si puede ser interrumpido en medio de su ejecución y volver a llamarse de forma segura ("re-entrar") antes de que las invocaciones anteriores completen su ejecución. La interrupción puede ser causada por una acción interna como un salto o llamada, o por una acción externa como una interrupción o señal. Una vez que la invocación re-entrante completa, las invocaciones anteriores reanudarán su ejecución de forma correcta. (es)
  • In computing, a computer program or subroutine is called reentrant if multiple invocations can safely run concurrently on multiple processors, or on a single processor system, where a reentrant procedure can be interrupted in the middle of its execution and then safely be called again ("re-entered") before its previous invocations complete execution. The interruption could be caused by an internal action such as a jump or call, or by an external action such as an interrupt or signal, unlike recursion, where new invocations can only be caused by internal call. (en)
  • In informatica, il codice di un programma o di una routine è detto rientrante se è progettato in modo che una singola copia del codice in memoria possa essere condivisa ed eseguita contemporaneamente e senza risultati inaspettati da utenti multipli o processi separati. La programmazione rientrante è vitale per molti sistemi multitasking (vedi thread-safe). Affinché una routine o comunque una parte di codice sia rientrante deve soddisfare questi requisiti: (it)
  • リエントラント(英: reentrant / re-entrant、再入可能)およびリエントランシー(英: reentrancy / re-entrancy、再入可能性)とは、あるプログラムやサブルーチンの実行を完了する前に、割り込みなどにより、同じプログラムやサブルーチンを実行しても安全だという性質を指す。割り込みは分岐や呼び出しなどの内部的な動きによって生じる場合もあるし、ハードウェア割り込みやシグナルなどの外部の動きによって生じる場合もある。割り込みの実行を完了後に、割り込み前の実行に影響を与えずに継続できる。 この定義はシングルスレッドのプログラミング環境が起源であり、ハードウェア割り込みで割り込まれた制御の流れが割り込みサービスルーチン (ISR) に転送されることから生まれた。ISRが使用するサブルーチンは割り込みをきっかけとして実行される可能性があるため、リエントラントでなければならない。OSのカーネルが使用するサブルーチンの多くは、カーネルで確保済みのリソースを超えられない制限がありリエントラントではない。そのためISRでできることは限られている。例えば、一般にISRからファイルシステムにはアクセスできないし、場合によってはヒープ領域も確保できない。 (ja)
  • En informatique, la réentrance est la propriété pour une fonction d'être utilisable simultanément par plusieurs tâches utilisatrices. La réentrance permet d'éviter la duplication en mémoire vive d'un programme utilisé simultanément par plusieurs utilisateurs. Si une fonction de plusieurs threads doit accéder à une variable globale, il suffit de l'encadrer par des Mutex. L'écriture de code réentrant était autrefois[Quand ?] une tâche très ardue. Elle s'est simplifiée avec les langages actuels qui autorisent : (fr)
  • Компьютерная программа в целом или её отдельная процедура называется реентера́бельной (от англ. reentrant — повторно входимый), если она разработана таким образом, что одна и та же копия инструкций программы в памяти может быть совместно использована несколькими пользователями или процессами. При этом второй пользователь может вызвать реентерабельный код до того, как с ним завершит работу первый пользователь и это как минимум не должно привести к ошибке, а при корректной реализации не должно вызвать потери вычислений (то есть не должно появиться необходимости выполнять уже выполненные фрагменты кода). (ru)
  • Em programação, reentrância refere-se a qualidade de uma sub-rotina ser executada concorrentemente de forma segura, isto é, a subrotina pode ser invocada enquanto está em execução. Para atender essa qualidade, a sub-rotina não deve armazenar dados estáticos (globais) não constantes, não deve retornar o endereço de dados estáticos não constantes, deve trabalhar somente com os dados fornecidos pela subrotina que a invocou, não deve contar com exclusão mútua para recursos construídos com o modelo singleton e só deve invocar sub-rotinas que também atendam as qualidades anteriores, isto é, que também sejam reentrantes. (pt)
  • Комп'ютерна програма або підпрограма є повторновикористовною або інакше повторновхідною (англ. reentrant), якщо вона може бути безпечно викликана знову до завершення роботи її попереднього виклику (тобто вона може бути безпечно виконана паралельно). Щоб бути повтороновикористовною, комп'ютерна програма або підпрограма: (uk)
  • 若一個程式或副程式可以「在任意時刻被中斷然後作業系統調度執行另一段程式碼,這段程式碼又使用了該副程式不會出錯」,則稱其為可重入(reentrant 或 re-entrant)的。即當該副程式正在運作時,執行线程可以再次進入並執行它,仍然可得到符合設計時所預期的結果。與多執行緒併發執行的執行緒安全不同,可重入強調對單一執行緒執行時重新進入同一個子程序仍然是安全的。 可重入概念是在單執行緒作業系統的時代提出的。一個副程式的重入,可能由於自身原因,如執行了jmp或者call,類似于子程序的遞迴调用;或者由於作業系统的中斷回應。UNIX系统的的处理,即子程序被中断处理程序或者signal处理程序调用。所以,可重入也可称作“异步信号安全”。这里的异步是指信号中断可发生在任意时刻。 重入的子程序,按照后进先出线性序依次执行。 若一个函数是可重入的,則该函数應當满足下述条件: * 不能含有静态(全域)非常量数据。 * 不能返回静态(全域)非常量数据的地址。 * 只能处理由调用者提供的数据。 * 不能依赖于单实例模式资源的锁。 * 调用(call)的函数也必需是可重入的。 上述条件就是要求可重入函数使用的所有变量都保存在呼叫堆疊的目前(frame)上,因此同一执行线程重入执行该函数时加载了新的函数帧,与前一次执行该函数时使用的函数帧不冲突、不互相覆盖,从而保证了可重入执行安全。 (zh)
dcterms:subject
Wikipage page ID
Wikipage revision ID
Link from a Wikipage to another Wikipage
Link from a Wikipage to an external page
Faceted Search & Find service v1.17_git139 as of Feb 29 2024


Alternative Linked Data Documents: ODE     Content Formats:   [cxml] [csv]     RDF   [text] [turtle] [ld+json] [rdf+json] [rdf+xml]     ODATA   [atom+xml] [odata+json]     Microdata   [microdata+json] [html]    About   
This material is Open Knowledge   W3C Semantic Web Technology [RDF Data] Valid XHTML + RDFa
OpenLink Virtuoso version 08.03.3330 as of Mar 19 2024, on Linux (x86_64-generic-linux-glibc212), Single-Server Edition (378 GB total memory, 53 GB memory in use)
Data on this page belongs to its respective rights holders.
Virtuoso Faceted Browser Copyright © 2009-2024 OpenLink Software