Strona 1 z 1

Pamięć powyżej 3GB w WinXP i Vista jako ramdysk - instrukcja

: 08-11-2008, 01:26
autor: Tr0n
Często w nowych komputerach jest montowane 4GB lub więcej pamięci RAM, w Windows potrafi wykorzystać tylko około 3-3,5 GB. Można jednak sprawić aby pozostała cześć pamięci nie leżała nieużywana.

Przewodnik ten dotyczy wersji 32-bitowej systemu Windows XP i Vista.

1. Uruchomienie PAE.
Aby móc wykorzystać pamięć powyżej widocznej przez system musimy uruchomić tryb PAE (Physical Address Extension) w systemie. Aby to zrobić należy:
- W Windows XP dodać do pliku c:\boot.ini przełącznik /PAE w lini wywołującej nasz system:

multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Windows XP" /PAE /noexecute=optin /fastdetect

- W Windows Vista należy otworzyć konsolę (cmd.exe) i wpisać polecenie

BCDEdit /set PAE forceenable

Po ponownym uruchomieniu systemu można sprawdzić we właściwościach komputera czy tryb PAE działa. Będzie to widoczne po:
Prawoklik na My Computer-> Propertis, w zakładce General na samym dole, w części Computer powinien pojawić się zapis Physical Address Extension

Obrazek

Jeżeli pomimo włączenia opcji nie mamy trybu PAE należy sprawdzić czy jest w systemie plik odpowiedzialny za ten tryb: c:\windows\system32\ntkrnlpa.exe

2. Ściągamy oprogramowanie
Z internetu nalezy pobrać Gavotte Ramdisk 1.0496.4 (nazwa pliku to Gavotte_Ramdisk_1.0.4096.4.rar). Prosze skorzystać z pomocy googla do znalezienia pliku

3. Instalacja oprogramowania
Po ściągnięciu i rozpakowaniu pliku należy najpierw wprowadzić do rejestru poprawkę o nazwie ram4g.reg - wystarczy zrobić dwuklik i Windows zapyta czy wprowadzić poprawkę do systemu. Na koniec przyszedł czas na instalację samego ramdysku. Nalezy uruchomić ramdisk.exe i w oknie aplikacji wybrać "Install Ramdisk"

W okienku Disc Size okreslamy wielkość ramdysku który chcemy zrobić.
U W A G A:
W moim przypadku jak wybrałem opcje 768 MB to program utworzył ramdysk o pojemności 980 MB czyli całą pamięć jaka nie była widoczna dla Windows. Kiedy wybrałem wielkość 1 GB to dodatkowo 100 MB zostało mi zabrane z pamięci widzianej przez Windows. Można to sprawdzić wykorzystując Task Manager. Jeżeli PAE nie zostanie włączone to cala pojemność ramdysku zostanie zabrana z RAMu który wykorzystuje Windows.

W okienku Drive Letter wybieramy literkę pod która będzie widoczny nasz ramdysk
Obrazek

Klikamy OK i w powinniśmy zobaczyć w systemie nowy dysk
Obrazek

Jeśli wszystko przebiegło prawidłowo to mamy około 1GB ramdysku, a system dalej pokazuje normalne zużycie pamięci:
Obrazek


Następnie powinniśmy poustawiać system i programy aby korzystały z nowego dysku.
Ja mam swap o wielkości 200 MB na tym dysku i wszystkie katalogi tymczasowe.
Dodatkową zaletą jest fakt "czyszczenia" tego dysku po każdym uruchomieniu systemu.
Oczywiście dysk ten można wskazać jako cache dla rożnych programów np Photoshopa lub NikonCapture NX/NX2.

UWAGA:
W przypadku zawieszenia systemu dane zawarte na ramdysku zostaną utracone po restarcie systemu

Innym rozwiązaniem może być instalacja systemu Windows 2003 który ma 36bitową obsługę pamięci i będzie widział pełne 4GB RAM, jednak kosztuje dużo więcej. Moim zdaniem częściej też wykorzystam pamięć jako ramdysk. Oczywiście Windows XP i Vista w wersji 64 bitowej widzą 4 GB pamięci jednak moim zdaniem ciągle na stacji roboczej jest więcej problemów niż zalet z tej wersji systemu..

: 08-11-2008, 01:44
autor: gabrjel
Nie żebym się czepiał
Ale empirycznie:
1. Od Service Pack 2 XP ma PAE włączone domyślnie w boot.ini i odpowiedni do tego kernel (te plik musi być bo inaczej system się nie uruchomi - BSOD)
2. Co do ograniczenia 3,5/3,25 lub w najgorszym wypadku 2,25GB RAM wynika do z adresowania pamięci urządzeń... jeśli ktoś ma kartę TV nie będzie miał widocznie więcej jak 3GB + jeśli kilka innych urządzeń na magistrali PCI adresujących duże ilości RAM (np wypasiony laptop z TPM) to ilość zleci do 2,5GB.
3. żaden program 32 bitowy nie umie wykorzystać więcej jak 2GB RAM... dlatego posiadanie więcej jak 2Gb w 32bit systemie mija się z celem - Windows wykorzystuje go jako cache... jeśli program jest w miarę nowy można spróbować dokonania "konwersji przesunięcia adresacji" (nie wiem jak to ładnie przełożyć na PL - largeaddressaware - aby 32 bit program mógł korzystać z dodatkowej pamięci powyżej 2GB (słuzy do tego editbin z VisualStudio6 i wyższych lub .NET Studio)
4. jeśli ktoś nie ma PAE (Pentium 4 nie HT) może także użyć przełącznika /3GB więcej http://technet.microsoft.com/en-us/sysi ... 63892.aspx

5. fajny i ciekawy tutorial :):
a) dobrze by było opisać sposób przenoszenia cache IE na inny dysk (plik *.reg)
b) firefox bardzo się burzy przy takich operacjach (cache w RAM)

