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

Wszelkie dyskusje typu OffTopic

Moderator: LuxTeam

Awatar użytkownika
Tr0n
Posty: 226
Rejestracja: 02-10-2006, 12:19
Lokalizacja: Fentange

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

Post 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..
Pozdrawiam
Tr0n
gabrjel
Posty: 1654
Rejestracja: 10-01-2008, 11:22
Lokalizacja: profil nieaktywny

Post 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ę....
"Bądź uroczy dla swoich wrogów, nic ich bardziej nie złości."
Awatar użytkownika
Tr0n
Posty: 226
Rejestracja: 02-10-2006, 12:19
Lokalizacja: Fentange

Post 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.
Pozdrawiam
Tr0n
gabrjel
Posty: 1654
Rejestracja: 10-01-2008, 11:22
Lokalizacja: profil nieaktywny

Post 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
"Bądź uroczy dla swoich wrogów, nic ich bardziej nie złości."
ODPOWIEDZ