Zrzut awaryjny. Analiza zrzutu pamięci

Główny pisarz technologii

Ktoś cię wysłał e-mail Plik DUMP i nie wiesz jak go otworzyć? Może znalazłeś plik DUMP na swoim komputerze i zastanawiasz się, do czego on służy? System Windows może powiedzieć, że nie można go otworzyć lub, w najgorszym przypadku, może pojawić się odpowiedni komunikat o błędzie związany z plikiem DUMP.

Zanim będzie można otworzyć plik DUMP, musisz dowiedzieć się, jakiego rodzaju plik ma rozszerzenie DUMP.

Wskazówka: Błędy o nieprawidłowym skojarzeniu plików DUMP mogą być symptomem innych, poważniejszych problemów w Twoim systemie Windows system operacyjny. Te nieprawidłowe wpisy mogą również powodować powiązane objawy, takie jak powolne uruchamianie systemu Windows, zawieszanie się komputera i inne problemy z wydajnością komputera. Dlatego zdecydowanie zaleca się przeskanowanie rejestru systemu Windows w poszukiwaniu nieprawidłowych skojarzeń plików i innych problemów związanych z fragmentarycznym rejestrem.

Odpowiedź:

Pliki DUMP mają Różne pliki, który jest powiązany głównie z Google BreakPad (Google, Inc.), Firefox (Mozilla Foundation).

Inne rodzaje plików też mogą używać rozszerzenia DUMP. Jeśli znasz inne formaty plików, które używają rozszerzenia DUMP, skontaktuj się z nami, abyśmy mogli odpowiednio zaktualizować nasze informacje.

Jak otworzyć plik DUMP:

Najszybszy i łatwy sposób aby otworzyć plik DUMP, należy go dwukrotnie kliknąć. W tym przypadku system Windows wybiorę niezbędny program aby otworzyć plik DUMP.

Jeśli plik DUMP nie chce się otworzyć, najprawdopodobniej nie masz zainstalowanego na komputerze odpowiedniego oprogramowania do przeglądania lub edycji plików z rozszerzeniami DUMP.

Jeśli Twój komputer otwiera plik DUMP, ale w złym programie, będziesz musiał zmienić ustawienia skojarzeń plików w swoim Rejestr systemu Windows. Innymi słowy, system Windows kojarzy rozszerzenia plików DUMP z niewłaściwym programem.

Zainstaluj produkty opcjonalne - FileViewPro (Solvusoft) | | | |

Wielozadaniowe rozszerzenia poczty internetowej DUMP (MIME):

  • aplikacja mime/strumień oktetu

DUMP Narzędzie do analizy plików™

Nie jesteś pewien, jakiego typu jest plik DUMP? Chcesz uzyskać dokładne informacje o pliku, jego twórcy i sposobie jego otwarcia?

Teraz możesz natychmiast uzyskać wszystkie potrzebne informacje o pliku DUMP!

Rewolucyjne narzędzie DUMP File Analysis Tool™ skanuje, analizuje i tworzy raporty dokładna informacja o pliku DUMP. Nasz algorytm (oczekujący na opatentowanie) szybko przeanalizuje plik i w ciągu kilku sekund dostarczy szczegółowe informacje w wizualnym i łatwym do odczytania formacie.†

W ciągu kilku sekund dowiesz się dokładnie, jaki jest typ pliku DUMP, aplikacja powiązana z plikiem, nazwa użytkownika, który utworzył plik, stan ochrony pliku i inne przydatne informacje.

Aby rozpocząć bezpłatną analizę plików, po prostu przeciągnij i upuść plik DUMP do obszaru oznaczonego kropkowaną linią poniżej lub kliknij Przeglądaj mój komputer i wybierz swój plik. Raport z analizy pliku DUMP zostanie wyświetlony poniżej, bezpośrednio w oknie przeglądarki.

Upuść tutaj swój plik DUMP, aby rozpocząć analizę

Wyświetl mój komputer »

Proszę również sprawdzić mój plik pod kątem wirusów

Twój plik jest analizowany... proszę czekać.

Doradzając klientom zauważyłem, że często jedynym sposobem radzenia sobie z niebieskim ekranem śmierci (Blue Screen of Death, BSoD) jest rozwiązywanie problemów za pomocą numeru błędu STOP. Zazwyczaj takie podejście może pomóc w wyborze ogólnego kierunku rozwiązania problemu, ale nie zawsze pozwala go zlokalizować. Na przykład określ, który konkretny sterownik urządzenia powoduje BSoD. Ściśle mówiąc, analiza zrzutów pamięci jest główną metodą radzenia sobie z błędami STOP.

