Zmodyfikuj „Swapiness” systemu Windows


10

Czy w systemie Windows 7 istnieje modyfikowalny odpowiednik „zamiany”?

Mój system ma 8 GB pamięci RAM, co jest więcej niż wystarczające do codziennego użytku. Chciałbym zmodyfikować zachowanie zamiany, które systemy * NIX nazywają zamianą i ustawić na 0, tak jak to zrobiłem na moim komputerze Ubuntu.

Szukałem tego w sieci, ale wszystkie odpowiedzi wydają się dotyczyć systemów * NIX.


Z ciekawości, czy ustawienie swapiness na wyższą czy niższą wartość jest lepsze?
Jon

To zależy od tego, ile masz pamięci RAM i ile jej używasz. W moim przypadku ustawienie na 0 spowoduje zamianę tylko na dysk, aby zapobiec out of memorybłędowi. Zobacz tę odpowiedź na AskUbuntu więcej @ chipperyman573
Rath

1
wygląda na to, że Windows nie ma awaryjnego zabezpieczenia przed błędami braku pamięci. Zobacz link z mojej odpowiedzi.
wullxz

Odpowiedzi:


7

W systemie Windows istnieje coś zwanego „plikiem stronicowania”, w którym system zamienia aplikacje, aby zwolnić pamięć RAM. Obecnie nie jestem na komputerze z systemem Windows, ale kroki, które Adobe umieścił tutaj online , wyglądają dobrze (myślę, że Win+ Pauseto skrót do „Zaawansowanych ustawień systemu).

Chociaż możliwe jest wyłączenie pliku strony, istnieją pewne obawy. Aby uzyskać więcej informacji, przeczytaj to


2
Jak powiedziałeś w komentarzu, system Windows rzeczywiście nie zapewnia ochrony przed błędami braku pamięci. To prowadzi mnie do przekonania, że ​​nie ma odpowiednika „zamiany”. +1 jednak dla interesującego nowego skrótu, którego się nauczyłem, i oznaczonego jako zaakceptowany, ponieważ link, który opublikowałeś, doprowadził mnie do tego artykułu . Pozdrowienia
rath

Istnieje wiele osób z wyłączonym plikiem strony. System rzuca tam kilka rzeczy, których przez pewien czas nie będzie wykorzystywał w sposób, który można by uznać za pozbawionego opieki. W systemie prawdopodobnie nie zabraknie pamięci, z wyjątkiem sytuacji, w których użytkownik zazwyczaj wie, co się dzieje, często istnieje mnóstwo pamięci podręcznej, którą można najpierw zwolnić (zakładając, że została zwolniona prawidłowo). Powód, dla którego nie został całkowicie wyłączony Niektóre programy będą miały dopasowanie, jeśli go nie ma. A błędy, które rzucają, nie zawsze będą widoczne.
Psycogeek

1
Mam laptopa z 8 GB pamięci RAM i korzystam z funkcji wymiany. Nie ma różnicy między posiadaniem 8 GB pamięci RAM bez wymiany a 4 GB pamięci RAM + 4 GB maksymalnej wymiany. Zawsze jest limit, a gdy go osiągniesz, zobaczysz błędy.
Natan

@Natan: Każdego dnia zajmowałbym 8 GB pamięci RAM powyżej 4 + 4. Co stanie się z wydajnością, gdy skończy Ci się fizycznie podczas operacji intensywnie korzystających z pamięci RAM?
Mark K Cowan

@MarkKCowan Wydaje mi się, że istnieje różnica między posiadaniem 128 MB a 8 GB pamięci RAM. Gdy pamięć się zapełni, system operacyjny zacznie odzyskiwać pamięć, a śmieciarze wykonają swoje zadania. Na komputerze stacjonarnym o pojemności 8 GB jest praktycznie zagwarantowane, że zostanie odzyskana, aby kontynuować, ponieważ większość z nich to pamięć podręczna. Jeśli zabraknie pamięci, zamiana zawsze będzie gorsza niż odzyskiwanie pamięci, ponieważ dysk jest o rząd wielkości wolniejszy niż procesor + pamięć RAM.
Natan

