Skip to main content

Co to jest zrzut podstawowy?

Zrzut rdzenia jest rekordem zawartości pamięci komputerów, gdy wystąpił poważny błąd.Może obejmować całą pamięć systemową lub tylko część, która była używana przez program, który nie powiodł się.Może również zawierać inne istotne dane, takie jak stan procesora, rejestracja zawartości i informacje o uruchamianiu procesów.Inżynierowie oprogramowania często używają zrzutów podstawowych z debuggerami i innymi narzędziami do analizy i ustalania błędów komputerowych.Zrzucenie rdzenia można również wykorzystać do przeniesienia procesu roboczego z jednego procesora do drugiego podczas normalnej operacji.

Termin zrzut rdzenia prawdopodobnie powstał w latach 60. XX wieku, gdy wczesne komputery używały pamięci rdzenia magnetycznego.Po rozbiciu działającego programu wszystkie dane w całym rdzeniu zostały wydrukowane na papierze, aby pomóc w debugowaniu.Te wydruki zwykle składały się z niewiele więcej niż adresy pamięci i danych w notacji ósemkowej lub szesnastkowej.W miarę poprawy technologii przechowywania zrzuty rdzenia można zapisać na dysku, zdejmowanej taśmy magnetycznej lub nieulotnych patyczek pamięci.Większa zdolność do przechowywania informacji o stanie wraz z postępami w debugowaniu oprogramowania sprawiła, że diagnoza błędów była bardziej wydajna.

Typowe przyczyny zrzutów podstawowych są słabo napisanymi aplikacjami lub oprogramowaniem systemowym.Dość często kod programu zakłada, że wskaźniki i wskaźniki macierzy zawsze odnoszą się do prawidłowych struktur danych.Jeśli którykolwiek z nich wykroczył poza granice swoich oryginalnych struktur, może wystąpić zrzut rdzenia.Problemy uzyskiwania dostępu do plików danych na urządzeniu pamięci lub odczytanie uszkodzonych danych mogą również powodować zrzut podstawowy.Problemy sprzętowe, w tym nieprawidłowe działanie pamięci, dyski twarde lub procesory, mogą je również wywołać.

Zasadniczo istnieją dwa rodzaje zrzutów podstawowych.Jeden typ jest miejscem, w którym uruchomiony proces lub program aplikacji jest zakończony, a kontrola powraca do systemu operacyjnego.W tym przypadku reszta systemu nadal działa normalnie, ponieważ tylko program przestępczy został zatrzymany.Zazwyczaj generowany jest duży plik zrzutu rdzenia, który można następnie załadować do debugera.Jeśli błąd wystąpił w programie, dla którego dostępne są symbole i kod źródłowy, można je również załadować do debuggera.

Drugi poważniejszy rodzaj zrzutu rdzenia nazywany jest również paniką jądra.Ten rodzaj zrzutu zatrzymuje cały system w swoich ścieżkach, aby zapobiec dalszym powikłaniom i uszkodzeniu danych.W Microsoft Windows Systemy, ten rodzaj zrzutu zwykle występuje w zbyt znanej formie niebieskiego ekranu śmierci.Paniki takie jak te są zwykle trudniejsze do debugowania i są często spowodowane problemami sprzętowymi lub systemowymi.Mogą się to zdarzyć, zanim system zakończy uruchamianie, gdy niewiele informacji jest dostępnych na temat faktycznej przyczyny.