Gdy wystąpi błąd STOP Microsoft Windows może pisać informacje debugowania. Aby to zrobić, musisz wykonać następujące czynności:

1. Naciśnij przycisk Początek i wybierz z menu Ustawienie ustęp Panel sterowania
2. Kliknij dwukrotnie ikonę System
3. Otwórz kartę do tego i naciśnij przycisk
4. W okolicy Zapisywanie informacji debugowania Wybierz przedmiot Mały zrzut pamięci (64 KB)

Plik małego zrzutu pamięci zawiera minimalną ilość informacji, których można użyć do określenia przyczyny awarii komputera. Wymaga to pliku wymiany o wielkości co najmniej 2 MB na woluminie rozruchowym. Domyślnie pliki małego zrzutu pamięci są przechowywane w folderze %SystemRoot%\Minidump.

Pliki małego zrzutu pamięci zawierają następujące informacje:

  • Komunikat o błędzie krytycznym, jego parametry i inne dane
  • Lista pobranych sterowników
  • Kontekst procesora (PRCB), który uległ awarii
  • Informacje o procesie i kontekst jądra (EPROCESS) dla procesu, który spowodował błąd
  • Informacje o procesie i kontekst jądra (ETHREAD) dla wątku, który spowodował błąd
  • Stos wywołań trybu jądra dla wątku, który spowodował błąd

Zaletą pliku małego zrzutu pamięci jest to, że jest mały. Obecnie objętość pamięć o dostępie swobodnym zainstalowany w komputerach jest mierzony w gigabajtach, więc zapisanie pliku tego rozmiaru zajmie dużo czasu i może być trudne, jeśli miejsce jest ograniczone twardy dysk. Z drugiej strony ograniczone informacje zawarte w małym pliku zrzutu nie zawsze umożliwiają wykrycie błędów, które nie były bezpośrednio spowodowane przez wątek, który był uruchomiony w momencie ich wystąpienia.

Narzędzia służą do analizy zrzutów pamięci kd.exe oraz windbg.exe. Te narzędzia są częścią zestawu Debugging Tools for Windows. W celu uproszczenia pracy z nimi polecam skorzystać ze skryptu (autorstwa Alexandra Suhoveya). Będziesz także potrzebować narzędzia reg.exe(dołączony do systemu Microsoft Windows XP i nowszych; do systemu Windows 2000 dołączony do narzędzi obsługi systemu Windows 2000).

Pobierz i rozpakuj archiwum ze skryptem do folderu D:\KDFE. Debuger wymaga do działania plików symboli, które można pobrać w tym samym miejscu, co narzędzia do debugowania dla Windowsa. Całkowity rozmiar pakietu z tymi plikami jest imponujący (może przekraczać 1 GB w zależności od wybranej platformy). Dlatego skrypt jest skonfigurowany do automatycznego pobierania tylko niezbędnych plików symboli z Microsoft Symbol Server do pracy z określonym zrzutem pamięci i przechowywania ich lokalnie na dysku do późniejszego wykorzystania. W razie potrzeby możesz edytować skrypt i zmienić zmienną czyjśścieżka, co wskazuje na folder, w którym kd.exe zapisze niezbędne pliki.

Aby użyć, uruchom kdfe.cmd z nazwą pliku zrzutu jako parametrem. Na przykład:

D:\KDFE>kdfe mini111208-01.dmp

Analizowanie pliku „D:\KDFE\Mini111208-01.dmp”, proszę czekać... Gotowe.

Data awarii: środa 12 listopada 08:35:56.214 2008 (GMT+2)
zatrzymać Kod błędu: 0x50
Nazwa procesu: AUM.exe
Prawdopodobnie spowodowane przez: nv4_disp.dll (nv4_disp+41213)

