„Dlaczego brakuje połowy mojej pamięci RAM o pojemności 8 GB?”
Nie brakuje go , ani nie jest nieużywany . W użyciu jest około 4GiB, a dodatkowe 3,3GiB jest nieaktywne, ale także w użyciu. 3.3GiB jest gotowy do stronicowania na dysk, ale nie masz na to przydzielonego miejsca, więc pozostaje w fizycznej pamięci RAM. „Zmodyfikowany” pamięć jest skutecznie nie różni się od „w użyciu”, jeśli pozbawione stron dyskowych.
Ani 64-bitowy system operacyjny, ani PAE nie pozwala żadnemu 32-bitowemu procesowi na użycie więcej niż 4GiB (2 użytkowników / 2 jądro w 32-bitowym / PAE, 4GiB użytkownika na x64. Patrz: Przekraczanie granic systemu Windows: Pamięć wirtualna ) pamięci czy ta pamięć jest aktualnie stronicowana w fizyczną pamięć RAM, czy na dysk.
W przypadku Firefoksa, który nie ma wersji 64-bitowej, oznacza to, że Firefox jest ostatecznie ograniczony do 2GiB (PAE) lub 4GiB (x64) pamięci użytkownika, niezależnie od zainstalowanej pamięci RAM. Nawet jeśli masz zainstalowaną fizyczną pamięć RAM 64 Gib, jeśli Firefox przekroczy użycie, wyczerpuje swój limit pamięci.
Wygląda to nadmiernie i prawdopodobnie wskazuje na wyciek pamięci lub obsługi. Co gorsza, w twoim przypadku plik strony nie jest wystarczająco duży, aby przenieść przeciekający proces na dysk, więc zasadniczo zmusiłeś go do wycieku wyłącznie do fizycznej pamięci RAM.
W artykule TechNet Masz problem z nadmiernym „zmodyfikowanym” użyciem pamięci w Win7 x64, powyżej 3,6 GB, jakieś sugestie? , użytkownik z podobnymi objawami (duży wspólny / zmodyfikowany blok) znajduje:
Zmodyfikowana pamięć to pamięć przydzielona przez jakąś aplikację, a następnie usunięta z zestawu roboczego aplikacji, zwykle dlatego, że nie była używana przez długi czas. Fakt, że większość pamięci znajduje się w tym stanie, oznacza dwie rzeczy:
- Niektóre aplikacje (lub wiele aplikacji) przydzielają dużo pamięci i nie wykorzystują aktywnie większości z nich. Często (ale nie zawsze) wynika to z wycieku pamięci w aplikacji.
- Plik strony nie jest wystarczająco duży, aby system mógł przenieść całą tę nieużywaną pamięć na dysk.
Ostatecznie, jak sugeruje magicandre1981, problemem była aplikacja Dell Wireless (Broadcom) LAN tray:
Dzięki wszystkim, miałem ten sam problem i dodałem uchwyty oraz GDI i zobaczyłem , że BCMWLTRY.EXE, wykorzystanie zasobnika bezprzewodowego Dell, tworzy uchwyty bez przerwy. Dzięki za radę. Aktualizacja: Więc wyłączyłem usługę, która uruchomiła BCMWLTRY.EXE + zrestartowałem i teraz nie widzę przecieków uchwytu. WLTRAY.EXE nadal działa, ale nie przecieka uchwyty.
Podobnie w Nadmierny modyfikowanej pamięci w pamięci współdzielonej ,
Przyczyną było narzędzie Dell WLAN. Zabicie procesu bcmwltry.exe w menedżerze zadań zwolniło pamięć. Ale ten proces został zainicjowany ponownie po kilku sekundach. To było trochę kiepskie - nie mogłem go odinstalować. Na szczęście ten notebook i tak wymagał zmiany systemu operacyjnego, więc nawet nie próbuję tego naprawić. ... Ten sam dokładny problem tutaj. Zabicie i wyłączenie DW WLAN (bcmwltry.exe) uwolniło 5 GB pamięci. Przecieka
Aplikacja tacy BCMWLTRY.EXE jest również zaangażowana w Pagefile, który rośnie, dopóki nie zabraknie mi pamięci
Dodatkowe informacje dotyczące problemów z BCMWLTRY.EXE / Dell Wireless Tray (WLTRAY.EXE), diagnostyki i rozdzielczości:
Tak więc w tych przypadkach tak naprawdę nie jest to sterownik, lecz aplikacja zasobnika dostarczana ze sterownikiem. Zgadzam się, że biorąc pod uwagę producenta karty bezprzewodowej, że BCMWLTRY.EXE jest uruchomiony i dość dużą liczbę prawie identycznych problemów, jest to część problemu.
Możesz także dodać kolumny „Uchwyty” i „Błędy strony” do Menedżera zadań, aby sprawdzić nadmierne użycie któregoś z nich, w przypadku, gdy jest więcej błędnych programów. Za pomocą SysInternals VMMap można wyświetlić przydział pamięci wirtualnej z punktu widzenia każdego procesu. Obsługa wycieków jest podstępna, ponieważ prawdopodobnie przeciekają również obiekty Windows. Microsoft udostępnia narzędzie o nazwie Application Verifier, które między innymi pomoże wyśledzić nieszczelne uchwyty.
Odpowiedź brzmi: prawdopodobnie masz przeciek pamięci, prawdopodobnie jest to w programie BCMWLTRY.EXE (lub w innych wyciekających aplikacjach lub podobnych współdzielonych zasobach), a system operacyjny został pozbawiony stron z kopii zapasowej dysku, aby bardziej „z wdziękiem” * obsługiwać takie stan.
* Nie ma nic szczególnie „wdzięcznego” w przypadku wycieku pamięci, ale plik stronicowania ~ 4GiB pozwoliłby procesowi osiągnąć limit dziedziczenia (działając jako przydział), a następnie zawiesić się, tworząc oczywisty wzorzec w dzienniku zdarzeń określonego awaria procesu, a następnie zwolnienie wszystkich zasobów, a po ponownym uruchomieniu powtórz. Bez nieodłącznego limitu 32-bitowego limitu przestrzeni adresowej, mógłby najpierw przeżuć dużo miejsca na dysku. W tej chwili wszystkie procesy są teraz ograniczone zasobami, więc nie jest jasne, czy jest zamykany z powodu własnego wycieku (Firefox), czy też innej aplikacji (BCMWLTRY).