Záměr tvůrců: stabilita, ale i
rychlost
Nový operační systém firmy Microsoft se už prodává
a reklamy, jak jinak, slibují pro všechny skupiny uživatelů jen to
nejlepší. Má cenu opouštět devadesátosmičky nebo dvoutisícovky a vydat se
do toho neznáma, kterým změna základního softwarového podloží vždy je? Microsoft
vynaložil nemalé pracovní úsilí a k tomu přes 100 propagačních miliónů
dolarů, aby o tom přesvědčil celý svět. Jsou různé důvody, proč si
(ne)zvolit Windows XP jako svůj operační systém – my se dnes na některé
z nich podíváme.
Windows XP mají být konečně tou správnou kombinací stability (poskytované dosud jen řadou NT/2000) a výkonu (zde dominuje řada Windows 9x). Co činí Windows NT/2000 podstatně stabilnějšími než jsou jejich 9x protějšky? Je to součást zvaná hardware abstraction layer nebo zkráceně HAL, skrz kterou procházejí veškeré požadavky ovladačů na přístup k hardwarovým zařízením. HAL nepropustí taková volání, která by narušila stabilitu systému, a případně v nich provádí jisté korekce. Daní za toto bezpečí je ovšem snížená rychlost: kontrola přípustnosti požadavků samozřejmě zabere nějaký čas. Windows 9x takovouto kontrolu neprovádějí – v zájmu rychlosti umožňují ovladačům přímý přístup k hardwaru na té nejnižší možné úrovni. Stačí však opomenutí či nedbalost programátorů ovladačů (nebo také jejich snaha vymáčknout ze zařízení maximum bez ohledu na celkovou bezpečnost) a „modrá obrazovka smrti“ je na cestě.
Jádro nového operačního systému stojí na pevných základech řady NT/2000 – otázkou však bylo, jak na tomto „ochranářském“ modelu zajistit rychlost multimediálních operací. A protože o multimediální záležitosti se ve Windows již několik let stará DirectX, bylo nabíledni, že je nutné zajistit hladkou spolupráci tohoto rozhraní a HALu. Microsoft vyšlapával tuto pěšinku už nějaký čas; ve Windows NT ještě byla podpora her dost slabá, ale Windows 2000 již byly v tomto ohledu na velmi solidní úrovni. Windows XP jsou momentálně vrcholem snažení Microsoftu co se týče rychlosti průchodu požadavků DirectX skrz HAL při současném zachování bezpečnosti.
Zajištění
kompatibility
V minulosti vzniklo dost her, které detekují (třeba už
při instalaci) verzi Windows, a pokud zjistí, že se nejedná o 9x,
odmítnou další spolupráci. Za tímto účelem obsahují Windows XP režim
kompatibility – libovolnému programu můžete v případě potřeby přiřadit
verzi OS (95/98/ME/NT 4/2000), kterou mu Windows XP budou simulovat. Pamětníci
si jistě připomenou utilitu SETVER, která sloužila k témuž účelu
v prostředí operačního systému MS-DOS.
Benchmarky pod Windows XP –
trochu práce navíc
Jedním z nejpodstatnějších měřítek, které bude
hráč před přechodem zvažovat, je přirozeně výkon. Jenže benchmarkování pod
Windows XP není tak jednoduchou záležitostí chceme-li získat konzistentní
výsledky, musíme se vypořádat s některými nástrahami. XP totiž během svého
chodu provádí řadu analýz a dynamických optimalizací – vyhodnocuje
například přístupy k souborům a pokud zjistí, že některé z nich
často/vždy načítáte pospolu, přemístí je na disku tak, aby se daly společně
načíst co nejrychleji. U diskově orientovaných benchmarků tak můžete
v průběhu času naměřit podstatně odlišné hodnoty! Microsoft dokonce
vytvořil doporučenou metodologii pro benchmarkování pod Windows XP, která je
podrobněji popsána (anglicky) zde. Sestává
z následujících kroků:
1) Instalace operačního
systému
2) Instalace benchmarkovacího programu (BP)
3) Několikeré spuštění
a ukončení BP
4) Vyvolání funkce ProcessIdleTask ze souboru
advapi32.dll
5) Spuštění BP a měření hodnot
Dynamické optimalizace se vykonávají na pozadí, když je systém nečinný; otázkou ovšem je, jak je tato „nečinnost“ definována a zda by se některé optimalizace nechtěly spouštět uprostřed nějakého benchmarku. Jistotu, že se tak nestane, by podle Microsoftu mělo přinést explicitní vyvolání funkce ProcessIdleTask před vlastním benchmarkem – tato funkce zajistí okamžité provedení všech naplánovaných optimalizačních úloh a vyprázdnění jejich zásobníku. To se provede příkazem
Hry ve Windows
XP
Server FiringSquad nedávno provedl poměrně komplexní srovnávací měření
mezi Windows XP, 98SE a 2000. Nový OS dosáhl výsledků, které mnohé
z nás ponechávají na pochybách, zda upgradovat či nikoli.
V kancelářských aplikacích si XP vede o něco málo lépe než 98SE,
v hrách je tomu většinou naopak (i když rozdíly jsou nepatrné).
Přičteme-li k tomu, že zdaleka ne pro všechny kousky hardwaru již existují
XPčkové ovladače, a že paměťová a výpočetní náročnost XP je podstatně
vyšší než u 98SE, mám pocit, že pro běžného uživatele ještě nenastal ten
správný čas na upgrade. Argumentů pro změnu bude samozřejmě přibývat s tím,
jak se budou výrobci hardwaru i softwaru od starších OS postupně odvracet,
ale pro mě osobně se váhy zatím směrem k Windows XP nepřevážily.
Zdroje: FiringSquad, Microsoft