Należy zauważyć, że zdarzają się sytuacje, w których z powodu nieprawidłowego działania jednego ze sterowników, błąd STOP pojawia się następnie w całkowicie normalnym sterowniku. W takim przypadku polecam skorzystać z narzędzia weryfikator.exe(cm.

W systemie Windows 8 firma Microsoft wprowadziła nowy zrzut pamięci, opcję automatycznego zrzutu pamięci. Ta opcja jest domyślnie ustawiona w systemie operacyjnym. System Windows 10 wprowadził nowy typ pliku zrzutu o nazwie aktywny zrzut pamięci. Dla tych, którzy nie wiedzą, w Windows 7 mamy mały zrzut, zrzut pamięci i pełny zrzut pamięci. Możesz się zastanawiać, dlaczego Microsoft zdecydował się to stworzyć nowy parametr zrzut pamięci? Według Roberta Simpkinsa, starszego inżyniera pomocy technicznej, automatyczny zrzut pamięci może stworzyć wsparcie dla strony „systemowej” w pliku konfiguracyjnym.
System zarządzania konfiguracją pliku stronicowania jest odpowiedzialny za zarządzanie rozmiarem pliku strony - pozwala to uniknąć nadmiernego zapasu lub rozmiaru pliku strony. Ta opcja jest wprowadzona głównie dla komputerów PC działających na dyskach SSD, które są zwykle mniejsze, ale mają ogromną ilość pamięci RAM.

Opcje zrzutu pamięci

Główną zaletą „Automatycznego zrzutu pamięci” jest umożliwienie sesji podsystemu w Menedżerze procesów automatycznego zmniejszenia pliku stronicowania do rozmiaru mniejszego niż rozmiar pamięci RAM. Dla tych, którzy nie wiedzą, sesja menedżera podsystemu jest odpowiedzialna za inicjalizację systemu, środowisko startowe dla usług i procesów wymaganych do zalogowania się użytkownika do systemu. Zasadniczo ustawia stronę plików na pamięć wirtualna i uruchamia proces winlogon.exe.

Jeśli chcesz zmienić ustawienia automatycznego zrzutu pamięci, oto jak to zrobić. Naciśnij klawisze Windows + X i wybierz - System. Następnie kliknij „ Dodatkowe opcje systemy - Osiągnięcie System Ustawienia”.

Kliknij przycisk Zaawansowane ustawienia systemu.

Tutaj możesz zobaczyć rozwijane menu, w którym jest napisane „Zaawansowane”.

Tutaj możesz wybrać pożądana opcja. Sugerowane opcje:

Brak zrzutów pamięci.
Mały zrzut pamięci.
Zrzut pamięci jądra.
Pełny zrzut pamięci.
Automatyczny zrzut pamięci. Dodano w Windows 8.
Aktywny zrzut pamięci. Dodano do systemu Windows 10.
Lokalizacja pliku zrzutu pamięci w pliku %SystemRoot%\MEMORY.DMP.

Jeśli używasz Dysk SSD, najlepiej pozostawić go na „Automatyczny zrzut pamięci”; ale jeśli potrzebujesz pliku zrzutu awaryjnego, lepiej ustawić go na „mały zrzut pamięci”, dzięki czemu możesz, jeśli chcesz, wysłać go komuś, aby mógł go obejrzeć.

W niektórych przypadkach może być konieczne zwiększenie rozmiaru pliku wymiany bardziej niż RAM, aby zmieścić pełny zrzut pamięci. W takich przypadkach musisz utworzyć klucz rejestru:

HKEY_LOCAL_MACHINE SYSTEM CurrentControlSet Control CrashControl

nazywa się to „LastCrashTime”.

Spowoduje to automatyczne zwiększenie rozmiaru pliku strony. Aby go później zmniejszyć, możesz po prostu usunąć ten klucz.

Wprowadzono system Windows 10 nowy plik dump Aktywny zrzut pamięci. Zawiera tylko to, co niezbędne i dlatego jest mniejszy.

Nie mam szansy tego przetestować, ale stworzyłem ten klucz i monitorowałem rozmiar pliku wymiany. Wiem, że prędzej czy później dostanę błąd krytyczny. Potem to sprawdzę.

Możesz przeanalizować zrzut pamięci plików Windows.dmp za pomocą programu WhoCrashed. Narzędzie WhoCrashed Home jest bezpłatne i jednym kliknięciem wyświetla sterowniki włożone do komputera. W większości przypadków może zidentyfikować wadliwy sterownik, który powoduje cierpienie na komputerze. Jest to zrzut awaryjny analizy systemu, zrzutów pamięci, a wszystkie zebrane informacje są tutaj prezentowane w przystępnej formie.

Zazwyczaj zestaw narzędzi do debugowania otwiera zrzut awarii analizy. Dzięki temu narzędziu nie potrzebujesz żadnej wiedzy ani umiejętności w zakresie debugowania, aby dowiedzieć się, które sterowniki powodują problemy na komputerze.

WhoCrashed opiera się na pakiecie debugowania (program windbg) firmy Microsoft. Jeśli ten pakiet nie jest zainstalowany, WhoCrashed pobierze i automatycznie rozpakuje ten pakiet dla Ciebie. Po prostu uruchom program i kliknij przycisk Analizuj. Gdy masz zainstalowany program WhoCrashed w swoim systemie i nieoczekiwanie zresetuje się lub zamknie, program poinformuje Cię, czy na Twoim komputerze jest włączone zrzucanie awarii i zaoferuje sugestie, jak je włączyć.

Ta krótka notatka ma na celu pokazać, jak można skonfigurować system, aby uzyskać do swojej dyspozycji w sytuacji awaryjnej Zrzut pamięci systemu Windows, czyli zrzut, który może powstać w przypadku krytycznej awarii, charakteryzujący się wyglądem niebieski ekranśmierć (BSOD). Czym w ogóle jest zrzut, do czego go potrzebujemy i czym jest, jakie problemy ma rozwiązać i jakie zawiera informacje?

Zrzut pamięci to zawartość pamięci roboczej procesu, jądra lub wszystkich system operacyjny, który zawiera, oprócz obszarów roboczych, dodatkowe informacje o stanie rejestrów procesora, zawartości stosu i innych strukturach usług.

Dlaczego potrzebujemy tej treści, tj. Zrzut pamięci systemu Windows? Być może najczęstszy zrzut pamięci służy do zbadania przyczyn awarii systemu (), która spowodowała całkowite zatrzymanie systemu operacyjnego. Oprócz tego stan pamięci można wykorzystać do innych celów. Ważny jest również fakt, że zrzut pamięci jest dosłownie jedynym sposobem na uzyskanie informacji o jakiejkolwiek awarii! A usuwanie (odbieranie) zrzutu pamięci systemowej jest w rzeczywistości jedyną dokładną metodą uzyskania natychmiastowego wydruku (kopii) zawartości pamięci fizycznej systemu.

Im dokładniej zawartość zrzutu będzie odzwierciedlać stan pamięci w momencie wystąpienia awarii, tym lepiej będziemy mogli przeanalizować sytuację awaryjną. Dlatego niezwykle ważne jest uzyskanie dokładnie aktualnej kopii pamięci fizycznej systemu w ściśle określonym momencie bezpośrednio poprzedzającym awarię. Jedynym sposobem, aby to zrobić, jest utworzenie pełnego zrzutu awaryjnego. Powód jest dość banalny - gdy nastąpi awaryjny zrzut pamięci systemu, czy to w wyniku awarii, czy w wyniku sztucznie zasymulowanej sytuacji, system w tym momencie przejęcia kontroli nad funkcjami awaryjnymi (KeBugCheckEx) jest w stanie całkowicie niezmieniony (statyczny) stan, dlatego od momentu wystąpienia awarii do czasu zapisania danych na nośniku nic nie zmienia zawartości pamięci fizycznej i jest ona zapisywana na dysku w swoim pierwotnym stanie. Cóż, tak jest w teorii, ale czasami w życiu, ale zdarzają się sytuacje, że z powodu wadliwych podzespołów sprzętowych sam zrzut pamięci może ulec uszkodzeniu lub stacja może się zawiesić podczas procesu nagrywania zrzutu.

W zdecydowanej większości przypadków od momentu uruchomienia procesu tworzenia zrzutu awaryjnego do momentu zapisania zawartości pamięci na dysku informacje w pamięci pozostają niezmienione.

Teoretycznie statyczny (niezmienność) „odcisku” pamięci tłumaczy się tym, że w momencie wywołania funkcji KeBugCheckEx, która wyświetla informację o awarii i rozpoczyna proces tworzenia zrzutu pamięci, system jest już całkowicie zatrzymany i zawartość pamięci fizycznej jest zapisywana do bloków zajmowanych na dysku przez plik stronicowania, po czym już podczas kolejnego rozruchu systemu operacyjnego jest zrzucana do pliku na nośniku systemowym. No, prawie raz zaobserwowałem sytuację, w której awaria płyta główna nie pozwoliło na zapisanie zrzutu pamięci: a) zawieszanie się podczas działania logiki zapisu zrzutu (proces nie osiągnął 100%), b) uszkodzenie pliku zrzutu pamięci (przeklęte struktury debuggera), c) zapis memory.dmp zrzuć pliki o zerowej długości. Dlatego pomimo tego, że system był już całkowicie zatrzymany w momencie tworzenia zrzutu pamięci, a działa tylko kod awaryjny, wadliwy sprzęt może samodzielnie dostosować dowolną logikę bez wyjątku na dowolnym etapie działania.
Tradycyjnie na początkowym etapie do zapisania zrzutu pamięci systemu Windows wykorzystywane są bloki dyskowe przydzielone do pliku stronicowania (plik stronicowania). Następnie po niebieskim ekranie i ponownym uruchomieniu dane są przenoszone do oddzielny plik, a następnie nazwa pliku zostanie zmieniona według wzorca opartego na typie zrzutu. Jednak począwszy od wersji Windows Vista, ten stan rzeczy można zmienić, teraz użytkownik ma możliwość zapisania wybranego zrzutu bez udziału pliku stronicowania, umieszczając informację o awarii w pliku tymczasowym. Dokonano tego w celu wyeliminowania błędów konfiguracyjnych związanych z nieprawidłowe ustawienie rozmiar i położenie pliku stronicowania, co często prowadziło do problemów w procesie zapisywania zrzutu pamięci.
Zobaczmy, jakie rodzaje zrzutów system operacyjny Windows pozwala nam tworzyć:

  • Zrzut pamięci procesu (aplikacja);
  • Zrzut pamięci jądra;
  • Pełny zrzut pamięci (zrzut dostępnej części pamięci fizycznej systemu).

