Select the product you need help with
Virtuaalmälu aadressiruumi kasutamine Windowsi mänguarendusesArtikli ID: 940105 - Vaadake tooteid, millega see artikkel seostub. Sellel veebilehelKOKKUVÕTE
Selles artiklis käsitletakse virtuaalmälu aadressiruumi kasutamist Windowsi mänguarenduses. Artiklis kirjeldatakse potentsiaalseid probleeme, mis võivad ilmneda rakenduste käitamisel mõnes tänapäevases opsüsteemis (nt Windows Vista). Artikkel sisaldab teavet värskenduse kohta, mis võib mõne neist probleemidest lahendada. Nende probleemide kohta lisateabe saamiseks külastage järgmist Microsofti veebisaiti: http://www.microsoft.com/whdc/device/display/WDDM_VA.mspx
(http://www.microsoft.com/whdc/device/display/WDDM_VA.mspx)
LISATEAVE
Tänapäevases opsüsteemis (nt Windows Vistas) töötavad rakendused oma privaatses virtuaalmälu aadressiruumis. Virtuaalmälu aadressiruumi mahuks on 32-bitiste rakenduste korral fikseeritud enamasti 2 GB. Saadaoleva virtuaalmälu aadressiruumi maht pole seotud arvutisse paigaldatud füüsilise mälu mahuga. Iga mälueraldus, failivastendus või rakenduse laaditud teek võtab selles virtuaalmälu aadressiruumis teatud määral ruumi. Kui rakendus on kogu oma virtuaalmälu aadressiruumi ära tarvitanud, siis täiendavad toimingud nurjuvad. Ehkki kõik rakendused peaksid olema kodeeritud mälujaotustõrgetega toime tulema, ei taastu paljud rakendused sellistest tõrgetest õigesti. Seetõttu võivad programmid pärast sellisest tõrkest taastumist muutuda ebastabiilseks või reageerimise lõpetada. Olemasolevad mängud ja muud graafikarakendused eraldavad sageli virtuaalmälu rakenduse kasutatavate videomäluressursside koopia tarvis. Rakendus kasutab seda koopiat kuva kiireks taastamiseks juhul, kui videomälu sisu on kaotsi läinud. Näiteks kasutab rakendus seda koopiat siis, kui kasutaja vajutab klahvikombinatsiooni ALT+TAB või lülitab arvuti ootere?iimi. Kui rakendus loob hallatava ressursi, haldab koopiat rakenduse asemel enamasti DirectX-i käitusaeg. Rakendus võib aga koopiat ka ise hallata. Koopia kasutatav virtuaalmälu on otseses seoses rakenduse eraldatavate videomäluressurssidega. Tänapäevasel graafikaprotsessoril (GPU) võib olla 512 MB või rohkem videomälu. Rakendused, mis proovivad sellises mahus videomälu ära kasutada, võivad videoressursside mälus talletatava koopia tarvis enda alla võtta suure osa oma virtuaalmälu aadressiruumist. 32-bitistes süsteemides võivad sellised rakendused ära tarvitada kogu saadaoleva virtuaalmälu aadressiruumi. DirectX 10 ja Windows Vista WDDM-i (Windows Display Driver Model) kasutuselevõtuga pole rakendusel enam vaja ressursside koopiat süsteemimälus hoida. Selle asemel tagab videomäluhaldur iga videomälueraldise sisu säilitamise kuvaüleminekutel. Ühilduvuse huvides emuleerib Windows Vista selliste DirectX-i versioonide jaoks, mis on vanemad kui DirectX 10, "kaotsiläinud seadet". Nii tagatakse, et rakendusele nähtav API käitumine ei muutu. Videomälu virtualiseerimiseks määrab videomäluhaldur Windows Vistas virtuaalmälu aadressivahemiku igale videomäluressursile. See vahemik on rakenduse loodava koopiaga olemuselt sarnane. Videomäluhaldur suudab aga protsessi hallata tõhusamalt kui rakendus. Videomäluhaldur kasutab virtuaalmälu aadressivahemikku üleminekute või videomälu ülekehtestuste käsitsemiseks. Kui süsteemis on palju videomälu, jääb virtuaalmälu aadressivahemik enamasti kasutamata. Kuni see virtuaalmälu aadressivahemik pole kasutusel, ei eraldata sellele füüsilist mälu. Vanema draiverimudeli korral säilitatav süsteemimälu koopia seevastu on füüsilise mäluga täielikult asustatud. Kui rakendus loob oma videoressurssidest oma mälus asuva koopia või kui rakendus kasutab DirectX 9 või vanemat versiooni, sisaldab virtuaalmälu aadressiruum WDDM-i videomäluhalduri virtualiseeritud vahemikku ja rakenduse enda koopiat. Rakendused, mille kasutatavad graafika-API-d on vanemad kui DirectX 10 ja mida kasutatakse eeskätt mahuka videomäluga graafikaprotsessoritega, võivad neile eraldatud virtuaalmälu aadressiruumi hõlpsasti ammendada. Probleemi lahendamiseks muudab Microsoft viisi, kuidas videomäluhaldur säilitab videomälu ressursside sisu. Muudatusega soovitakse tagada, et iga virtuaalmälueraldise puhul poleks vaja kasutusele võtta püsivat virtuaalmälu aadressivahemikku. Selles uues olukorras võtavad rakenduse virtuaalmälu aadressiruumis ruumi üksnes "lukustatavana" loodud eraldised. Eraldised, mis pole loodud "lukustatavatena", ei võta enda alla ruumi. See lähenemine vähendab kasutatavat virtuaalmälu aadressiruumi märkimisväärselt. Seetõttu saab rakendus töötada ka suure videomäluga konfiguratsioonides ilma talle eraldatud piire ületamata. Ehkki see lähenemine vähendab virtuaalmälu aadressiruumi tarbimist, ei kaota see 2 GB virtuaalse aadressiruumi limiiti, mille ärakasutamiseni on lähenemas paljud rakendused. Lõpuks jõuavad rakendused mõnel muul põhjusel ikkagi selle piirini. VärskendusteaveMicrosofti allalaadimiskeskuses on allalaadimiseks saadaval järgmised failid:Windows Vista, 32-bitised versioonidAhenda see pilt ![]()
(http://www.microsoft.com/downloads/details.aspx?displaylang=et&FamilyID=a156e265-40ff-468e-bba2-3d1e1929c416)
Windows Vista, 64-bitised versioonidAhenda see pilt ![]()
(http://www.microsoft.com/downloads/details.aspx?displaylang=et&FamilyID=18499035-f799-4f93-bb3c-db70e22e1c1e)
Microsofti tugifailide allalaadimise kohta lisateabe saamiseks klõpsake Microsofti teabebaasi (Knowledge Base) artikli kuvamiseks järgmist artiklinumbrit: 119591 Microsoft kontrollis seda faili viiruste leidmiseks. Microsoft kasutas uusimat viirusetõrjetarkvara, mis oli faili postitamise päeval saadaval. Faili talletatakse täiustatud turvalisusega serverites, kus volitamata isikud seda faili muuta ei saa.
(http://support.microsoft.com/kb/119591/
)
Microsofti tugifailide hankimine võrguteenuste kaudu (selle artikli sisu võib olla ingliskeelne)EeltingimusedKui teie Windows Vista opsüsteemi kasutavas arvutis töötab mitu graafikakaarti, on soovitatav esmalt installida käigultparandus, mida hõlmab Microsofti teabebaasi (Knowledge Base) artikkel 936710. Lisateabe saamiseks klõpsake Microsofti teabebaasi (Knowledge Base) artikli kuvamiseks järgmist artiklinumbrit:936710
(http://support.microsoft.com/kb/936710/
)
Kui DirectX 10 rakendus töötab Windows Vistat kasutavas arvutis, kuhu on paigaldatud on mitu graafikakaarti, ei kasuta arvuti lisagraafikakaarti (selle artikli sisu võib olla ingliskeelne)TaaskäivitusnõuePärast selle värskenduse rakendamist peate arvuti taaskäivitama.Värskenduse asendamise teaveSee värskendus ei asenda varem välja antud värskendusi.Faili teaveSelle värskenduse ingliskeelne versioon sisaldab järgmises tabelis loetletud (või uuemaid) failiatribuute. Nende failide kuupäevad ja kellaajad on esitatud UTC-aja järgi. Failiteabe kuvamisel teisendatakse need kohalikuks ajaks. UTC-aja ja kohaliku aja erinevuste väljaselgitamiseks klõpsake juhtpaneelil tööriista Date and Time (Kuupäev ja kellaaeg) vahekaarti Time Zone (Ajavöönd).Windows Vista, 32-bitised versioonidAhenda see tabel
Windows Vista, 64-bitised versioonidAhenda see tabel
AtribuudidArtikli ID: 940105 - Viimati läbi vaadatud: 10. oktoober 2011. a. - Redaktsioon: 4.0 KEHTIB JÄRGMISE LÕIGU KOHTA:
| Artiklite tõlked
|



Tagasi algusse








