Stránka 3 z 6

Re: Ze 4 GB RAM systém umí použít jen 3,5 GB. Proč? *

Napsal: 13 bře 2013 00:22
od X
Poprosím moderátory, aby každého uživatele, co tu tvrdí, že 32bit OS nepoužívá (nenamapuje) celé 4 GB zřetelně označili za mystifikátora a i v budoucnu udělali v tomto ohledu na fóru pořádek, ihned jakmile na něco takového přijdou. Jinak se těch blbostí, co tu tvrdí někteří nepoučitelní jedinci nezbavíme! Internet je skvělé médium pro vzdělávání, bohužel inteligence lidí nejspíš klesá, jinak si to nedovedu vysvětlit!

P.S.: Hotovo, mystifikační posty nahlášeny, napíšu i Ltb, aby podobné nesmysly zde na fóru už zarazil, protože se už nehodlám rozčilovat!

Není přece složité pochopit, že hardware musí být v těch 4 GB namapováno přednostně před RAM, protože jinak grafika nebude zobrazovat, zvukovka nebude hrát a podobně!

32bit OS = RAM + hardware = 4 GB je vždy maximálně dosažitelná hranice pro paměť za normálních okolností! (výjimky platí pro speciální software, ale mnohé programy s ním mají problémy + RAMdisky )

Příklady:

Mám 6 GB RAM. Grafika má vnitřní pamět 1 GB a ostatní hardware můžeme zanedbat (malé hodnoty, viz zvukovka 64 MB), takže = 4 GB (32bit OS) - 1 GB (grafika) = 3 GB RAM + 1 GB hardware = 4 GB

Jiný:

Mám 3 GB RAM a grafiku s 3 GB = 4 GB mapovací prostor 32bit OS - 3 GB grafika = 1 GB RAM + 3 GB hardware = 4 GB

Další:

Mám 4 GB RAM a 256 MB na grafice = 3,75 GB RAM + 0,25 GB hardware = 4 GB

Nebo:

Mám 1 GB RAM a 1 GB grafiku = 2 GB a dalších 2 GB mám možnost adresovat, tedy například dokoupit operační paměť (RAM)

atd ...

Re: Ze 4 GB RAM systém umí použít jen 3,5 GB. Proč? *

Napsal: 13 bře 2013 07:24
od karlos
Já jen doplním X a jeden z mnoha studijních kanálů: http://myego.cz/item/pamet-ve-windows-x ... us-64-bitu

Re: Ze 4 GB RAM systém umí použít jen 3,5 GB. Proč? *

Napsal: 13 bře 2013 11:58
od MiliNess
32bit OS = RAM + hardware = 4 GB je vždy maximálně dosažitelná hranice pro paměť

Maximální hranice které paměti? Fyzické nebo virtuální? Pakárna je, že ani v jednom případě to neplatí ;)

Re: Ze 4 GB RAM systém umí použít jen 3,5 GB. Proč? *

Napsal: 13 bře 2013 15:24
od X
Jasně že fyzické, virtuální (odložený soubor na hardu) si mohu stvořit dle harddisku, ale významně si paměť (OS) zpomalím na úroveň rychlosti onoho harddisku. A o obezličkách (PAE, RAMdisky) jsem psal, v praxi použijeme na 32bit OS právě maximálně těch 4 GB. Samozřejmě že ne pro jeden soubor v paměti ... zmiňováním všech těchto výjimek a specialit už tak zmatené uživatele ještě více mateme.

Re: Paměti DDR2

Napsal: 13 bře 2013 19:07
od josef
Zba píše:Co máš za OS?

Mám Win8 pro, 32 bit

Re: Ze 4 GB RAM systém umí použít jen 3,5 GB. Proč? *

Napsal: 13 bře 2013 19:11
od tux
Myslím že není třeba dál odpovídat, protože odpověď už si dostal, a ne jednou.
Takže si pořiď x64 systém, nebo máš hold smůlu.

Re: Ze 4 GB RAM systém umí použít jen 3,5 GB. Proč? *

