Thread (multithreading): Rozdiel medzi revíziami

Smazaný obsah Přidaný obsah
Bronto (diskusia | príspevky)
d Vlákno (informatika) premiestnená na Thread
Bronto (diskusia | príspevky)
Bez shrnutí editace
Riadok 1:
::''Тhread alebo vlákno je aj označenie pre nadväzujúce príspevky v internetovej alebo e-amilovej diskusii.''
'''Vlákno''' v [[informatika|informatike]] je spôsob, ako rozdeliť program na dva alebo viac rovnocenne bežiacích úloh. Viaceré vlákna môžu byť vykonávané naraz – nazýva sa to [[multithreading]] (porovnaj s [[multiprogramovanie]]). Multithreading sa obyčajne zabezpečuje buď rozdeľovaním času (kde jeden procesor prepína medzi vykonávaním rôzných vlákien) alebo [[multiprocessing]] (kde sú vlákna vykonávané na viacerých procesoroch ([[symmetric multiprocessing|SMP]]) či jadrách procesora ([[chip multiprocessing|CMP]])). Vlákno je podobné procesu, odlišný je spôsob zdieľania prostriedkov a asociovaný kontext.
 
'''Thready''' (z angl. vlákno; súvislosť) alebo hovorovo '''vlákna''' v [[informatika|informatike]] sú nezávisle bežiaca úlohy, na ktoré je pri tzv. [[multithreading]]u rozdelený jeden [[program]].
Veľa moderných operačných systémov priamo podporuje obidva spôsoby – rozdeľovanie času aj multiprocessing s plánovaním procesov ([[scheduling]]). Jadro operačného systému dovoľuje programátorom manipulovať s vláknami cez [[systémové volanie|systémové volania]]. Niektoré implementácie sa nazývaju vlákna jadra (kernel threads), alebo odľahčené procesy. Program može mať vlákna implementované aj bez podpory operačného systému pomocou časovačov, signálov, alebo inak. Je však potrebné prerušiť vlastné vykonávanie a odtiaľ urobiť vlastné rozdeľovanie času. Tieto vlákna sa niekedy nazývaju užívateľské.
 
'''Vlákno'''Použitie v [[informatika|informatike]]threadov je spôsob, ako rozdeliť program na dva alebo viac rovnocenne bežiacích úloh. Viaceré vlákna môžu byť vykonávané naraz – nazýva sa to [[multithreading]] (porovnaj s [[multiprogramovanie]]). Multithreading sa obyčajne zabezpečuje buď [[zdieľanie času|rozdeľovaním času]] (kde jeden procesor prepína medzi vykonávaním rôznýchrôznych vlákien) alebo [[paralelné spracovanie dát]] - [[multiprocessing]] (kde sú vlákna vykonávané na viacerých procesoroch ([[symmetric multiprocessing|SMP]]) či jadrách procesora ([[chip multiprocessing|CMP]])). Vlákno jesa podobnépodobá procesu[[proces]]u, odlišný je spôsob zdieľania prostriedkov a asociovanýsúvisiaci kontext.
Iné použitie pojmu vlákno je pre vláknový kód, čo je časť kódu pozostávajúca z volania podprogramu napísaná bez použitia inštrukcii na volanie podprogramu a spracovania interpreterom alebo procesorom. Existujú dva jazyky pre vláknový kód a sú to [[Forth]] a skorší programovací jazyk [[B (programovací jazyk)|B]].
 
Veľa moderných operačných systémov priamo podporuje obidva spôsoby – rozdeľovanie času aj multiprocessing s plánovaním procesov ([[scheduling]]). Jadro operačného systému dovoľuje programátorom manipulovať s vláknami cez [[systémové volanie|systémové volania]]. Niektoré implementácie sa nazývaju vlákna jadra ([[kernel threadsthread]]s), alebo odľahčené procesy. Program može mať vlákna implementované aj bez podpory operačného systému pomocou časovačov, signálov, alebo inak. Je však potrebné prerušiť vlastné vykonávanie a odtiaľ urobiť vlastné rozdeľovanie času. Tieto vlákna sa niekedy nazývaju užívateľské.
 
Iné použitie pojmu vlákno je pre vláknový kód, čo je časť kódu pozostávajúca z volania podprogramu napísaná bez použitia inštrukcii na volanie podprogramu a spracovania interpreterominterpretom alebo procesorom. Existujú dva jazyky pre vláknový kód a sú to [[Forth]] a skorší programovací jazyk [[B (programovací jazyk)|B]].
 
[[en:Thread (computer science)]]