Wszystkie zrzuty awaryjne można podzielić na dwie główne kategorie:

  • Zrzuty awaryjne z informacjami o zgłoszonym wyjątku. Zwykle tworzone w tryb automatyczny, gdy w aplikacji / jądrze wystąpi nieobsłużony wyjątek i odpowiednio można wywołać debugger systemowy (wbudowany). W takim przypadku do zrzutu zapisywana jest informacja o wyjątku, co ułatwia określenie typu wyjątku i lokalizacji zdarzenia podczas późniejszej analizy.
  • Zrzuty awaryjne bez informacji o wyjątkach. Zwykle tworzone przez użytkownika ręcznie, gdy wystarczy utworzyć migawka proces do dalszej analizy. Analiza ta nie implikuje określenia rodzaju wyjątku, ponieważ wyjątek nie wystąpił, ale analizę zupełnie innego rodzaju, na przykład badanie struktur danych procesowych i tak dalej.

Konfiguracja zrzutu jądra

Musisz być zalogowany jako administrator rachunek aby wykonać czynności opisane w tej sekcji.

Przejdźmy od razu do konfiguracji ustawień zrzutu awaryjnego systemu Windows. Najpierw musimy przejść do okna właściwości systemu w jeden z następujących sposobów:

  1. Kliknij kliknij prawym przyciskiem myszy myszką na ikonie "Mój komputer" - "Właściwości" - "Zaawansowane ustawienia systemu" - "Zaawansowane".
  2. Przycisk "Start" - "Panel sterowania" - "System" - "Zaawansowane ustawienia systemu" - "Zaawansowane".
  3. Skrót klawiaturowy „Windows” + „Pauza” - „Zaawansowane ustawienia systemu” - „Zaawansowane”.

  4. controlsystem.cpl,3
  5. Wbiec wiersz poleceń(cmd):
    Właściwości systemu Zaawansowane

