Poznámka
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Každý proces poskytuje prostředky potřebné ke spuštění programu. Proces má virtuální adresní prostor, spustitelný kód, otevřené popisovače systémových objektů, kontext zabezpečení, jedinečný identifikátor procesu, proměnné prostředí, třídu priority, minimální a maximální velikost pracovní sady a alespoň jedno vlákno spuštění. Každý proces je spuštěn s jediným vláknem, které se často nazývá primární vlákno, a může vytvořit další vlákna z kteréhokoliv ze svých vláken.
Vlákno je entita v rámci procesu, kterou lze naplánovat ke spuštění. Všechna vlákna procesu sdílejí svůj virtuální adresní prostor a systémové prostředky. Kromě toho si každé vlákno spravuje obsluhu výjimek, prioritu plánování, místní úložiště vláken, jedinečný identifikátor vlákna a sadu struktur, které systém použije k ukládání kontextu vlákna až do jeho naplánování. Kontext vlákna zahrnuje sadu registrů počítačů ve vlákně, zásobník jádra, blok prostředí vlákna a zásobník uživatele v adresních prostorech procesu vlákna. Vlákna mohou mít svůj vlastní bezpečnostní kontext, který lze použít pro napodobování klientů.
Microsoft Windows podporuje preemptivní multitasking, což vytváří účinek souběžného spouštění více vláken z více procesů. V multiprocesorovém počítači může systém současně spouštět tolik vláken, kolik je procesorů v počítači.
Objekt úlohy umožňuje spravovat skupiny procesů jako jednotku. Objekty úloh jsou pojmenovatelné, zabezpečitelné a sdíletelné objekty, které řídí atributy procesů přidružených k nim. Operace prováděné s objektem úlohy ovlivňují všechny procesy přidružené k objektu úlohy.
Aplikace může použít fond vláken ke snížení počtu vláken aplikace a k zajištění správy pracovních vláken. Aplikace mohou zařazovat pracovní položky do fronty, přidružit práci k obslužným rutinám, automaticky zařazovat do fronty na základě časovače a svázat s vstupně-výstupními operacemi.
plánování uživatelského režimu (UMS) je jednoduchý mechanismus, pomocí kterého můžou aplikace plánovat vlastní vlákna. Aplikace může přepínat mezi vlákny UMS v uživatelském režimu, aniž by zahrnovala systémový plánovač, a znovu získává kontrolu nad procesorem, pokud je vlákno UMS zablokováno v jádru. Každé UMS vlákno má vlastní kontext vlákna místo sdílení kontextu jediného vlákna. Díky možnosti přepínání mezi vlákny v uživatelském režimu je umS efektivnější než fondy vláken pro pracovní položky s krátkou dobou trvání, které vyžadují několik systémových volání.
vlákno je jednotka provádění, kterou musí aplikace naplánovat ručně. Vlákna běží v kontextu vláken, která je plánují. Každé vlákno může naplánovat více vláken. Obecně platí, že vlákna neposkytují výhody oproti dobře navržené vícevláknové aplikaci. Použití vláken však může usnadnit portování aplikací, které byly navrženy tak, aby plánovaly vlastní vlákna.
Další informace najdete v následujících tématech:
- Multitasking
- plánování
- více vláken
- Dětské Procesy
- fondy vláken
- Objekty úloh
- User-Mode plánování
- Vlákna