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

In computer science, a thread of execution is the smallest sequence of programmed instructions that can be managed independently by a scheduler, which is typically a part of the operating system. The implementation of threads and processes differs between operating systems, but in most cases a thread is a component of a process. Multiple threads can exist within one process, executing concurrently and sharing resources such as memory, while different processes do not share these resources. In particular, the threads of a process share its executable code and the values of its dynamically allocated variables and non-thread-local global variables at any given time.

Property Value
dbo:abstract
  • في المعلوماتية والحوسبة، الخيط (بالإنجليزية: Thread)‏ أو سلسلة أو شريط التعليمات (بالإنجليزية: thread of execution)‏ أو الخيوط الحاسوبية (بالإنجليزية: Threads)‏ هو عبارة عن مجموعة من التعليمات التي تشكل مساراً لتنفيذ العملية وبما أنه مجرد مسار فإنه لا يحتاج لموارد خاصة به حيث أنه يستخدم موارد العملية ذاتها. تجعل الخيوط البرنامج الحاسوبي يبدو وكأنه يقوم بأكثر من بشكل متزامن، لكن إذا كانت وحدة المعالجة المركزية بأكثر من نواة فانه يقوم بعمل تزامن حقيقي، فعلى سبيل المثال يمكن للبرنامج الإبقاء على واجهة المستخدم المرئية تتفاعل مع المستخدم على الرغم من قيامه بمهمة أخرى كالاتصال بمخدم. تتميز الخيوط عن بشكل عام في طريقة إنشاء سلسلة التعليمات وطريقة مشاركتها للمصادر وأسلوب تنفيذ المعالج لها بشكل مختلف عن العمليات لكن هذه الفوارق في النهاية تختلف حسب نظام التشغيل. يمكن تنفيذ خيوط تعليمات متعددة بشكل متوازٍ على نفس المعالج وهذا ما يدعى بالتنفيذ المتعدد للخيوط (بالإنجليزية: multithreading)‏ ويحدث عن طريق computer multitasking أو ما يدعى بتجزئة الوقت time slicing وحيث يقوم معالج مركزي بالتبديل بين سلاسل التعليمات المختلفة. (ضمن هذا المفهوم التنفيذ ليس متزامنا بالنسبة لمعالج واحد لكننا نعتبره تزامنا مزيفا لأن التبديل يتم بسرعة كبيرة تعطينا انطباع بوهم التزامن)، بالمقابل يمكننا انجاز تزامن حقيقي عن طريق الاستعانة بحاسوب متعدد المعالجات أو معالجات متعددة الأنوية . في الوقت الراهن، العديد من أنظمة التشغيل تدعم تجزئة الزمن وتعدد المهام، أو التنفيذ متعدد المعالجات multiprocessor threading عن طريق scheduler. تمكن أنظمة التشغيل المبرمجين من التعامل مع عدة سلاسل تعليمات عن طريق واجهة system call. بعض التطبيقات لهذا الموضوع يدعى سلسلة تعليمات النواة kernel thread حيث تكون العمليات الخفيفة lightweight process أنماطا خاصة من سلاسل تعليمات النواة والتي تتشارك بنفس الحالة ونفس المعلومات. ويبقى المبرمجون قادرين على تطبيق سَلسَلة التعليمات threading عن طريق المؤقتات، الإشارات، أو وسائل أخرى لتفسير تسلسل تنفيذ التعليمات وبالتالي الحصول على تجزئة زمنية جيدة. وهذا ما يدعى أحيانا : سلاسل تعليمات مجال المستخدم user-space threads.في أغلب أنظمة التشغيل لايتم تنفيذ سلاسل تعليمات المستخدم الا عبر سلسلة تعليمات النواة. علاقة سلاسل مجال المستخدم وسلاسل تعليمات النواة:هناك اربع أنواع من العلاقات تربط النوعين من السلاسل وهي كالتالي. 1. * واحد إلى متعدد: في هذا النوع من العلاقات يرتبط كل تشعب نواة باكثر من تشعب مستخدم. تتميز باستغلال تشعبات النواة لكنها في نفس الوقت تتسبب في الضغط على تشعبات النواة، يستخدم هذا النوع في أنظمة جرين سولاريس، وجنو. 2. * واحد لواحد: في هذا النوع من العلاقات يرتبط كل تشعب من تشعبات المستخدم بتشعب واحد فقط من تشعبات النواة، يتضح لنا انه لو ان هناك تشعب واحد من تشعبات النواة تعطل فان تشعب المستخدم الذي كان متصلا به لن ينففذ ابداً. 3. * متعدد لمتعدد: هذا النوع من العلاقات تقوم كل مجموعة من تشعبات النواة بإدارة مجموعة من تشعبات المستخدم. 4. * نمط المستويين: يستخدم هذا النوع من العلاقات هجين من النوعين السابقين بحيث يسمح بعلاقات واحد لواحد ومتعدد لمتعدد، هذا النوع هو الأكثر استخداما حالياً هناك ثلاث مكتبات أساسية للتشعبات أو السلاسل : (1) PThreads: وهي اختصار لل POSIX Threads وتستخدم في يونكس وماكنتوش وغيرهما كما تسمح باستخدام سلاسل على مستوى النواة أو على مستوى المستخدم. (2) Win32 Threads : وهي المستخدمة في أنظمة تشغيل ويندوز "النوافذ" ولا تسمح للمستخدم في التعامل مع تشعبات " سلاسل " النواة وانما تتوفر له هذه السلاسل في مجال المستخدم فقط. (3) Java Threads : وهي خاصة ببرامج لغة الجافا وتقوم بإنشاء سلاسل خاصة بكل برنامج على حدة. في بعض الأحيان يستخدمون مصطلح سلسلة تعليمات من اجل threaded code وهو نمط من الشفرات البرمجية يتألف بالكامل من استدعاءات subroutine. في الغالب نحن معتادون على تعدد المهام في نظام التشغيل والسماحية لعمل أكثر من برنامج في وقت واحد. البرامج متعددة الخيوط (بالإنجليزية: Multithreaded programs)‏ تأخذ فكرة تعدد المهام عن طريق اخذها في مستوى أقل، فكل برنامج فردي يظهر عدة مهام في نفس الوقت وكل مهمه تسمى خيط (حاسوب). تستطيع البرامج تشغيل أكثر من خيط (حاسوب) في نفس الوقت وهي اختصار لـ خيط التحكم والبرامج التي تستطيع تشغيل أكثر من خيط حاسوبي في كل مره تسمى متعددة الخيوط الحاسوبية. (ar)
  • Vlákno (též vlákno řízení, anglicky thread) označuje v informatice spuštěnou instanci počítačového programu. O vláknech mluvíme v souvislosti s možností vytvořit více vláken v jednom procesu, což se nazývá multithreading. Jednotlivá vlákna mohou v rámci procesu vykonávat různé činnosti – například čtení požadavků uživatele, zpracování dat, vykreslování výstupu na obrazovce a síťovou komunikaci – nebo stejnou činnost nad různými daty (např. obsluhu více síťových spojení). U počítačů s více procesory nebo na vícejádrových procesorech mohou tyto činnosti probíhat současně (paralelně), v ostatních případech kvaziparalelně (rychlým přepínáním mezi vlákny se vytváří zdání paralelismu). Technicky, v systémech a programech, které nepodporují multihreading, má každý proces jen jediné vlákno. Podpora multithreadingu znamená, že je možné v rámci jednoho procesu vytvořit větší počet vláken. Vlákno můžeme považovat za odlehčený proces – zatímco běžné procesy jsou navzájem striktně odděleny, vlákna jednoho procesu sdílí paměťový prostor a další systémové prostředky. Sdílená paměť zjednodušuje komunikaci mezi vlákny, zvyšuje však riziko souběhu (anglicky race condition). Multithreading snižuje režiji operačního systému při přepínání mezi procesy (při změně kontextu), která je nutná pro zajištění multitaskingu - lze jej tak považovat za další stupeň multitaskingu. (cs)
  • En informàtica, un fil d'execució (thread en anglès) és la unitat més petita de processament que pot ser programada pels sistemes operatius, i que permet a un procés executar diferents tasques al mateix temps. Cada fil té un procés que ha de ser executat. Aquesta característica dona la possibilitat al programador de dissenyar un programa que executi diferents funcions concurrentment. La tècnica de programació amb fils d'execució s'anomena multifil (multithreading en anglès) i permet simplificar el disseny d'aplicacions concurrents i millorar el rendiment de la creació de processos. Cadascun dels fils accedix a unes dades, quan una d'aquestes és utilitzada per dos o més fils es diu que la dada està en conflicte. Cada fil té una secció on s'accedix a estes variables, la qual s'anomena secció crítica. Tots el fils s'executen concurrentment. Aquesta característica és possible gràcies als canvis de context. Els canvis de context es produeixen quan un fil que està al processador és eliminat i entra un altre. Fent canvis de context molt ràpidament donem la sensació de què tots els fils s'executen simultàniament. En els sistemes multifil tipus de sistemes, un mateix procés pot estar format per múltiples fils d'execució. Els diferents fils que formen part d'un mateix procés, comparteixen certs recursos com l'espai de memòria, els arxius oberts, els permisos, etc. En canvi, cada fil consta de les seves pròpies instruccions, la seva pròpia pila d'execució, s'executen a diferents velocitats (cada fil té el seu propi registre PC) i tenen el seu propi estat d'execució. Els fils d'execució, també són coneguts com a processos lleugers. L'origen del nom rau en el fet que els fils d'execució consumeixen menys recursos de sistema que els processos. La majoria de llenguatges de programació moderns, disposen de llibreries específiques per tal de programar amb fils i altres com C o C++ han d'utilitzar les crides de sistema que donen aquest suport. Un parell d'exemples típics on s'utilitzen fils són: * Aplicacions gràfiques: Un fil s'encarrega de la interfície gràfica d'usuari mentrestant un altre realitza les operacions. * Aplicacions client/servidor: el servidor crea múltiples fils per tal de donar servei a múltiples clients alhora. En sistemes POSIX hi ha 2 llibreries per a treballar amb fils d'execució: * per a Linux * (ca)
  • Στην πληροφορική, ένα νήμα εκτέλεσης (Αγγλικά: thread) είναι η μικρότερη ακολουθία προγραμματισμένων εντολών που μπορεί να υποστεί διαχείριση ανεξάρτητα από το λειτουργικό σύστημα. Ένα νήμα είναι μια ελαφριά διεργασία. Η υλοποίηση των νημάτων και των διεργασιών διαφέρει από το ένα λειτουργικό σύστημα στο άλλο. Στις περισσότερες όμως περιπτώσεις ένα νήμα εμπεριέχεται σε μια διεργασία. Μπορούν να υπάρχουν πολλαπλά νήματα μέσα στην ίδια διεργασία, τα οποία μπορούν να μοιράζονται πόρους από το σύστημα, όπως μνήμη. Διαφορετικές διεργασίες δεν μπορούν να μοιράζονται τους ίδιους πόρους. Συγκεκριμένα, τα νήματα μιας διεργασίας περιέχουν τις εντολές προς την εκτελούμενη διεργασία (δηλαδή τον κώδικα της) και το εννοιολογικό της πλαίσιο (οι τιμές των μεταβλητών της σε οποιαδήποτε χρονική στιγμή. Σε έναν απλό επεξεργαστή, η πολυνημάτωση (multithreading) πραγματοποιείται με τη μέθοδο της πολυπλεξίας με διαίρεση χρόνου (όπως στην πολυεπεξεργασία): ο επεξεργαστής μεταπηδάει μεταξύ των διάφορων νημάτων. Αυτή η εναλλαγή μεταξύ των διεργασιών ονομάζεται (Αγγλικά: context switch) , και συμβαίνει σε πολύ τακτά χρονικά διαστήματα, τέτοια έτσι ώστε ο χρήστης έχει την εντύπωση ότι τα νήματα εκτελούνται την ίδια στιγμή. Μόνο σε έναν επεξεργαστή με πολλούς επεξεργαστικούς πυρήνες, τα νήματα εκτελούνται πραγματικά ταυτόχρονα και κάθε πυρήνας εκτελεί ένα συγκεκριμένο νήμα ή εργασία. Η υποστήριξη για νήματα ποικίλει ανάμεσα στις γλώσσες προγραμματισμού: κάποιες γλώσσες απλά δεν υποστηρίζουν την εκτέλεση παραπάνω του ενός νήματος για ένα πρόγραμμα ταυτόχρονα. Παραδείγματα τέτοιων γλωσσών είναι η Python και η OCaml οι οποίες παρόλο που έχουν βιβλιοθήκες για δημιουργία νημάτων δεν εκτελούνται τα νήματα ταυτόχρονα . Άλλες γλώσσες περιορίζονται στη χρήση νημάτων χρήστη τα οποία δεν είναι ορατά στο πυρήνα και έτσι δεν μπορούν να εκτελεστούν ταυτόχρονα. Μόνο τα νήματα πυρήνα που είναι ορατά στον του πυρήνα, μπορούν να εκτελεστούν ταυτόχρονα. Πολλά σύγχρονα λειτουργικά συστήματα υποστηρίζουν τόσο νήματα καταμερισμού χρόνου, όσο και νήματα παράλληλης πολυεπεξεργασίας, στον χρονοδρομολογητή τους. Ο πυρήνας ενός λειτουργικού συστήματος επιτρέπει στους προγραμματιστές να χειρίζονται τα νήματα μέσω της διεπαφής κλήσεων συστήματος. Ορισμένες υλοποιήσεις λέγονται νήμα πυρήνα, ενώ ελαφρά διεργασία είναι ο ειδικός τύπος νήματος πυρήνα που μοιράζεται την ίδια κατάσταση και πληροφορίες. Στα συστήματα unix υπάρχει το POSIX στάνταρντ για δημιουργία POSIX νημάτων. (el)
  • En sistemas operativos, un hilo o hebra (del inglés thread), proceso ligero o subproceso es una secuencia de tareas encadenadas muy pequeña que puede ser ejecutada por un sistema operativo. La destrucción de los hilos antiguos por los nuevos es una característica que no permite a una aplicación realizar varias tareas a la vez (concurrentemente). Los distintos hilos de ejecución comparten una serie de recursos tales como el espacio de memoria, los archivos abiertos, la situación de autenticación, etc. Esta técnica permite simplificar el diseño de una aplicación que debe llevar a cabo distintas funciones simultáneamente. Un hilo es simplemente una tarea que puede ser ejecutada al mismo tiempo que otra tarea. Los hilos de ejecución que comparten los mismos recursos, sumados a estos recursos, son en conjunto conocidos como un proceso. El hecho de que los hilos de ejecución de un mismo proceso compartan los recursos hace que cualquiera de estos hilos pueda modificar estos recursos. Cuando un hilo modifica un dato en la memoria, los otros hilos acceden a ese dato modificado inmediatamente. Lo que es propio de cada hilo es el contador de programa, la pila de ejecución y el estado de la CPU (incluyendo el valor de los registros). El proceso sigue en ejecución mientras al menos uno de sus hilos de ejecución siga activo. Cuando el proceso finaliza, todos sus hilos de ejecución también han terminado. Asimismo en el momento en el que todos los hilos de ejecución finalizan, el proceso no existe más y todos sus recursos son liberados. Algunos lenguajes de programación tienen características de diseño expresamente creadas para permitir a los programadores lidiar con hilos de ejecución (como Java o Delphi). Otros (la mayoría) desconocen la existencia de hilos de ejecución y estos deben ser creados mediante llamadas de biblioteca especiales que dependen del sistema operativo en el que estos lenguajes están siendo utilizados (como es el caso del C y del C++). (es)
  • Un thread ou fil (d'exécution) ou tâche (terme et définition normalisés par ISO/CEI 2382-7:2000 ; autres appellations connues : processus léger, fil d'instruction, processus allégé, exétron, voire unité d'exécution ou unité de traitement[réf. nécessaire]) est similaire à un processus car tous deux représentent l'exécution d'un ensemble d'instructions du langage machine d'un processeur. Du point de vue de l'utilisateur, ces exécutions semblent se dérouler en parallèle. Toutefois, là où chaque processus possède sa propre mémoire virtuelle, les threads d'un même processus se partagent sa mémoire virtuelle. Par contre, tous les threads possèdent leur propre pile d'exécution. (fr)
  • Ulir, utas atau thread (singkatan dari "thread of execution") dalam ilmu komputer, diartikan sebagai sekumpulan perintah (instruksi) yang dapat dilaksanakan (dieksekusi) secara sejajar dengan ulir lainnya, dengan menggunakan cara time slice (ketika satu CPU melakukan perpindahan antara satu ulir ke ulir lainnya) atau multiprocess (ketika ulir-ulir tersebut dilaksanakan oleh CPU yang berbeda dalam satu sistem). Ulir sebenarnya mirip dengan proses, tetapi cara berbagi sumber daya antara proses dengan ulir sangat berbeda.Multiplethread dapat dilaksanakan secara sejajar pada sistem komputer. Secara umum multithreading melakukan time-slicing (sama dengan time-division multipleks), di mana sebuah CPU bekerja pada ulir yang berbeda, di mana suatu kasus ditangani tidak sepenuhnya secara serempak, untuk CPU tunggal pada dasarnya benar-benar melakukan sebuah pekerjaan pada satu waktu. Teknik penggantian (switching) ini memungkinkan CPU seolah-olah bekerja secara serempak. * l * * s (in)
  • Un thread o thread di esecuzione, in informatica, è una suddivisione di un processo in due o più filoni (istanze) o sottoprocessi che vengono eseguiti concorrentemente da un sistema di elaborazione monoprocessore (monothreading) o multiprocessore (multithreading) o multicore. (it)
  • スレッド(thread)とは、CPU利用の単位。プロセスに比べて、プログラムを実行するときのコンテキスト情報が最小で済むので切り替えが速くなる。スレッドは、thread of execution(実行の脈絡)という言葉を省略したものである。 プログラミングの観点からみると、アプリケーションの処理の「実行の脈絡」は1つでないことが多い。例えば即応性が求められるGUIを描画したりユーザーと対話したりするためのイベントループを実行するフローと、処理に時間のかかるネットワークアクセスやファイルI/O、低速ハードウェアとの通信などを実行するフローは完全に分離してしまったほうが都合がよい。これを単一のコンテキスト(シングルスレッド)上で実現しようとするとシグナルやタイマーを駆使してコーディングすることになる。あるいは、複数のプロセスに分割してプロセス間通信で協調動作させるという方法もある。しかし、いずれの場合もそれらの機能を使うための余分な、本来のアルゴリズムと関係ないコーディングが必要となる。スレッドを使用したプログラミングは本来のアルゴリズム(アプリケーションロジック)に集中しやすくなり、プログラムの構造が改善されるという効果がある。 (ja)
  • 스레드(thread)는 어떠한 프로그램 내에서, 특히 프로세스 내에서 실행되는 흐름의 단위를 말한다. 일반적으로 한 프로그램은 하나의 스레드를 가지고 있지만, 프로그램 환경에 따라 둘 이상의 스레드를 동시에 실행할 수 있다. 이러한 실행 방식을 멀티스레드(multithread)라고 한다. (ko)
  • Wątek (ang. thread) – część programu wykonywana współbieżnie w obrębie jednego procesu; w jednym procesie może istnieć wiele wątków. Różnica między zwykłym procesem a wątkiem polega na współdzieleniu przez wszystkie wątki działające w danym procesie przestrzeni adresowej oraz wszystkich innych struktur systemowych (np. listy otwartych plików, gniazd itp.) – z kolei procesy posiadają niezależne zasoby. Ta cecha ma dwie ważne konsekwencje: 1. * Wątki wymagają mniej zasobów do działania i też mniejszy jest czas ich tworzenia. 2. * Dzięki współdzieleniu przestrzeni adresowej (pamięci) wątki jednego zadania mogą się między sobą komunikować w bardzo łatwy sposób, niewymagający pomocy ze strony systemu operacyjnego. Przekazanie dowolnie dużej ilości danych wymaga przesłania jedynie wskaźnika, zaś odczyt (a niekiedy zapis) danych o rozmiarze nie większym od słowa maszynowego nie wymaga synchronizacji (procesor gwarantuje atomowość takiej operacji). Wątki są udostępniane wprost przez system operacyjny MS Windows, w systemach Linux, BSD i innych dostępna jest biblioteka pthread, dająca jednolity interfejs, ukrywający szczegóły implementacji. W językach programowania używających maszyn wirtualnych (Python, Java itp.) są dostępne również tzw. zielone wątki, które nie są obsługiwane przez system operacyjny, ale samą maszynę wirtualną – to pozwala m.in. na realizację współbieżności nawet wtedy, gdy docelowy system operacyjny nie udostępnia wątków. (pl)
  • Een thread (draadje) is de kleinste opeenvolging van geprogrammeerde instructies die onafhankelijk van elkaar kunnen worden beheerd door een scheduler. Computers met multitasking kunnen hun tijd zeer snel tussen verschillende taken verdelen. Multiprocessor-computers kunnen ook gelijktijdig taken uitvoeren. Door een grotere taak te verdelen in meerdere threads kunnen sommige taken sneller uitgevoerd worden door de computer. In de meeste besturingssystemen vormen twee proceskenmerken de kern van een proces: * bezit van bronnen * inroosteren (scheduling) en uitvoering Deze twee kenmerken zijn onafhankelijk en kunnen daarom ook onafhankelijk behandeld worden door het systeem. Om een onderscheid te maken wordt de eenheid voor toedeling (dispatch) doorgaans een thread genoemd en de eenheid voor bronbezit een proces of taak. Een proces kan meerdere threads bevatten. Het is de kleinste reeks van geprogrammeerde instructies die onafhankelijk van elkaar kunnen worden beheerd door een scheduler (nl)
  • In computer science, a thread of execution is the smallest sequence of programmed instructions that can be managed independently by a scheduler, which is typically a part of the operating system. The implementation of threads and processes differs between operating systems, but in most cases a thread is a component of a process. Multiple threads can exist within one process, executing concurrently and sharing resources such as memory, while different processes do not share these resources. In particular, the threads of a process share its executable code and the values of its dynamically allocated variables and non-thread-local global variables at any given time. (en)
  • Пото́к выполне́ния (тред; от англ. thread — нить) — наименьшая единица обработки, исполнение которой может быть назначено ядром операционной системы. Реализация потоков выполнения и процессов в разных операционных системах отличается друг от друга, но в большинстве случаев поток выполнения находится внутри процесса. Несколько потоков выполнения могут существовать в рамках одного и того же процесса и совместно использовать ресурсы, такие как память, тогда как процессы не разделяют этих ресурсов. В частности, потоки выполнения разделяют инструкции процесса (его код) и его контекст (значения переменных, которые они имеют в любой момент времени). В качестве аналогии потоки выполнения процесса можно уподобить нескольким вместе работающим поварам. Все они готовят одно блюдо, читают одну и ту же кулинарную книгу с одним и тем же рецептом и следуют его указаниям, причём не обязательно все они читают на одной и той же странице. На одном процессоре многопоточность обычно происходит путём временного мультиплексирования (как и в случае многозадачности): процессор переключается между разными потоками выполнения. Это переключение контекста обычно происходит достаточно часто, чтобы пользователь воспринимал выполнение потоков или задач как одновременное. В многопроцессорных и многоядерных системах потоки или задачи могут реально выполняться одновременно, при этом каждый процессор или ядро обрабатывает отдельный поток или задачу. Многие современные операционные системы поддерживают как временные нарезки от планировщика процессов, так и многопроцессорные потоки выполнения. Ядро операционной системы позволяет программистам управлять потоками выполнения через интерфейс системных вызовов. Некоторые реализации ядра называют потоком ядра, другие же — легковесным процессом (англ. light-weight process, LWP), представляющим собой особый тип потока выполнения ядра, который совместно использует одни и те же состояния и данные. Программы могут иметь пользовательское пространство потоков выполнения при создании потоков с помощью таймеров, сигналов или другими методами, позволяющими прервать выполнение и создать временную нарезку для конкретной ситуации (Ad hoc). (ru)
  • En tråd eller exekveringstråd (engelska: thread) är en av flera parallella instruktionssekvenser inom en programprocess i en dator i många operativsystem. En tråd liknar men ska inte sammanblandas med en process, som kräver mer datorresurser vid uppstart av och växling mellan processer. Varje tråd har en egen instruktionspekare och anropsstack, men delar i regel ett gemensamt adressutrymme med övriga trådar inom processen. Begreppet flertrådning (eng. multithreading) kan antingen åsyfta datorprogram som utnyttjar flera samtidiga trådar för effektiv multikörning, eller processorerarkitektur som ger hårdvarustöd för snabb växling mellan flera samtidiga trådar. (sv)
  • Thread é a tarefa que um determinado programa realiza. Fio de execução, também conhecido como linha ou encadeamento de execução, (em inglês: Thread), é uma forma de um processo dividir a si mesmo em duas ou mais tarefas que podem ser executadas concorrencialmente. O suporte à thread é fornecido pelo próprio sistema operacional no caso da linha de execução ao nível do núcleo (em inglês: Kernel-Level Thread (KLT)), ou implementada através de uma biblioteca de uma determinada linguagem, no caso de uma User-Level Thread (ULT).Uma thread permite, por exemplo, que o utilizador de um programa utilize uma funcionalidade do ambiente enquanto outras linhas de execução realizam outros cálculos e operações. Em hardwares equipados com uma única CPU, cada thread é processada de forma aparentemente simultânea, pois a mudança entre uma thread e outra é feita de forma tão rápida que para o utilizador, isso está acontecendo paralelamente. Em hardwares com múltiplos CPUs ou multi-cores, as threads são realizadas realmente de forma simultânea. Os sistemas que suportam uma única thread (em real execução) são chamados de monothread enquanto que os sistemas que suportam múltiplas threads são chamados de multithread. (pt)
  • Потік (англ. thread) або повніше потік виконання (англ. thread of execution), часто застосовуються назви нитка, нитка виконання та англіцизм тред — в інформатиці так називається спосіб програми розділити себе на дві чи більше паралельні задачі. Реалізація потоків та процесів відрізняються в різних операційних системах, але загалом потік міститься всередині процесу і різні потоки одного процесу спільно розподіляють деякі ресурси, у той час як різні процеси ресурси не розподіляють. У системах з одним процесором багатопотоковість реалізується загалом поділом часу виконання («кванти часу»), дуже подібно до паралельного виконання багатьох задач: процесор послідовно переключається між різними потоками. Це переключення контексту відбувається настільки швидко, що в кінцевого користувача створюється ілюзія одночасного виконання. На багатопроцесорних чи на багатоядерних системах робота потоків здійснюється справді одночасно, оскільки різні потоки і процеси виконуються буквально одночасно різними процесорами або ядрами процесора. Особливості квантування в операційній системі Windows розглянуто в статті Квант (Windows). Багато сучасних операційних систем прямо підтримують квантування часу і багатопроцесорну роботу потоків через планувальник процесів. Ядро операційної системи дозволяє програмісту маніпулювати потоками через інтерфейс системних викликів. Деякі реалізації викликають потоки ядра, оскільки (англ. lightweight process, LWP) є спеціальним типом потоків ядра, що розподіляють деякі стани та інформацію. Поза тим, програма може емулювати роботу потоків, використовуючи таймер, сигнали або інші методи, щоб перервати власне виконання і послідовно виконувати різні задачі власним квантуванням часу. Такий спосіб іноді зветься потоками користувацького простору (англ. user-space threads) або волокнами. (uk)
  • 线程(英語:thread)是操作系统能夠進行運算调度的最小單位。大部分情况下,它被包含在进程之中,是进程中的實際運作單位。一条线程指的是进程中一个单一顺序的控制流,一個进程中可以並行多個线程,每条线程并行执行不同的任务。在Unix System V及SunOS中也被称为轻量进程(lightweight processes),但轻量进程更多指内核线程(kernel thread),而把用户线程(user thread)称为线程。 线程是独立调度和分派的基本单位。线程可以为操作系统内核调度的内核线程,如Win32线程;由用户进程自行调度的用户线程,如Linux平台的POSIX Thread;或者由内核与用户进程,如Windows 7的线程,进行混合调度。 同一进程中的多条线程将共享该进程中的全部系统资源,如虚拟地址空间,文件描述符和信号处理等等。但同一进程中的多个线程有各自的调用栈(call stack),自己的(register context),自己的线程本地存储(thread-local storage)。 一个进程可以有很多线程來處理,每条线程并行执行不同的任务。如果进程要完成的任務很多,這樣需很多线程,也要調用很多核心,在多核或多CPU,或支持Hyper-threading的CPU上使用多线程程序设计的好处是显而易见的,即提高了程序的执行吞吐率。以人工作的樣子想像,核心相當於人,人越多則能同時處理的事情越多,而线程相當於手,手越多則工作效率越高。在单CPU单核的计算机上,使用多线程技术,也可以把进程中负责I/O处理、人机交互而常被阻塞的部分与密集计算的部分分开来执行,编写专门的workhorse线程执行密集计算,雖然多工比不上多核,但因為具備多线程的能力,从而提高了程序的执行效率。 (zh)
dbo:thumbnail
dbo:wikiPageID
  • 45303 (xsd:integer)
dbo:wikiPageLength
  • 31761 (xsd:nonNegativeInteger)
dbo:wikiPageRevisionID
  • 1019977434 (xsd:integer)
dbo:wikiPageWikiLink
dbp:date
  • June 2020 (en)
dbp:reason
  • no kernel modifications are needed (en)
dbp:wikiPageUsesTemplate
dct:subject
gold:hypernym
rdf:type
rdfs:comment
  • Un thread ou fil (d'exécution) ou tâche (terme et définition normalisés par ISO/CEI 2382-7:2000 ; autres appellations connues : processus léger, fil d'instruction, processus allégé, exétron, voire unité d'exécution ou unité de traitement[réf. nécessaire]) est similaire à un processus car tous deux représentent l'exécution d'un ensemble d'instructions du langage machine d'un processeur. Du point de vue de l'utilisateur, ces exécutions semblent se dérouler en parallèle. Toutefois, là où chaque processus possède sa propre mémoire virtuelle, les threads d'un même processus se partagent sa mémoire virtuelle. Par contre, tous les threads possèdent leur propre pile d'exécution. (fr)
  • Un thread o thread di esecuzione, in informatica, è una suddivisione di un processo in due o più filoni (istanze) o sottoprocessi che vengono eseguiti concorrentemente da un sistema di elaborazione monoprocessore (monothreading) o multiprocessore (multithreading) o multicore. (it)
  • スレッド(thread)とは、CPU利用の単位。プロセスに比べて、プログラムを実行するときのコンテキスト情報が最小で済むので切り替えが速くなる。スレッドは、thread of execution(実行の脈絡)という言葉を省略したものである。 プログラミングの観点からみると、アプリケーションの処理の「実行の脈絡」は1つでないことが多い。例えば即応性が求められるGUIを描画したりユーザーと対話したりするためのイベントループを実行するフローと、処理に時間のかかるネットワークアクセスやファイルI/O、低速ハードウェアとの通信などを実行するフローは完全に分離してしまったほうが都合がよい。これを単一のコンテキスト(シングルスレッド)上で実現しようとするとシグナルやタイマーを駆使してコーディングすることになる。あるいは、複数のプロセスに分割してプロセス間通信で協調動作させるという方法もある。しかし、いずれの場合もそれらの機能を使うための余分な、本来のアルゴリズムと関係ないコーディングが必要となる。スレッドを使用したプログラミングは本来のアルゴリズム(アプリケーションロジック)に集中しやすくなり、プログラムの構造が改善されるという効果がある。 (ja)
  • 스레드(thread)는 어떠한 프로그램 내에서, 특히 프로세스 내에서 실행되는 흐름의 단위를 말한다. 일반적으로 한 프로그램은 하나의 스레드를 가지고 있지만, 프로그램 환경에 따라 둘 이상의 스레드를 동시에 실행할 수 있다. 이러한 실행 방식을 멀티스레드(multithread)라고 한다. (ko)
  • In computer science, a thread of execution is the smallest sequence of programmed instructions that can be managed independently by a scheduler, which is typically a part of the operating system. The implementation of threads and processes differs between operating systems, but in most cases a thread is a component of a process. Multiple threads can exist within one process, executing concurrently and sharing resources such as memory, while different processes do not share these resources. In particular, the threads of a process share its executable code and the values of its dynamically allocated variables and non-thread-local global variables at any given time. (en)
  • في المعلوماتية والحوسبة، الخيط (بالإنجليزية: Thread)‏ أو سلسلة أو شريط التعليمات (بالإنجليزية: thread of execution)‏ أو الخيوط الحاسوبية (بالإنجليزية: Threads)‏ هو عبارة عن مجموعة من التعليمات التي تشكل مساراً لتنفيذ العملية وبما أنه مجرد مسار فإنه لا يحتاج لموارد خاصة به حيث أنه يستخدم موارد العملية ذاتها. تجعل الخيوط البرنامج الحاسوبي يبدو وكأنه يقوم بأكثر من بشكل متزامن، لكن إذا كانت وحدة المعالجة المركزية بأكثر من نواة فانه يقوم بعمل تزامن حقيقي، فعلى سبيل المثال يمكن للبرنامج الإبقاء على واجهة المستخدم المرئية تتفاعل مع المستخدم على الرغم من قيامه بمهمة أخرى كالاتصال بمخدم. تتميز الخيوط عن بشكل عام في طريقة إنشاء سلسلة التعليمات وطريقة مشاركتها للمصادر وأسلوب تنفيذ المعالج لها بشكل مختلف عن العمليات لكن هذه الفوارق في النهاية تختلف حسب نظام التشغيل. (ar)
  • En informàtica, un fil d'execució (thread en anglès) és la unitat més petita de processament que pot ser programada pels sistemes operatius, i que permet a un procés executar diferents tasques al mateix temps. Cada fil té un procés que ha de ser executat. Aquesta característica dona la possibilitat al programador de dissenyar un programa que executi diferents funcions concurrentment. Els canvis de context es produeixen quan un fil que està al processador és eliminat i entra un altre. Fent canvis de context molt ràpidament donem la sensació de què tots els fils s'executen simultàniament. (ca)
  • Vlákno (též vlákno řízení, anglicky thread) označuje v informatice spuštěnou instanci počítačového programu. O vláknech mluvíme v souvislosti s možností vytvořit více vláken v jednom procesu, což se nazývá multithreading. Jednotlivá vlákna mohou v rámci procesu vykonávat různé činnosti – například čtení požadavků uživatele, zpracování dat, vykreslování výstupu na obrazovce a síťovou komunikaci – nebo stejnou činnost nad různými daty (např. obsluhu více síťových spojení). U počítačů s více procesory nebo na vícejádrových procesorech mohou tyto činnosti probíhat současně (paralelně), v ostatních případech kvaziparalelně (rychlým přepínáním mezi vlákny se vytváří zdání paralelismu). (cs)
  • Στην πληροφορική, ένα νήμα εκτέλεσης (Αγγλικά: thread) είναι η μικρότερη ακολουθία προγραμματισμένων εντολών που μπορεί να υποστεί διαχείριση ανεξάρτητα από το λειτουργικό σύστημα. Ένα νήμα είναι μια ελαφριά διεργασία. Η υλοποίηση των νημάτων και των διεργασιών διαφέρει από το ένα λειτουργικό σύστημα στο άλλο. Στις περισσότερες όμως περιπτώσεις ένα νήμα εμπεριέχεται σε μια διεργασία. Μπορούν να υπάρχουν πολλαπλά νήματα μέσα στην ίδια διεργασία, τα οποία μπορούν να μοιράζονται πόρους από το σύστημα, όπως μνήμη. Διαφορετικές διεργασίες δεν μπορούν να μοιράζονται τους ίδιους πόρους. Συγκεκριμένα, τα νήματα μιας διεργασίας περιέχουν τις εντολές προς την εκτελούμενη διεργασία (δηλαδή τον κώδικα της) και το εννοιολογικό της πλαίσιο (οι τιμές των μεταβλητών της σε οποιαδήποτε χρονική στιγμή. (el)
  • En sistemas operativos, un hilo o hebra (del inglés thread), proceso ligero o subproceso es una secuencia de tareas encadenadas muy pequeña que puede ser ejecutada por un sistema operativo. La destrucción de los hilos antiguos por los nuevos es una característica que no permite a una aplicación realizar varias tareas a la vez (concurrentemente). Los distintos hilos de ejecución comparten una serie de recursos tales como el espacio de memoria, los archivos abiertos, la situación de autenticación, etc. Esta técnica permite simplificar el diseño de una aplicación que debe llevar a cabo distintas funciones simultáneamente. (es)
  • Ulir, utas atau thread (singkatan dari "thread of execution") dalam ilmu komputer, diartikan sebagai sekumpulan perintah (instruksi) yang dapat dilaksanakan (dieksekusi) secara sejajar dengan ulir lainnya, dengan menggunakan cara time slice (ketika satu CPU melakukan perpindahan antara satu ulir ke ulir lainnya) atau multiprocess (ketika ulir-ulir tersebut dilaksanakan oleh CPU yang berbeda dalam satu sistem). Ulir sebenarnya mirip dengan proses, tetapi cara berbagi sumber daya antara proses dengan ulir sangat berbeda.Multiplethread dapat dilaksanakan secara sejajar pada sistem komputer. Secara umum multithreading melakukan time-slicing (sama dengan time-division multipleks), di mana sebuah CPU bekerja pada ulir yang berbeda, di mana suatu kasus ditangani tidak sepenuhnya secara serempak, (in)
  • Wątek (ang. thread) – część programu wykonywana współbieżnie w obrębie jednego procesu; w jednym procesie może istnieć wiele wątków. Różnica między zwykłym procesem a wątkiem polega na współdzieleniu przez wszystkie wątki działające w danym procesie przestrzeni adresowej oraz wszystkich innych struktur systemowych (np. listy otwartych plików, gniazd itp.) – z kolei procesy posiadają niezależne zasoby. Ta cecha ma dwie ważne konsekwencje: (pl)
  • Een thread (draadje) is de kleinste opeenvolging van geprogrammeerde instructies die onafhankelijk van elkaar kunnen worden beheerd door een scheduler. Computers met multitasking kunnen hun tijd zeer snel tussen verschillende taken verdelen. Multiprocessor-computers kunnen ook gelijktijdig taken uitvoeren. Door een grotere taak te verdelen in meerdere threads kunnen sommige taken sneller uitgevoerd worden door de computer. In de meeste besturingssystemen vormen twee proceskenmerken de kern van een proces: * bezit van bronnen * inroosteren (scheduling) en uitvoering (nl)
  • Thread é a tarefa que um determinado programa realiza. Fio de execução, também conhecido como linha ou encadeamento de execução, (em inglês: Thread), é uma forma de um processo dividir a si mesmo em duas ou mais tarefas que podem ser executadas concorrencialmente. O suporte à thread é fornecido pelo próprio sistema operacional no caso da linha de execução ao nível do núcleo (em inglês: Kernel-Level Thread (KLT)), ou implementada através de uma biblioteca de uma determinada linguagem, no caso de uma User-Level Thread (ULT).Uma thread permite, por exemplo, que o utilizador de um programa utilize uma funcionalidade do ambiente enquanto outras linhas de execução realizam outros cálculos e operações. (pt)
  • Пото́к выполне́ния (тред; от англ. thread — нить) — наименьшая единица обработки, исполнение которой может быть назначено ядром операционной системы. Реализация потоков выполнения и процессов в разных операционных системах отличается друг от друга, но в большинстве случаев поток выполнения находится внутри процесса. Несколько потоков выполнения могут существовать в рамках одного и того же процесса и совместно использовать ресурсы, такие как память, тогда как процессы не разделяют этих ресурсов. В частности, потоки выполнения разделяют инструкции процесса (его код) и его контекст (значения переменных, которые они имеют в любой момент времени). В качестве аналогии потоки выполнения процесса можно уподобить нескольким вместе работающим поварам. Все они готовят одно блюдо, читают одну и ту же (ru)
  • En tråd eller exekveringstråd (engelska: thread) är en av flera parallella instruktionssekvenser inom en programprocess i en dator i många operativsystem. En tråd liknar men ska inte sammanblandas med en process, som kräver mer datorresurser vid uppstart av och växling mellan processer. Varje tråd har en egen instruktionspekare och anropsstack, men delar i regel ett gemensamt adressutrymme med övriga trådar inom processen. (sv)
  • Потік (англ. thread) або повніше потік виконання (англ. thread of execution), часто застосовуються назви нитка, нитка виконання та англіцизм тред — в інформатиці так називається спосіб програми розділити себе на дві чи більше паралельні задачі. Реалізація потоків та процесів відрізняються в різних операційних системах, але загалом потік міститься всередині процесу і різні потоки одного процесу спільно розподіляють деякі ресурси, у той час як різні процеси ресурси не розподіляють. (uk)
  • 线程(英語:thread)是操作系统能夠進行運算调度的最小單位。大部分情况下,它被包含在进程之中,是进程中的實際運作單位。一条线程指的是进程中一个单一顺序的控制流,一個进程中可以並行多個线程,每条线程并行执行不同的任务。在Unix System V及SunOS中也被称为轻量进程(lightweight processes),但轻量进程更多指内核线程(kernel thread),而把用户线程(user thread)称为线程。 线程是独立调度和分派的基本单位。线程可以为操作系统内核调度的内核线程,如Win32线程;由用户进程自行调度的用户线程,如Linux平台的POSIX Thread;或者由内核与用户进程,如Windows 7的线程,进行混合调度。 同一进程中的多条线程将共享该进程中的全部系统资源,如虚拟地址空间,文件描述符和信号处理等等。但同一进程中的多个线程有各自的调用栈(call stack),自己的(register context),自己的线程本地存储(thread-local storage)。 (zh)
rdfs:label
  • خيط (حاسوب) (ar)
  • Fil d'execució (ca)
  • Vlákno (informatika) (cs)
  • Thread (Informatik) (de)
  • Νήμα (υπολογιστές) (el)
  • Thread (computing) (en)
  • Hilo (informática) (es)
  • Utas (komputer) (in)
  • Thread (informatique) (fr)
  • スレッド (コンピュータ) (ja)
  • Thread (informatica) (it)
  • 스레드 (컴퓨팅) (ko)
  • Thread (informatica) (nl)
  • Wątek (informatyka) (pl)
  • Thread (computação) (pt)
  • Tråd (datavetenskap) (sv)
  • Поток выполнения (ru)
  • Потік (інформатика) (uk)
  • 线程 (zh)
owl:sameAs
prov:wasDerivedFrom
foaf:depiction
foaf:isPrimaryTopicOf
is dbo:genre 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