Napsal: 13 bře 2013 20:57
od MiliNess
To X:
Dopouštíš se omylu, pokud za virtuální paměť považuješ stránkovací soubor na harddisku.
Tak trochu povídání:
Systém Windows používá k adresaci paměti téměř výhradně virtuální adresy. Tedy i jádro. Paměť (jak fyzická, tak virtuální) je rozdělena na paměťové stránky (u fyzické paměti se tomu spíš říká rámce stránek)
Ty mají ve 32 bit Windows velikost 4kB nebo 4MB (u PAE 2MB). Jestli se použijí malé (4kB) nebo velké (4MB) závisí na velikosti fyzické paměti nebo manuálním nastavení.
Adresa fyzické paměti se zjistí při překladu adresy. Překlad adres je celkem komplikovaný, protože se virtuální adresa přeloží nejprve na lineární adresu (následek segmentace) a ta teprve na fyzickou adresu paměti (následek stránkování). Segmentaci můžeš ignorovat, protože segmenty ve Windows 32 bit jsou téměř flat, virtuální adresa se tedy rovná lineární. Zajímá nás pouze stránkování, které bude probíhat i v případě, že bys zakázal stránkovací soubor.
U malých 4kB stránek se virtuální adresa nakrájí na 3 kousky (v režimu PAE na čtyři), první část slouží jako index do adresáře stránek a pomocí něho se najde příslušná položka adresáře stránek (PDE). PDE obsahuje odkaz do fyzické paměti, kde se nachází příslušná stránkovací tabulka. Druhá část virtuální adresy se použije jako index do této stránkovací tabulky a podle něho se najde v této stránkovací tabulce příslušná položka stránkovací tabulky (PTE). PTE obsahuje umístění fyzické paměťové stránky (číslo rámce stránky - PFN), kde se adresovaná data nacházejí. A poslední část virtuální paměti (12 bitů) se použije jako offset na kterém se adresovaná data ve stránce nachází. Aby to nebylo tak jednoduché, odkaz na stránkovací tabulku v PDE nemusí být platný, stránkovací tabulka může být odložena ve stránkovacím souboru a musí se nejprve do fyzické paměti nahrát prostřednictvím obsuhy výpadku stránky. Stejně tak v PTE nemusí být platný odkaz na stránku fyzické paměti s požadovanými daty a také se nejprve musí načíst do fyzické paměti (RAM)
To by bylo letem světem o překladu adres a stránkování.
Kolik fyzické paměti lze adresovat, je víceméně závislé na velikosti položek PDE a PTE ve stránkovacím adresáři a stránkovacích tabulkách. Bez PAE mají velikost 32 bitů a s PAE 64 bitů.
Všechny bity položky se nepoužívají pro adresaci, systém bez PAE používá 20 bitů z 32 bitů u PAE 24 bitů 64 bitů. Zbytek jsou různé příznakové bity.
A tady je ten limit adresace paměti. 20 bitů v PTE + 12 bitů offset do rámce stránky (poslední část virtuální adresy) je 32 bitů, což umožňuje adresaci 4GB RAM. V případě PAE je to 24 bitů v PTE + 12bitů offset, což je 36 bitů, pomocí kterých je možno adresovat 64GB RAM.
Další omezením může být schopnost adresace čipové sady a procesoru. Starší čipové sady dovolují adresovat např. pouze 8GB, procesor nemusí podporovat PAE (to procesor zajišťuje překlad adres)

Tedy:
-32 bitový Windows neumí adresovat více jak 4GB v případě, že není zapnutý režim mapování paměti PAE. A nepomůže ani 120GB stránkovací soubor. Jelikož systém používá i v jádře virtuální adresy, je zde to omezení vyplívající z malé velikosti položek stránkovacích tabulek a adresářů. Tedy měl pravdu petr22 v jednom svém příspěvku, že pokud do takového systému nacpeš grafický adaptér s 2GB videopaměti (kterou je nutno namapovat do virtuální paměti, aby se s ní dalo pracovat), připravíš se o 2GB z operační paměti, které pak nelze adresovat.

