Paměť ve Windows XP / Vista: 32 bitů versus 64 bitů

MyEgo.cz

home foto blogy mywindows.cz kontakt

Paměť ve Windows XP / Vista: 32 bitů versus 64 bitů

Windows Vista 05.12.07

Windows Vista jsou dostupné ve dvou základních (a velice odlišných) variantách. Jedna z nich jsou klasické Windows Vista, tedy 32-bitový operační systém, občas označovaný i jako Vista x86, a druhá z nich je plně 64-bitový systém, označovaný jako Windows Vista x64.

Pro spuštění Vista x64 potřebujete nejenom procesor s podporou pro 64-bitové instrukce (Intel Pentium D, Celeron D, Core 2 Duo, Athlon 64, Athlon X2), ale i chipset, který 64-bitů podporuje (v případě Intelu to jsou zaručeně chipsety 975X a P965, možná sem patří i starší) a základní desku s možností realokace systémových prostředků nad rozmezí hlavní paměti.

32 bitů (x86)

Desítky let stará architektura PC (x86) umí přímo adresovat maximálně 4096MB RAM (tedy 232). Toto omezení se netýká Windows, je to hardwarové omezení, s nímž musí počítat jak Windows XP, tak Windows Vista, Linux (32-bitový kernel) či OS X na Intelu.

V žádném systému navíc není celých 4096MB RAM k dispozici a plně k použití, i když je máte instalované. Důvodem je fakt, že grafické karty, zvukové karty, řadiče pevných disků a další IO si vyžádají pro sebe, pro přímou adresaci, stovky MB paměti, která je poté mapována pro tato zařízení, a není fyzicky dostupná jako RAM pro operační systém.

Na svém počítači s Core 2 Duo, Intel P965 chipsetem, NVIDIA 8800GTX-768MB grafickou kartou, a instalovanými 4096MB RAM jsem tak měl k dispozici pouhých 3006MB ve Windows XP. Stejné množství bych měl k dispozici ve Vista (x86) i v libovolném jiném OS (popřípadě nižší množství, rozhodně ne vyšší).

Celkem 1090MB RAM si v mém případě totiž z RAM mapují jiné zdroje (zejména 8800GTX-768 grafická karta) a činí ji nepřístupnou.

Novější chipsety umožňují tuto IO oblast realokovat nad 4GB, nicméně, protože 32-bitový OS neumí adresovat více než 4GB RAM, nic tím nezískáte. Realokaci můžete na 32 bitech úspěšně použít jen pokud máte třeba 2GB RAM, poté operační systém používá prvních 2048MB RAM, a grafickou kartu a další namapuje na 2049MB+.

Adresace více než 4GB RAM je nicméně možná skrze PAE, což je jakýsi "hack", umožňující adresovat paměť 36-bitově i na 32 bitovém procesoru (tedy teoreticky až 64GB RAM, 236). Pro podporu PAE ovšem musí být speciálně zkompilované a napsané programy, běžné programy ji nejsou schopny použít.

Windows XP mají v kernelu podporu pro PAE (proprietární rozšíření navržené Intelem). Standardní omezení Windows XP na jeden proces je 2GB, které je možné rozšířit na 3GB pomocí přepínače /PAE /3G v boot.ini. Na většinu her či databází na desktopu by vám 3GB měly stačit.

Jak jsem ale říkal, PAE je hack, a nikoliv systémové řešení. PAE navíc mírně zpomaluje přístup do paměti, protože se do ní přistupuje přes tabulky po jednotlivých segmentech.

Sumace: pokud si koupíte 4GB RAM, a budete mít moderní chipset, použijete z nich v libovolném 32-bitovém operačním systému maximálně 3.0 - 3.5 GB (dle připojených periférií s přímým mapováním paměti). Můžete si teoreticky pomoci s PAE až na 64GB, ale většina aplikací PAE nepodporuje.

64 bitů (x64)

Pokud se přesuneme do sféry 64 bitů, můžeme teoreticky nativně adresovat, samozřejmě bez PAE, až 264, tedy kolem 2 exabajtů dat. To je množství, které by nám mělo stačit na dalších tisíc let, 128-bitové adresování paměti pro běžná PC bude i za tisíc let v praxi těžko přínosné.

Na základní desce je v tomto případě potřeba zapnout přemapování systémových prostředků nad hlavní paměť.

Používáte-li 64-bitový operační systém na novějším chipsetu, a máte-li zapnuté přemapování prostředků v BIOSu, budete mít k dispozici skutečně 4GB RAM (a více, pokud je instalujete).

Toto zní všechno moc pěkně, a skutečně to pěkné je, jádro pudla je ale jinde.

Když si nainstalujete Windows Vista x64, polovina dodaných programů bude ve dvou verzích. Dostanete Internet Explorer x86 i Internet Explorer x64, Windows Media Player x86 i Windows Media Player x64. K čemu to je? Problém je v tom, že 64-bitová aplikace musí samozřejmě pracovat jen s 64-bitovými doplňky. Jinak řečeno, 32-bitový plugin (třeba Flash) v 64-bitovém Internet Exploreru nespustíte.

Když si nainstalujete 64-bitová Windows, budete mít v paměti jak 64-bitový kernel (který je sám o sobě objemnější než 32-bitový), plus navíc celou Wow6432 vrstvu pro podporu 32-bitových aplikací. Vista x64 tak zaberou více paměti i když nic nedělají. Bez 32-bitů se neobejdete, i samotné Microsoft Office 2007 jsou a budou jen a pouze 32-bitová aplikace. Total Commander je 32-bitový. Většina audio a video kodeků je 32-bitových (takže WMP11 x64 moc nepožijete).