Efektem opisanych działań jest otwarcie okna „Właściwości systemu” i wybranie zakładki „Zaawansowane”:

Następnie w sekcji „Pobieranie i odzyskiwanie” klikamy, wybieramy „Opcje”, a tym samym otwieramy nowe okno o nazwie „Pobieranie i odzyskiwanie”:

Wszystkie ustawienia zrzutu awaryjnego są pogrupowane w blok ustawień o nazwie Awaria systemu. W tym bloku możemy ustawić następujące parametry:

  1. Zapisuj zdarzenia do dziennika systemowego.
  2. Wykonaj automatyczne ponowne uruchomienie.
  3. Rejestrowanie informacji debugowania.
  4. Zrzuć plik.
  5. Zastąp istniejący plik zrzutu.

Jak widać, wiele parametrów z listy jest dość trywialnych i łatwych do zrozumienia. Chciałbym jednak bardziej szczegółowo zająć się parametrem „Dump file”. Parametr jest prezentowany jako lista rozwijana i ma cztery możliwe wartości:

Mały zrzut pamięci

Mały zrzut pamięci (minidump) to plik, który zawiera najmniej informacji o awariach. Najmniejszy ze wszystkich możliwych zrzutów pamięci. Pomimo oczywistych wad, często są to minizrzuty, które są wykorzystywane jako informacje o awariach w celu przesłania ich do zewnętrznego dostawcy sterowników do dalszych badań.
Pogarszać:

  • Komunikat o błędzie.
  • Wartość błędu.
  • Opcje błędów.
  • Kontekst procesora (PRCB), który uległ awarii.
  • Informacje o procesie i kontekst jądra (EPROCESS) dla procesu powodującego awarię wraz ze wszystkimi jego wątkami.
  • Informacje o procesie i kontekst jądra (ETHREAD) dla wątku, który spowodował awarię.
  • Stos trybu jądra dla wątku, który spowodował awarię.
  • Lista załadowanych sterowników.