6. Gdyby nie problemy z drukarkami to wszędzie bym już przeskoczył na 64bity... tam gdzie mogę tam używam - i przy moich obecnych 8GB RAM nie narzekam na problemy - owszem sporadycznie wykorzystuję całość - ale przy montowaniu AVI w Ulead STudio czy Premiere widać kolosalna różnicę....

: 08-11-2008, 02:30
autor: Tr0n
gabrjel pisze:1. Od Service Pack 2 XP ma PAE włączone domyślnie w boot.ini i odpowiedni do tego kernel (te plik musi być bo inaczej system się nie uruchomi - BSOD)
Ja nie miałem włączonego PAE nawet z SP3, a na jednym systemie ten plik musiałem właśnie dograć - dlatego o tym piszę. Jak masz opcje /PAE w boot.ini to może jest BSOD ale jak nie ma to ten plik nie jest konieczny. Bynajmniej u mnie go nie było - ale ja mam dziwny system ;)
gabrjel pisze:2. Co do ograniczenia 3,5/3,25 lub w najgorszym wypadku 2,25GB RAM wynika do z adresowania pamięci urządzeń... jeśli ktoś ma kartę TV nie będzie miał widocznie więcej jak 3GB + jeśli kilka innych urządzeń na magistrali PCI adresujących duże ilości RAM (np wypasiony laptop z TPM) to ilość zleci do 2,5GB.
Prawda, ale jak zleci do 2,5 to jest więcej miejsca na ramdysku :p
gabrjel pisze:3. żaden program 32 bitowy nie umie wykorzystać więcej jak 2GB RAM... dlatego posiadanie więcej jak 2Gb w 32bit systemie mija się z celem - Windows wykorzystuje go jako cache... jeśli program jest w miarę nowy można spróbować dokonania "konwersji przesunięcia adresacji" (nie wiem jak to ładnie przełożyć na PL - largeaddressaware - aby 32 bit program mógł korzystać z dodatkowej pamięci powyżej 2GB (słuzy do tego editbin z VisualStudio6 i wyższych lub .NET Studio)
Kiedyś próbowałem tak przerobić Photoshopa - generalnie lepiej zapomnieć o takiej możliwości. Przy wykorzystaniu pamięci powyżej 2GB przestał być stabilny.
Ja np mam odpalonego Firefoxa, Thunderbirda, VirtualBoxa i Photoshopa - z systemem sumarycznie 2,8 GB RAM ale żaden system 2GB nie wykorzystuje ale 3 giga się przydaje.
gabrjel pisze:4. jeśli ktoś nie ma PAE (Pentium 4 nie HT) może także użyć przełącznika /3GB więcej http://technet.microsoft.com/en-us/sysi ... 63892.aspx
Walczyłem z tym cholerstwem i z ustawieniem ilości pamięci, ale nie była widoczna, poza tym uważam że częściej wykorzystam ramdysk niż ten dodatkowy 1GB pamięci
gabrjel pisze: 5. fajny i ciekawy tutorial :):
a) dobrze by było opisać sposób przenoszenia cache IE na inny dysk (plik *.reg)
b) firefox bardzo się burzy przy takich operacjach (cache w RAM)
Dzięki, rozwinę może jutro o te uwagi
gabrjel pisze: 6. Gdyby nie problemy z drukarkami to wszędzie bym już przeskoczył na 64bity... tam gdzie mogę tam używam - i przy moich obecnych 8GB RAM nie narzekam na problemy - owszem sporadycznie wykorzystuję całość - ale przy montowaniu AVI w Ulead STudio czy Premiere widać kolosalna różnicę....
Ja miałem problemy ze sterownikami, część aplikacji mi się sypała, do specyficznych zastosowań (montowanie AVI) tak ale do normalnego użytku jeszcze nie.

: 08-11-2008, 15:26
autor: gabrjel
Tr0n pisze:
gabrjel pisze:1. Od Service Pack 2 XP ma PAE włączone domyślnie w boot.ini i odpowiedni do tego kernel (te plik musi być bo inaczej system się nie uruchomi - BSOD)
Ja nie miałem włączonego PAE nawet z SP3, a na jednym systemie ten plik musiałem właśnie dograć - dlatego o tym piszę. Jak masz opcje /PAE w boot.ini to może jest BSOD ale jak nie ma to ten plik nie jest konieczny. Bynajmniej u mnie go nie było - ale ja mam dziwny system ;)
Prawdopodobnie w czasie instalacji Instalator nie wykrył PAE, albo w systemie było =<2GB RAM