LiveKd v5.63
Mark Russinovich i Ken Johnson
Opublikowano: 28 kwietnia 2020 r.
Pobierz plik LiveKd (700 KB)
LiveKD, narzędzie, które napisałem dla cd zawarte w Inside Windows 2000, 3rd Edition, jest teraz bezpłatnie dostępne. Narzędzie LiveKD umożliwia uruchamianie debugerów jądra Kd i Windbg firmy Microsoft, które są częścią pakietu Debugowanie dla systemu Windows lokalnie w systemie na żywo. Wykonaj wszystkie polecenia debugera, które działają na plikach zrzutu awaryjnego, aby przyjrzeć się głęboko wewnątrz systemu. Zapoznaj się z dokumentacją narzędzi debugowania dla systemu Windows i naszą książką, aby uzyskać informacje na temat sposobu eksplorowania systemu za pomocą debugerów jądra.
Chociaż najnowsze wersje windbg i Kd mają podobną funkcję w systemach Windows Vista i Server 2008, LiveKD zapewnia więcej funkcji, takich jak wyświetlanie stosów wątków za pomocą polecenia !thread, niż windbg i własne narzędzie debugowania jądra na żywo Kd.
Najpierw pobierz i zainstaluj pakiet debugowania dla systemu Windows z witryny internetowej firmy Microsoft:
https://msdn.microsoft.com/library/windows/hardware/ff551063(v=vs.85).aspx
Jeśli zainstalujesz narzędzia w domyślnym katalogu \Program Files\Microsoft\Debug Tools for Windows, możesz uruchomić plik LiveKD z dowolnego katalogu. W przeciwnym razie należy skopiować plik LiveKD do katalogu, w którym są zainstalowane narzędzia.
Jeśli nie zainstalowano symboli dla systemu, na którym działasz LiveKD, liveKD zapyta, czy system ma automatycznie skonfigurować do korzystania z serwera symboli firmy Microsoft (zobacz dokumentację Narzędzia debugowania dla systemu Windows, aby uzyskać informacje na temat plików symboli i serwera symboli firmy Microsoft).
UWAGA: Debuger firmy Microsoft skarży się, że nie może odnaleźć symboli dla LIVEKDD.SYS. Jest to oczekiwane, ponieważ nie udostępniam symboli dla LIVEKDD.SYS i nie wpływa na zachowanie debugera.
zwyczaj:
liveKd [[-w]|[ -k <debuger>]|[ -o nazwa_pliku]] [-vsym] [-m[flagi] [[-mp procesu]|[ pid]]][opcje debugera]
liveKd [[-w]|[ -k <debuger>]|[ -o nazwa_pliku]] -ml [opcje debugera]
liveKd [[-w]|[ -k <debuger>]|[ -o nazwa_pliku]] [[-hl]|[ -hv <nazwa> maszyny wirtualnej [[-p]|[ -hvd]]]] [opcje debugera]
Parametr | Opis |
---|---|
-Hv | Określa nazwę lub identyfikator GUID maszyny wirtualnej funkcji Hyper-V do debugowania. |
-hvd | Zawiera strony funkcji hypervisor (tylko system Windows 8.1 lub nowszy). |
-hvl | Wyświetla nazwy i identyfikatory GUID uruchomionych maszyn wirtualnych funkcji Hyper-V. |
-k | Określa pełną ścieżkę i nazwę pliku obrazu debugera do wykonania |
-m | Tworzy zrzut dublowania, który jest spójnym widokiem pamięci jądra. Dostępna będzie tylko pamięć w trybie jądra, a ta opcja może wymagać znacznej ilości dostępnej pamięci fizycznej. Maska flag określająca, które regiony do uwzględnienia mogą być opcjonalne (pobrane z poniższej tabeli, domyślne 0x18F8): 0001 — proces prywatny, 0002 — zamapowany plik, 0004 — sekcja udostępniona, 0008 — strony tabeli stron, 0010 — stronicowana pula, 0020 — pula niestronicowana, 0040 — systemowe elementy PTE, 0080 — strony sesji, 0100 — pliki metadanych, 0200 — strony użytkowników AWE, 0400 — strony sterowników, 0800 — stosy jądra, 1000 — Metadane systemu WS, 2000 — duże strony Wartość domyślna przechwytuje większość zawartości pamięci jądra i jest zalecana. Ta opcja może być używana z opcją -o w celu szybszego zapisywania spójnych zrzutów. Zrzuty dublowania wymagają systemu Windows Vista lub Windows Server 2008 lub nowszego. Sysinternals RamMap zawiera graficzne podsumowanie dystrybucji dostępnych regionów pamięci, które można wybrać do włączenia. |
-Ml | Generowanie zrzutu na żywo przy użyciu natywnej obsługi (tylko system Windows 8.1 lub nowszy). |
-Mp | Określa pojedynczy proces, którego zawartość pamięci w trybie użytkownika powinna być uwzględniona w zrzutie dublowania. Obowiązują tylko z opcją -m. |
-o | Zapisuje memory.dmp na dysku zamiast uruchamiania debugera. |
-p | Wstrzymuje docelową maszynę wirtualną funkcji Hyper-V, gdy funkcja LiveKd jest aktywna (zalecane do użycia z -o). Określa nazwę lub identyfikator GUID maszyny wirtualnej funkcji Hyper-V do debugowania. |
-hvl | Wyświetla nazwy i identyfikatory GUID uruchomionych maszyn wirtualnych funkcji Hyper-V. |
-vsym | Wyświetla pełne informacje o debugowaniu operacji ładowania symboli. |
-w | Działa windbg zamiast kd |
Wszystkie inne opcje są przekazywane do debugera.
Uwaga: użyj Ctrl-Break, aby zakończyć działanie i ponownie uruchomić debuger, jeśli zawiesza się.
Domyślnie funkcja LiveKd uruchamia kd.exe.
Pobierz plik LiveKd (700 KB)
Działa w:
- Klient: Windows Vista i nowsze.
- Serwer: Windows Server 2008 i nowsze.