0

Pamięć wirtualna to coś więcej niż „aplikacje alokujące pamięć RAM, a gdy skończy się fizyczna pamięć RAM, coś zostaje przekierowane do SWAP”.

W systemie Linux (i być może w ogóle w systemie UNIX) system próbuje zachować strony ostatnio odczytywane w pamięci RAM: programy uruchomione, dane załadowane, dane ostatnio zapisane (już także na dysku) itp. Tak więc, jeśli ten sam program zostanie ponownie uruchomiony, nie będzie trzeba będzie ponownie załadować z dysku. Gdy jakiś program prosi o przydzielenie większej ilości pamięci do jego wirtualnej przestrzeni adresowej, najpierw zostają ponownie wykorzystane bufory dyskowe (bez dostępu do dysku). Jeśli to nie wystarczy, niektóre strony uruchomionych aplikacji, do których ostatnio nie uzyskano dostępu, zostają faktycznie zamienione. W systemie Linux zamiana normalnie wcale się nie zdarza. Gdy system zacznie się zamieniać, zauważasz zwiększoną aktywność dysku (i powolność) i zaczynasz „och, co do cholery”, ponieważ prawdopodobnie oznacza to, że pewna aplikacja wyciekła pamięć lub coś pod maską zaczęło się wymykać spod kontroli.

Windows tradycyjnie ma głupi dodatkowy nawyk, że po pewnym czasie bezczynności zamieniają całe aplikacje przestrzeni użytkownika. Ściśle, bez ułaskawienia, aby mieć jak najwięcej dostępnej pamięci RAM, „na wszelki wypadek” chciałbyś uruchomić kolejną głodną aplikację. Jeśli pozostawisz działający komputer i odejdziesz na kilka godzin, po powrocie zauważysz, że każda aplikacja, na którą się przełączysz, zostanie powoli ponownie załadowana po wymianie. To zachowanie było szczególnie bolesne w systemie Windows 2000 i staje się coraz mniej zauważalne w nowszych wersjach systemu Windows. W W2k wyłączenie wymiany nie było żadnym problemem. Windows 7 wciąż może przesiąkać jak miód, bez żadnego konkretnego powodu, Windows 8.1 i 10 stał się zauważalnie lepszy ... ale nadal nie ma regulowanego pokrętła dla „swapiness” lub innych dostrojonych parametrów algorytmu swap.

Istnieją inne czynniki, które mogą prowadzić do szlifowania systemu przy powolnym dostępie do dysku. W systemie Windows 7 nigdy nie wiadomo, czy system właśnie wymienił aplikację w starym dobrym stylu W2k, czy też należy winić program antywirusowy za to, że aplikacja uruchamia się tak wolno, czy też Windows Update robi coś w tym razem w tle (znane z tego, że w swoich algorytmach występują zwrotne dziwactwa, które prowadzą do zawieszenia się przy 100% zużyciu procesora i / lub psuciu dysku), lub jeśli konkretnie jakieś zadanie janitoringowe .NET Framework zaginęło w bazie danych WinSXS lub coś takiego. Czasami / w niektórych wersjach / wcieleniach oprogramowania Microsoft wydaje się, że niektóre natywne dla systemu Windows „zadania w tle” (w szczególności zarządzanie lokalną bazą danych Windows Update) są celowo „zasłaniane” w menedżerze zadań, użycie procesora i pamięci RAM nie pokazuje całkowitego zużycia pamięci. Aktywność „uzasadniona”, ale dość trudna do odróżnienia od rootkita szkodliwego oprogramowania… Dopiero gdy przestanie się kręcić i natychmiast pojawi się balon z informacją, że „dostępne są nowe aktualizacje”, wiesz, jaki był tego powód.

Przynajmniej ostatnie wersje systemu Windows mogą informować o aktywności IO dysku na proces, a poszczególne usługi są teraz zgłaszane osobno (zamiast pojedynczego procesu SVCHOST.EXE).

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.