V praxi budete na 64-bitovém OS provozovat pár 64-bitových aplikací a hromadu 32-bitových. Jiná věc je pochopitelně serverové nasazení, kde ovšem spouštíte například jen x64 verzi databázového serveru a nic jiného.

Pokud nepotřebujete více než 4GB RAM na svém osobním počítači, doporučil bych spíše "obyčejnou" 32-bitovou edici Windows Vista. Zabere méně paměti, věšina aplikací stejně je a stále bude pouze 32-bitová, a ušetříte si občasný problém s nekompatibilitou.

Závěr

Pokud nevíte jistě, zda a proč chcete 64 bitů, pořiďte si rozhodně 32-bitovou verzi Windows Vista (x86). Jen pokud jste profesionál a využijete 4GB a více RAM, jděte do Vista x64.

Vista x64 má totiž další řadu výhod, které profesionál ocení, a nejedná se pouze o lepší správu paměti. Přečtěte si článek Jak přejít na 64 bitů.

Vista x64 navíc může mít smysl i s méně než 4 / 8GB instalované RAM, a to tehdy, chcete-li používat stejný systém na desktopu i notebooku. Osobně takto mám Vista x64 Ultimate na desktopu s celkovými 8GB RAM (4x DDR2-800 2GB modul) a Vista x64 Business na notebooku s "pouhými" 2GB RAM. Šetřím tím totiž hodně času pro instalace a konfigurace, protože nemusím stahovat a testovat dvě verze aplikací a ovladačů, používám jen ty 64bitové (pokud existují).


Komentáře

  1. 1 Rasputin Putin 18.02.09, 02:02:00
    FB

    Ahoj, mám dotaz: Mám 4GB RAM, Win XP 32bit, Intel PM965, Nvidia 8400M GS( vlastích 128MB). Co se týče paměti, je to OK. Systém hlásí, že má 4GB a dostupných 3GB, přesněji 2910MB. Tady je přibližně popsáno, kolik si co bere:(zkoumáno přes msinfo32, vždy je tam seskupeno několik zařízení)

    NVIDIA GeForce 8400M GS + Mobile Intel PM965/GM965/GL960 Express PCI Express Root Port --- 256MB
    Sběrnice PCI + Intel ICH8 Family PCI Express Root Port 1 --- 512 MB
    Sběrnice PCI + Intel ICH8 Family PCI Express Root Port 2 --- 240 MB
    ... a nějaké drobné, většina okolo 32MB.

    Tedy zhruba 1GB, což sedí. Ale nechápu, proč ty zařízení chtějí tak Extrémně mnoho paměti? Co kdybych měl v tom notebooku 1GB RAM? To by mi pak nic nezbylo, nebo by se ta zařízení "uskromnila"? Nebo si něco vykládám špatně?

  2. 2 Marek Peitz 15.05.09, 07:05:23
    FB

    ahoj, pořídil jsem si tenhle notebook:NTB MSI GX620X
    Specifikace:
    - CPU: Intel Centrino 2 P8400 (Core2Duo, 2.26GHz, 3MB cache, 1066MHz FSB)
    - Čipset: Intel® PM45 + ICH9-M
    - Paměť: 2x 2048MB DDR2 800 (max. 4GB)
    - Displej: 15.4” WSXGA (1680x1050) , ACV (Amazing Crystal Vision) TFT LCD
    - VGA: diskrétní, nVIDIA® GeForce 9600M GT, 512MB GDDR3 VRAM (1280MB pomocí TurboCache)
    - Zvuk: Theater Class 5.1channel Surround Sound Effect(RealTek ALC886H), podpora Dolby™ Digital
    - FDD: NE
    - HDD: 2.5", 320GB, SATA, 5400rpm + eSATA konektor
    - Optická mechanika: Super Multi DVD±R/RW s podporu DVD-RAM (LG GSA-H20N)
    - LAN: 10/100/1000Mbps Ethernet adapter (RealTek 8111B), WOL, Lan Boot
    - WLAN: Wi-Fi, IEEE 802.11a/g/n (Intel 3945AGN mini PCI card)
    - Bluetooth: ANO
    - Modem: 56k / V.92 modem (Agere MA560-3)
    - PC Card: Express Card slot
    - Čtečka karet: 4-in-1 (xD/SD/MMC/MS/MS Pro), RICOH
    - CMOS Web kamera: 2Mpx CMOS
    - Polohovací zařízení: touchpad se dvěma tlačítky
    - Horká tlačítka: čtyři tlačítka k okamžitému přístupu (e-mail, WEB, W-LAN, WEB Cam) + tlačítko PowerON + Turbo tlačítko (pro okamžité přetaktování)

    jaký si mam do něj dat visty, 32 nebo 64 bit?

  3. 3 Mařák Roman 31.05.09, 08:05:40
    FB

    [2] já v tom samém mám win 7 64 bit

  4. 4 Lukáš Caha 05.11.09, 01:11:25
    FB

    [1] kde si v msinfo32 zjistil co ti kolik zabira ?
    ted jsem rozsiroval pameti z 2x512MB na 2x2GB na NB Acer Aspire 5652 (XP Pro) a ukazuje mi to jen 3GB RAM

    btw: bude se toto dit i u WIN 7?

  5. 5 Vladimír Cejvik Bílek 03.04.13, 08:04:50
    FB

    Na 32-bit Windows 7 to jde pomocí http://www.bcastell.com/tech-a...