Zakwaterowanie: %SystemRoot%\Minidump\MMDDYY-XXXXX-NN.dmp. Gdzie MMDDYY to odpowiednio miesiąc, dzień i rok, NN to numer seryjny zrzutu.
Wolumen: rozmiar zależy od bitowości systemu operacyjnego: tylko 128 kilobajtów jest wymaganych dla 32-bitowego systemu operacyjnego i 256 kilobajtów dla 64-bitowego systemu operacyjnego w pliku stronicowania (lub w pliku określonym w DedicatedDumpFile). Ponieważ nie możemy ustawić tak małego rozmiaru, zaokrąglamy go do 1 megabajta.

Zrzut pamięci jądra

Ten typ zrzutu zawiera kopię całej pamięci jądra w momencie awarii.
Pogarszać:

  • Lista uruchomionych procesów.
  • Stan bieżącego wątku.
  • Strony pamięci trybu jądra obecne w pamięci fizycznej w momencie awarii: pamięć sterownika trybu jądra i pamięć programu trybu jądra.
  • Pamięć warstwy sprzętowej (HAL).
  • Lista załadowanych sterowników.

W zrzucie pamięci jądra brakuje nieprzydzielonych stron pamięci i stron trybu użytkownika. Zgadzam się, jest mało prawdopodobne, że strony procesu trybu użytkownika będą nas interesować podczas awarii systemu (BugCheck), ponieważ zwykle awaria systemu zainicjowane przez kod trybu jądra.

Rozmiar: zmienia się w zależności od rozmiaru przestrzeni adresowej jądra, przydziału systemu operacyjnego i liczby sterowników trybu jądra. Zazwyczaj wymagana jest około jedna trzecia ilości pamięci fizycznej w pliku wymiany (lub pliku określonym przez DedicatedDumpFile). Może się różnić.

Kompletny zrzut pamięci

Pełny zrzut pamięci zawiera kopię całej pamięci fizycznej (RAM) w momencie awarii. W związku z tym do pliku trafia również cała zawartość pamięci systemowej. Jest to zarówno zaleta, jak i główna wada, ponieważ jego rozmiar na niektórych serwerach z dużą ilością pamięci RAM może być znaczny.
Pogarszać:

  • Wszystkie strony „widocznej” pamięci fizycznej. To praktycznie cała pamięć systemu, z wyjątkiem obszarów wykorzystywanych przez sprzęt: BIOS, przestrzeń PCI itp.
  • Przetwarzaj dane, które były uruchomione w systemie w momencie awarii.
  • Strony pamięci fizycznej, które nie są mapowane na wirtualną przestrzeń adresową, ale które mogą pomóc w zbadaniu przyczyny niepowodzenia.

Pełny zrzut pamięci domyślnie nie obejmuje obszarów pamięci fizycznej używanej przez system BIOS.
Lokalizacja: %SystemRoot%\MEMORY.DMP . Poprzedni zrzut zostanie nadpisany.
Rozmiar: plik stronicowania (lub plik określony w DedicatedDumpFile) wymaga rozmiaru równego rozmiarowi pamięci fizycznej + 257 megabajtów (te 257 MB są podzielone na pewien rodzaj nagłówka + dane sterownika). W rzeczywistości w niektórych systemach operacyjnych dolny próg pliku stronicowania można ustawić dokładnie na wartość rozmiaru pamięci fizycznej.

Automatyczny zrzut pamięci

Począwszy od Windows 8/Windows Server 2012, do systemu wprowadzono nowy typ zrzutu o nazwie „Automatyczny zrzut pamięci”, który jest ustawiony jako typ domyślny. W takim przypadku system sam decyduje, który zrzut pamięci zapisać w sytuacji konkretnej awarii. Co więcej, logika wyboru zależy od wielu kryteriów, w tym od częstotliwości „upadku” systemu operacyjnego.

Po zmianie konfiguracji zrzutu pamięci systemu Windows może być konieczne ponowne uruchomienie komputera.

Ustawienia rejestru

Klucz rejestru definiujący ustawienia zrzutu awaryjnego:

