Treść książki

Przejdź do opcji czytnikaPrzejdź do nawigacjiPrzejdź do informacjiPrzejdź do stopki
onerównieżśledzićswojewłasneżądaniawejścia/wyjścia(I/O).Podobniejakprocesy
,wątki
równieżmająokreślonypriorytet.Ogólnypoziom(zakres)tegopriorytetujestdziedziczony
zprocesu,alewątekmożeskorygowaćswójwłasnypriorytetwgranicachtegozakresu.
Priorytetjestkluczowąwłaściwościąprocesulubwątku,gdyżokreślaon,jakczęstowątek
uzyskaprzydziałcykliprocesora.Jakmożnasiędomyśleć,imwyższypriorytet,tymczęściej
wątekuzyskujeczasprocesora.Aponieważnicniedziejesiębezudziałuczasuprocesora
wceluwykonywaniainstrukcji,cechatajestkrytyczna.
uWagaJeśliktośchciałbyzobaczyć,jakpriorytetokreślonegoprocesumasiędoinnychtypów
procesów,możewykorzystaćnarzędzieTaskManager(Menedżerzadań)iwłączyćwyświetlanie
kolumnyBasePriority(Priorytetpodstawowy).Łatwozauważyć,żeprocesysystemowe,takiejak
Csrss.exe(Win32Subsystem)mająwyższypriorytetniżaplikacjeużytkownika,zatemczęściej
uzyskująprzydziałczasuprocesora.Jesttodziałaniezamierzonenaniczdałabysięnawet
największaresponsywnośćaplikacji,jeślisameWindowsprzestanąodpowiadać.
Jednązrzeczy
,któreodróżniająserweryRDSHsodinnychtypówserwerów,jestsposób
wykorzystaniapriorytetyzowaniaprocesów.Innetypyserwerów,najogólniejmówiąc,pro-
jektowanetak,abyrobiłytylkojednąrzecz,alebardzodobrze:przeszukująbazydanych,
zarządzająpocztąelektronicznąlubudostępniająwitrynyinternetowe.Ichpriorytetyjas-
ne:aplikacjapierwszegoplanujesttą,któramusidziałaćsprawnieibezzakłóceń.Ztego
względuprocesyiwątkinależącedotakiejaplikacjimająwyższypriorytet,niżtewtle.
uWagaSamoto,żeaplikacjapierwszegoplanujestgłównąobsługiwaną,nieoznacza,żejej
procesymająnajwyższypriorytet.Dogłębneomówieniezagadnieńzwiązanychzwzględnymi
priorytetamiróżnychtypówprocesówznaleźćmożnawksiążceMicrosoftWindowsInternals,
FifthEditionMarkaE.RussinovichaiDavidaA.Solomona(MicrosoftPress,2009).
Wodróżnieniuodinnychserwerów,RDSHniemajednegojasnegoceluczyteżpriorytetu
(wodróżnieniunp.doserweraExchange,którykoncentrujesięnajednymzadaniu:Muszę
przesłaćcałąpocztę!”).Miewajądziesiątkirównoczesnychużytkowników,zktórychkażdy
robicoinnego,alewszyscyoczekująsprawniereagującegośrodowiska.Zpowodukonflik-
tupomiędzypriorytetamiposzczególnychużytkownikówjedynąmetodądziałaniaserwera
zzainstalowanąroląRDSHjestustawienierównegopriorytetuwszystkichprocesówiwąt-
kówużytkowników.Wyrównaniepriorytetówprocesówsprawia,żemożemyoszacować
obciążenie,jakiemumożepodołaćserwer,ustalając,jakwieleczasuprocesorawymagapoje-
dynczasesjaużytkownika.Pokażemy
,jaktozrobićprzyużyciunarzędziaPerformanceMoni-
torwdalszejczęścitegorozdziału.Jednakkluczowąrzeczą,którąmusimyzapamiętać,jest
fakt,żedziałaniepolegającenazainstalowaniuroliRDSHoptymalizujesystemoperacyjny
dopełnieniatejroliwsieci.Serwertakiniepriorytetyzujeprocesówtak,jakrobitoserwer
bazydanychlubpoczty
,gdyżpotrzebyzasadniczoodmienne.
Gdybywjednejsesjizostałauruchomionaznacznaliczbawymagającychaplikacji,
mogłobytopotencjalniewpłynąćnainnesesje,pomimotegonawet,żewszystkieaplikacje
majątensampriorytet.WsystemieWindowsServer2008problemtenbyłrozwiązywany
46
Rozdział2:KluczowekoncepcjearchitekturyRDS