-jakmile je zapnuta podpora PAE, toto omezení zmizí protože díky větším PDE a PTE lze adresovat až 64GB paměti.
Pak tu ale máme uměle vytvořený 4GB limit u většiny verzí 32 Windows, který vytvořil MS (vyjma Windows XP Starter Edition - 512MB, Windows Vista Starter - 1GB a Windows 7 Starter - 2GB)
Pokud je tedy limit aplikovám na celou fyzickou paměť, tedy i videopaměť, I/O porty, konfigurační porty, různé buffery a pod., bude situace stejná jako v předešlém případě. Pak by pomohl patch, který tento limit odstraňuje nebo nějaký Win Server, kde je limit vyšší nebo je zcela odstraněn. To už si musí zjistit někdo jiný.

-adresní prostor procesu je 4GB velký. Z toho si ukousne jádro 2GB (v režimu 3GB pouze 1GB). Aplikaci tedy zbývají 2GB (případně 3GB). To je TEORETICKÁ největší možná velikost alokované paměti. V praxi je to samozřejmě méně. V režimu PAE bez limitu ale jádro využije i fyzickou paměť na 4GB. Správce mezipaměti ji např. používá k odkládání souborových dat a systém pak nemusí tak často sahat na disk.
Nějaké hře je to ale úplně k prdu. A troufám si pochybovat o významu operační paměti nad 4GB i v 64 bitovém systému.

Re: Ze 4 GB RAM systém umí použít jen 3,5 GB. Proč? *

Napsal: 13 bře 2013 21:12
od ITCrowd
Chjo. Už jsem to tu psal, ale nějak to nemůžu najít. 32bit. systém může adresovat 2^32 bytů, 64 bitový 2^64 bytů. Tím je dáno co je fyzicky možné.
Swap, čili virtuální paměť se do toho nepočítá, a pokud by si o tom někdo něco přečetl bude vědět.
Co se týče řešení PAE+RAM disk, kdysi jsem to takhle používal s tím, že na RAM disku byl swap. To skutečně ke zrychlení vedlo.
Pro matematiky: 2^32 = 4294967296 /1024 = 4194304 KB / 1024 = 4096 MB / 1024 = 4 GB
Tím je to snad jasné.

Re: Ze 4 GB RAM systém umí použít jen 3,5 GB. Proč? *

Napsal: 13 bře 2013 21:18
od MiliNess
ITCrowd: Prosím přečti si ten článek na tebou. swap není virtuální paměť. Virtuální paměť ani swapovací soubor nepotřebuje.
A navíc pleteš jablka s hruškami (virtuální paměť s fyzickou) 4GB limit se týká velikosti virtuální paměti, ne fyzické.
Jak mi tedy vysvětlíš, že 32 bitová verze Windows Server 2008 Enterprise podporuje 64GB paměti?

Re: Ze 4 GB RAM systém umí použít jen 3,5 GB. Proč? *

Napsal: 13 bře 2013 21:33
od ITCrowd
Jak mi tedy vysvětlíš, že 32 bitová verze Windows Server 2008 Enterprise podporuje 64GB paměti?

Na to se zeptej mrkvosoftu. Nevím jakým způsobem to mají uděláno, ale u serverových edicí to tak měli vždycky. Každopádně fyzika a matematika je jasná.

Re: Ze 4 GB RAM systém umí použít jen 3,5 GB. Proč? *

Napsal: 13 bře 2013 21:38
od MiliNess
Já to vím, ale ty to nemůžeš pobrat. :lol:
Pokud to chce člověk pobrat, musí pochopit rozdíl mezi virtuální pamětí a fyzickou pamětí. Pokud budete přesvědčeni, že virtuální paměť je stránkovací soubor, pak nemá smysl se o tom bavit.
Limit schopnosti adresace fyzické paměti je prostě ve velikosti PDE a PTE položek.
Navíc zde platí i tvá matematia s fyzikou, jelikož PAE adresuje fyzickou paměť pomocí 36 bitů (ne pomocí 32bitů) a to mi sedí.

Re: Ze 4 GB RAM systém umí použít jen 3,5 GB. Proč? *

Napsal: 13 bře 2013 21:43
od ITCrowd
Ale můžu, jen vycházím z toho, co se tu píše:
1. Nejde o serverový systém.
2. Ve windows je swap (stránkovací soubor) označován jako virtuální paměť.
3. My třeba adresaci paměti OS probírali na linuxu, protože mrkvosoft to tají. To ale neznamená, že nemůžeš vědět víc než já.