HKEY_LOCAL_MACHINE SYSTEM CurrentControlSet Control CrashControl

Opcje:

Parametr Rodzaj Opis
automatyczny restart REG_DWORD Włącz/wyłącz automatyczny restart kiedy pojawia się BSOD.
CrashDump włączony REG_DWORD Typ tworzonego zrzutu.
  • 0 - nie twórz zrzutu pamięci;
  • 1 - pełny zrzut pamięci;
  • 2 - zrzut pamięci rdzenia;
  • 3 - mały zrzut pamięci;
Zrzuć plik REG_EXPAND_SZ Ścieżka i nazwa zrzutu podstawowego i pełnego zrzutu.
Filtry zrzutu REG_MULTI_SZ Filtr sterowników w stosie sterowników zrzutu pamięci. Umożliwia dodawanie nowa funkcjonalność na etapie tworzenia zrzutów awaryjnych. Na przykład szyfrowanie zawartości zrzutu. Nie zaleca się zmiany wartości.
dziennik zdarzeń REG_DWORD Zapisz zdarzenie w dzienniku systemowym.
MinidumpDir REG_EZPAND_SZ Ścieżka i nazwa małego zrzutu pamięci.
MinidumpsCount REG_DWORD Maksymalna liczba małych zrzutów pamięci. Po przekroczeniu starsze wersje zaczynają być nadpisywane.
Przepisać REG_DWORD Zastąp istniejący plik zrzutu. Tylko dla zrzutu pamięci jądra i pełnego zrzutu pamięci.
Ignoruj ​​rozmiar pliku strony REG_DWORD Ignoruje standardowy plik swap jako miejsce tymczasowego (pośredniego) przechowywania zrzutu pamięci. Wskazuje, że zrzut pamięci powinien zostać zapisany w osobnym pliku. Używany w połączeniu z opcją DedicatedDumpFile.
Dedykowany plik zrzutu REG_EZPAND_SZ Ścieżka i nazwa tymczasowego alternatywnego pliku do zapisania zrzutu pamięci. W drugim przejściu dane będą nadal przenoszone do DumpFile/MinidumpDir.

Ręczne tworzenie zrzutu pamięci

Powyżej opisaliśmy ustawienia dla automatyczne tworzenie zrzuty awaryjne systemu w przypadku błędu krytycznego, czyli nieobsłużonego wyjątku w kodzie jądra. Ale w prawdziwe życie, oprócz awarii systemu operacyjnego, zdarzają się sytuacje, w których konieczne jest uzyskanie zrzutu pamięci systemowej w określonym momencie. Jak być w tym przypadku? Istnieją metody uzyskania natychmiastowej kopii całej pamięci fizycznej, takie jak użycie polecenia .dump w debugerach WinDbg/LiveKD. LiveKD to program, który umożliwia uruchomienie debuggera jądra Kd na uruchomionym systemie w trybie lokalnym. Debuger WinDbg również ma podobną funkcję. Jednak metoda uzyskiwania zrzutu w locie nie jest dokładna, ponieważ zrzut tworzony w tym przypadku jest „niespójny”, ponieważ utworzenie zrzutu zajmuje trochę czasu, a w przypadku korzystania z debugera trybu jądra , system kontynuuje pracę i wprowadza zmiany w stronach pamięci.

Wszystkie systemy Windows, gdy zostanie wykryty błąd krytyczny, wykonaj awaryjny zrzut (migawkę) zawartości pamięci RAM i zapisz ją w dysk twardy. Istnieją trzy rodzaje zrzutów pamięci:

Pełny zrzut pamięci — zapisuje całą zawartość pamięci RAM. Rozmiar migawki jest równy rozmiarowi pamięci RAM + 1 MB (nagłówek). Jest używany bardzo rzadko, ponieważ w systemach z dużą ilością pamięci rozmiar zrzutu będzie zbyt duży.

Zrzut pamięci jądra — zapisuje informacje o pamięci RAM związane tylko z trybem jądra. Informacje o trybie użytkownika nie są zapisywane, ponieważ nie zawierają informacji o przyczynie awarii systemu. Rozmiar pliku zrzutu zależy od wielkości pamięci RAM i waha się od 50 MB (dla systemów z 128 MB pamięci RAM) do 800 MB (dla systemów z 8 GB pamięci RAM).

Mały zrzut pamięci (mini zrzut) - zawiera dość niewielką ilość informacji: kod błędu z parametrami, listę sterowników załadowanych do pamięci RAM w momencie awarii systemu itp., ale ta informacja jest wystarczająca do zidentyfikowania uszkodzonego sterownika . Kolejną zaletą tego typu zrzutu jest mały rozmiar pliku.

