Sdílet prostřednictvím


Úvod k objektům vláken

Objekt vlákna v uživatelském režimu představuje cestu provádění v rámci aktuálního procesu. Každý objekt vlákna v uživatelském režimu je implementován pomocí integrovaného objektu vlákna režimu jádra.

Objekt vlákna režimu jádra je instance typu objektu dispečeru definovaného jádrem. Představované vlákno je základní plánovatelná entita v operačním systému.

Objekt vlákna:

  • Je odesláno ke spuštění a vykonání jádrem.

  • V každém okamžiku mají následující vlastnosti:

    • Stav odeslání

    • priorita

    • kontext

    • Režim spouštění (jádro nebo uživatel)

    • afinita

  • Je „vlastněn“ objekt procesem, ale může se připojit k adresnímu prostoru jiného procesu.

Většina ovladačů se obvykle spouští v kontextu aktuálně spuštěného vlákna, tj. v libovolném kontextu vlákna. Zatímco ovladač systému souborů může vytvořit nezávislý proces pro vlastní vlákna vyhrazená zařízením, systémy souborů se obvykle vyhýbají nastavení procesu a vláken vytvořených ovladačem, aby se ušetřila systémová paměť a zabránila režii kontextových přepínačů.

FSs (a další ovladače) mohou nastavit vlákna vyhrazená pro zařízení nebo mohou používat systémová pracovní vlákna, pokud potřebují specifický kontext vlákna ovladače pro vykonání. Ovladače používají rutiny PsXxx režimu jádra k vytváření procesů a/nebo vláken vyhrazených zařízením. FSs volá rutiny ExXxx pro použití systémových pracovních vláken.