Jenže frekvence CPU se od dob Pentia (max 233MHz) výrazně zvýšily, takže jsou syscally daleko rychlejší. Samotné zvýšení počtu taktů na instrukci souvisí jednak s mikrokódem, ale také se zvýšením délky pipeline CPU (5 stages u Pentia, 10–16 u pozdějších CPU). Rozdělení pipeline CPU na více stages je výhodné pro částečnou paralelizaci provádění instrukcí, i když zvyšuje počet taktů na instrukci.
CSRSS obsahuje pouze user-space komponenty Win32 subsystému (třeba user-mode podporu textové konzole). Velká spousta funkcí Win32 se provádí v user space knihovnách (kernel32.dll, gdi32.dll, user32.dll, shell32.dll), které poté přímo provádějí syscally. Před NT 4.0 byly v CSRSS další funkce, o kterých se soudilo, že nejsou výkonově kritické. Ono dát například technologicky poměrně složité GDI32 do kernelu vyžaduje dost odladěný kód, aby kernel nebyl z hlediska bezpečnosti děravý jako řešeto. U NT 4.0 bylo GDI už dobře vyladěné, takže mohlo být přesunuto do kernelu. Stabilita a bezpečnost přesunutého kódu se ukázala jako dobrá, nakonec NT 4.0 najdete v některých firmách ještě dodnes.
Názor k článku
Programujeme OS: jak na GDT a IDT
Lael Ophir (neregistrovaný)
---.net.upc.cz
28. 8. 2009 19:17