USTAWIENIA SYSTEMU

Aby zidentyfikować sterownik, który spowodował niebieski ekran, wystarczy nam użyć małego zrzutu pamięci. Aby system zapisał mini zrzut podczas awarii, musisz wykonać następujące czynności:

Dla Windows XP Dla Windows 7
  1. Mój komputer Nieruchomości
  2. Przejdź do zakładki Do tego;
  3. Opcje;
  4. W terenie Zapisywanie informacji debugowania wybierać Mały zrzut pamięci (64 KB).
  1. Kliknij prawym przyciskiem myszy ikonę Komputer od menu kontekstowe Wybierz Nieruchomości(lub kombinacja klawiszy Win+Pause);
  2. W lewym menu kliknij element Dodatkowe ustawienia systemu;
  3. Przejdź do zakładki Do tego;
  4. W polu Pobierz i przywróć kliknij przycisk Opcje;
  5. W terenie Zapisywanie informacji debugowania wybierać Mały zrzut pamięci (128 KB).

Po wykonaniu wszystkich manipulacji, po każdym BSoD plik z rozszerzeniem .dmp zostanie zapisany w folderze C:\WINDOWS\Minidump. Radzę przeczytać materiał „Jak stworzyć folder”. Możesz również zaznaczyć pole „ Zastąp istniejący plik zrzutu”. W takim przypadku każdy nowy zrzut awaryjny nadpisze stary. Nie polecam włączania tej opcji.

ANALIZA AWARII PAMIĘCI ZA POMOCĄ OPROGRAMOWANIA BLUESCREENVIEW

Tak więc po pojawieniu się niebieskiego ekranu śmierci system zapisał nowy zrzut awaryjny. Do analizy zrzutu polecam skorzystać z programu BlueScreenView. Można go pobrać bezpłatnie tutaj. Program jest dość wygodny i posiada intuicyjny interfejs. Po zainstalowaniu, pierwszą rzeczą do zrobienia jest określenie lokalizacji przechowywania zrzutów pamięci w systemie. W tym celu przejdź do pozycji menu „ Opcje” i wybierz „ ZaawansowanyOpcje”. Wybierz przycisk radiowy ZaładujodtennastępnyMini wysypiskoteczka” i określ folder, w którym przechowywane są zrzuty. Jeśli pliki są przechowywane w folderze C:\WINDOWS\Minidump, możesz kliknąć „ Domyślna”. Kliknij OK i wejdź do interfejsu programu.

Program składa się z trzech głównych bloków:

  1. Blok menu głównego i panel sterowania;
  2. Blok listy zrzutów awaryjnych;
  3. W zależności od wybranych parametrów może zawierać:
  • lista wszystkich sterowników w pamięci RAM przed pojawieniem się niebieskiego ekranu (domyślnie);
  • lista sterowników znajdujących się w stosie RAM;
  • zrzut ekranu BSoD;
  • i inne wartości, których nie będziemy używać.

W bloku listy zrzutów pamięci (oznaczonym na rysunku cyfrą 2) wybierz interesujący nas zrzut i spójrz na listę sterowników, które zostały załadowane do pamięci RAM (oznaczone cyfrą 3 na rysunku). Sterowniki, które znajdowały się w stosie pamięci, mają kolor różowy. To oni są przyczyną BSoD. Następnie przejdź do menu głównego sterownika, określ, do którego urządzenia lub programu należą. Przede wszystkim zwróć uwagę na pliki systemowe, ponieważ pliki systemowe i tak są ładowane do pamięci RAM. Łatwo zauważyć, że myfault.sys to uszkodzony sterownik na obrazie. Powiem, że ten program został uruchomiony specjalnie, aby spowodować błąd Stop. Po zidentyfikowaniu uszkodzonego sterownika należy go zaktualizować lub usunąć z systemu.

Aby program wyświetlał listę sterowników znajdujących się w stosie pamięci podczas wystąpienia BSoD należy przejść do pozycji menu „ Opcje"kliknij na menu" NiżejSzkłotryb” i wybierz „ TylkoKierowcyZnalezionyWStos” (lub naciśnij klawisz F7) i aby wyświetlić zrzut ekranu błędu, wybierz „ NiebieskiEkranwPDstyl” (F8). Aby powrócić do listy wszystkich sterowników, musisz wybrać pozycję „ WszystkoKierowcy” (F6).