- Przyczyny, które mogą zakłócać przejście do 64-bitowych wersji systemu Windows
- Brak bezpośredniego wsparcia dla starszych urządzeń
- Koszty finansowe przy zmianie wersji systemu Windows
- Testowanie Windows 7 x86 z jądrem, które obsługuje do 128 GB pamięci RAM
- Używanie pamięci fizycznej Windows 7 x86 z jądrem źródłowym
- Używanie pamięci fizycznej Windows 7 x86 z jądrem ntkr128g.exe
- Testy porównawcze Windows 7 x86 z jądrem ntkr128g.exe
- Czy powinienem używać Windows 7 x86 ze zmodyfikowanym jądrem (z obsługą do 128 GB pamięci RAM)
Witajcie drodzy czytelnicy bloga www.ithabits.ru. Zwracam uwagę na końcową część serii artykułów o „przygodach” dużej pamięci RAM w systemach 32-bitowych.
Pokrótce powtórzę wnioski z poprzednich publikacji tego tematu:
Limit pamięci fizycznej wynoszący 4 gigabajty został pokonany przez 32-bitowe procesory x86 w 1995 r. Dzięki wprowadzeniu technologii PAE (Physical Address Extension). Praktycznie wszystkie nowoczesne 32-bitowe systemy operacyjne obsługują PAE, co pozwala im pracować z pamięcią fizyczną do 128 GB.
W przypadku aplikacji (programów) działanie systemu w trybie PAE nie jest równoważne z przełączaniem na x64, ponieważ nadal mają one dostęp tylko do 4 GB pamięci wirtualnej ( Część 1 ).
- Wszystkie 32-bitowe systemy operacyjne Windows obsługują PAE. Począwszy od systemu Windows XP z dodatkiem SP2, tryb PAE jest aktywowany w celu wymuszenia działania technologii zabezpieczeń zapobiegania wykonywaniu danych (DEP). Mimo to wersje klienckie systemu Windows x86 mają limit maksymalnej ilości obsługiwanej pamięci fizycznej na poziomie 4 GB. To ograniczenie w jądrze systemu operacyjnego zostało wprowadzone przez Microsoft w celu zapewnienia działania sterowników urządzeń opracowanych bez uwzględnienia możliwości ich działania w trybie PAE ( Część 2 ).
- Zainstalowany w klienckich wersjach Windows x86 4 GB, limit pamięci fizycznej uniemożliwia wykorzystanie w nich całej pamięci dostępnej w komputerze. Microsoft wprowadza w błąd 32-bitowych użytkowników Windows deklarując wsparcie dla 4 GB pamięci fizycznej ( Część 3 ).
Dzisiaj przetestujemy zdolność systemu Windows 7 x86 do pracy z ponad 4 GB pamięci RAM.
Prawdopodobnie byłoby możliwe, aby nie tworzyć osobnego posta i nie kończyć wszystkiego ostatnio, ale naprawdę nie chciałem mieszać ze sobą opcji „= 4 GB” i „> 4 GB”. Po pierwsze, 4 GB jest oficjalnie deklarowanym limitem pamięci fizycznej Microsoft dla wersji klienta. Po drugie, bardzo ważne było zrozumienie przestrzeni adresowej w tym zakresie i zrozumienie, co tu jest nie tak. Mianowicie, dlaczego 4 GB nie jest naprawdę obsługiwane.
Przyczyny, które mogą zakłócać przejście do 64-bitowych wersji systemu Windows
Czy warto dziś zmusić 32-bitowy system Windows do pracy z pamięcią RAM o pojemności 4 GB większą od firmy Microsoft? Czy nie jest łatwiej przejść do wersji 64-bitowej i zapomnieć o wszystkim?
Mój główny komputer działa pod kontrolą systemu Windows 7 x64. Jestem całkowicie zadowolony z systemu lub prawie wszyscy są zadowoleni. Z sekcji niezadowolenia:
Brak bezpośredniego wsparcia dla starszych urządzeń
Mam wielofunkcyjną drukarkę Canon LaserBase MF3110, która, niech go Bóg błogosławi, nadal spełnia swoje funkcje. Nie mogę jednak wydrukować go bezpośrednio z 64-bitowego systemu Windows z powodu banalnego braku odpowiednich sterowników 64-bitowych. Myślę, że nigdy nie będą.
Dokładnie taka sama sytuacja, nawet gorsza, ze skanerem Hewlett-Packard.
Nieco później na pewno powiem ci, jak wyjść z sytuacji dzięki wirtualizacji. Cóż, w rzeczywistości nie należy odrzucać tego faktu z powodu braku kierowców, regularnie pracujących, jeśli nie nowych, urządzeń.
Obecnie starszy sprzęt jest jednym z powodów, które wciąż spowalniają przejście na 64-bitowe systemy operacyjne.
Fakt, że w porównaniu z systemami x64, x64 zajmuje nieco więcej miejsca na dysku i pamięci, trudno uznać za poważną wadę, chociaż lubią o tym wspominać. Ale działają szybciej dzięki pełniejszemu wykorzystaniu procesora.
Koszty finansowe przy zmianie wersji systemu Windows
Innym powodem, który może utrudniać przejście na x64 dla tych, którzy nadal używają 32-bitowych wersji systemu Windows, jest organizacja finansowo-organizacyjna. Być może jest to jeszcze ważniejsze niż starszy sprzęt.
Załóżmy, że jakiś czas temu kupiłeś komputer w sklepie z preinstalowaną 32-bitową wersją systemu Windows, a jakiś czas później, z tego lub innego powodu, postanowiłeś przełączyć się na 64-bitowy. Bardzo dobrze, ale jak naprawdę wdrożyć tę decyzję?
Przypuśćmy, że proces przestawiania systemu „od zera” wraz z jego opiekunem i, muszę powiedzieć, nie zawsze udany, transfer danych i programów, wcale cię nie przeraża.
Cena systemu Windows x64 nie różni się od systemu Windows x86, ale gdzie jest oficjalnie zajęta i nie płacić dodatkowych pieniędzy? Szczerze mówiąc, nie wiem. Jeśli ktoś wie, udostępnij. Mogę założyć, że legalne rozwiązanie nadal przechodzi przez sklep. Jeśli jednocześnie bierzemy pod uwagę, że oficjalnie wersje systemu Windows są dostarczane tylko z nowymi komputerami i będą musiały być wybierane z droższych opcji pudełkowych, to chęć natychmiastowego wdrożenia wymyślonego przejścia do x64 może wyraźnie spaść.
Dobrze jest połączyć przejście do x64 ze zmianą komputera, ale nie zdarza się to zbyt często.
Testowanie Windows 7 x86 z jądrem, które obsługuje do 128 GB pamięci RAM
Dzisiaj komputerem testowym będzie komputer stacjonarny z procesorem I7 i 6 GB pamięci RAM.
Ponieważ system x64 w kontekście tematu nie jest dla nas przyjacielem, a maszyna wirtualna również nie zapisuje się z powodu tego, że nie daje więcej niż 4 GB pamięci, będziemy musieli specjalnie zainstalować 32-bitowy system Windows. Od dawna chciałem przetestować możliwość uruchomienia systemu operacyjnego z dysku wirtualnego. Jest to bardzo odpowiednia okazja, aby spróbować tej okazji.
Instalacja „Windows 7 x86 Corporate” na dysku wirtualnym nie była trudna. Jedyną rzeczą, której nie można było zrobić w systemie pracującym z dyskiem wirtualnym, jest określenie wskaźnika wydajności - zaczyna on mierzyć, a następnie mówi, że nie może zakończyć oceny wydajności systemu dyskowego. Szkoda, ale teraz nie ma dla nas znaczenia.
PS Pojawił się artykuł ze szczegółowym opisem opcji instalacji systemu Windows 8.1 na dysku wirtualnym.
Używanie pamięci fizycznej Windows 7 x86 z jądrem źródłowym
Częściowo powtórz to, co zrobiliśmy w badaniu 32-bitowego systemu Windows 7 z 4 GB pamięci fizycznej>
Tutaj wszystko jest oczekiwane. Z dostępnych 6 GB 3,24 GB, co stanowi tylko 54% zainstalowanej pamięci fizycznej. Straty składają się z 4 - 3,24 = 0,76 GB dla adresów urządzeń i 2 GB, odciętych powyżej 4 GB.
Ale „Monitor zasobów” mówi, że 2,8 GB jest zarezerwowane na sprzęt, ale oczywiście nie wierzymy w to i uruchamiamy narzędzie MemInfo :
Używanie pamięci fizycznej Windows 7 x86 z jądrem ntkr128g.exe
Teraz jeszcze raz popełnij nielegalne działania przeciwko Microsoftowi w imię nauki i usuń limit 4 gigabajtów w jądrze systemu operacyjnego. Ze względu na to, że w wyniku naszych eksperymentów z laptopem mam już gotowy „stały” rdzeń, nie uruchomię patcher i po prostu skopiuj go do nowego systemu i połącz się z pobieraniem. Aby to zrobić, wykonaj następujące czynności:
- Skopiuj potrzebne jądro „ntkr128g.exe” do folderu C: Windows System32;
- Uruchamiamy bcdedit.exe bez żadnych parametrów w wierszu poleceń z uprawnieniami administratora i znajdujemy sekcję odpowiedzialną za uruchomienie systemu z wirtualnego dysku twardego (przepisałem tę sekcję w poprzednim kroku, gdy skonfigurowałem system Windows 7 do uruchamiania z VHD). W moim przypadku z głównego systemu 64-bitowego będzie wyglądać tak>
Jeśli uruchomimy system z VHD i zrobimy to samo, zobaczymy podobny obraz, ale zmienią się tylko ścieżki wszystkich „urządzeń”. To, co opisano poniżej, można wykonać z dowolnego systemu;
- Aby uniknąć błędu, uruchom „Notatnik”, skopiuj do niego zawartość ekranu za pomocą schowka (ekran linii poleceń -> prawy przycisk myszy -> „Zaznacz wszystko” -> „Enter” -> „Notatnik” -> „Edytuj / Wklej”) i zapisz w dowolnym pliku tekstowym. W rzeczywistości interesuje nas „Identyfikator”.
- Utwórz nowy rekord rozruchowy, kopiując znaleziony i nadaj mu nową nazwę dla tej opcji. Używamy teraz zapisanych w notatniku w przeciwnym kierunku dla wygody podstawiania identyfikatorów:
bcdedit / copy {5c2a7c3c-a04e-11de-9dac-b90d3342b585} / d „Windows 7 VHD 128” - naturalnie, w twojej wersji identyfikator będzie zupełnie inny.
Uruchom ponownie bcdedit bez parametru i upewnij się, że pojawił się nowy wpis. Chociaż to nic innego jak nazwa oryginału.
- Należy dodać nowy wpis:
bcdedit / set {5c2a7c3c-a04e-11de-9dac-b90d3342b585} jądro ntkr128g.exe - określ, które jądro załadować;
bcdedit / set {5c2a7c3c-a04e-11de-9dac-b90d3342b585} testingigning Tak - ze względu na fakt, że suma kontrolna jądra uległa zmianie, mówimy, że pracujemy w trybie testowym;
bcdedit / set {5c2a7c3c-a04e-11de-9dac-b90d3342b585} pae ForceEnable - tak na wszelki wypadek;
Zobacz, co się stało>
Uruchom nowy system i zobacz wynik>
Sądząc po tym, co system mówi o sobie, teraz działa ze wszystkimi 6 GB pamięci fizycznej.
„Monitor zasobów” informuje, że praktycznie nic nie jest zarezerwowane dla sprzętu. Jak dobrze rozumiemy, ta sama przestrzeń adresowa 0,76 GB jest faktycznie zarezerwowana, ale nie jest już odejmowana od zainstalowanej pamięci (trzeba będzie zobaczyć, jak to miejsce brzmi w oryginalnym języku angielskim. tłumaczenie ”).
Patrzymy na zakresy pamięci zarejestrowanej w systemie>
Zgodnie z oczekiwaniami dodano nowy duży zakres pamięci powyżej 4 GB.
Testy porównawcze Windows 7 x86 z jądrem ntkr128g.exe
Aby rozwiać ostatnie wątpliwości i doprowadzić do ostatecznego wyniku naszych badań, uruchomimy coś, co wymaga dużo pamięci RAM. Pierwszą rzeczą, która przychodzi na myśl, są maszyny wirtualne w VirtualBox. Mam już kilka gotowych maszyn wirtualnych utworzonych w głównym systemie roboczym z Windows 7 x64.
Chociaż nasz system testowy z systemem Windows 7 x86 działa z dysku wirtualnego, nie ma nic wspólnego z maszyną wirtualną z wyjątkiem dysku VHD. Doskonale widzi wszystkie dyski fizyczne zainstalowane w moim komputerze, więc łatwo jest podłączyć gotowe maszyny wirtualne do VirtualBox. Oczywiście w nowym Windows 7 x86 musisz najpierw zainstalować sam VirtualBox.
Przypiszmy każdej maszynie wirtualnej, powiedzmy, 1 GB pamięci i zacznijmy je uruchamiać jeden po drugim, najpierw w oryginalnym systemie, który widzi tylko 3,24 GB, a następnie w „dostosowanym”.
Początkowy system zdołał uruchomić cztery maszyny wirtualne, jednak, jak widać z przedstawionego fragmentu ekranu, to już koniec - „Nie można przydzielić i zablokować pamięci ... Proszę. Maszyny wirtualne nie reagowały na nic i musiały je nienormalnie wyłączyć.
A teraz powtarzamy nasz ekstremalny eksperyment w „dostosowanym” systemie Windows 7 x86>
Jak widać z przedstawionego fragmentu ekranu, uruchamiane są cztery maszyny wirtualne z Linuksem, każda z 1 GB pamięci i jedna z Windows XP z 512 MB pamięci RAM.
Uwierz mi, możesz sprawdzić, ale wszystko działało dobrze. Na przemian przełączałem się na różne systemy wirtualne i uruchamiałem w nich istniejące aplikacje, jednocześnie uruchamiałem przeglądarkę na hoście - bez hamowania, nie obserwowano błędów. Nie wiem o tobie, ale podobało mi się.
Czy powinienem używać Windows 7 x86 ze zmodyfikowanym jądrem (z obsługą do 128 GB pamięci RAM)
Polecam ze stron bloga, aby użyć rozważanej opcji zwiększenia dostępnej pamięci fizycznej dla 32-bitowych wersji systemu Windows, oczywiście nie mogę i nie będę. Są ku temu dwa dobre powody:
- Naruszenie umowy licencyjnej z firmą Microsoft, a nie w trzech miejscach, i nie chcemy niczego naruszać. Oczywiście, jeśli chcesz, możesz znaleźć kilka okoliczności łagodzących. Na przykład fakt, że koszt podobnych wersji Windows innego bitness jest taki sam i nie wyrządzamy Microsoftowi szkód finansowych w wyniku naszych działań. Albo fakt, że instalując 4 GB pamięci w komputerze, nadal musisz sprawdzić, komu zawdzięczamy - wsparcie dla tego woluminu jest określone w licencji, ale, jak wiemy, w rzeczywistości nie istnieje. Niemniej jednak jest to naruszenie naruszenia. Zakładamy, że wszystko, co zrobiliśmy, było tymczasowe i dla dobra nauki. ;
- Nie ma gwarancji, że komputer nie używa urządzeń z „głupimi” sterownikami, których działanie w trybie PAE z adresami pamięci fizycznej powyżej 4 GB spowoduje awarię systemu.
Najwyraźniej będziemy musieli zakończyć naszą dyskusję na temat tajemnic dużej pamięci w 32-bitowych systemach operacyjnych jako banalne zalecenie - jeśli planujesz zwiększyć pamięć RAM komputera do 4 lub więcej GB lub zamierzasz kupić nowy komputer z taką pamięcią, pomyśl o przełączeniu na 64-bitowy system operacyjny .
Cóż, jeśli relacje z x64 nie sumują się kategorycznie - przeczytaj to wszystko uważnie.
Czy nie jest łatwiej przejść do wersji 64-bitowej i zapomnieć o wszystkim?Bardzo dobrze, ale jak naprawdę wdrożyć tę decyzję?
Cena systemu Windows x64 nie różni się od systemu Windows x86, ale gdzie jest oficjalnie zajęta i nie płacić dodatkowych pieniędzy?