Core dump

Dzisiaj pod tym określeniem rozumiemy zrzut pamięci i rejestrów procesu który się wykrzaczył. Szczególnie w systemach unixopodobnych. Tylko skąd się to wzięło?

A wzięło się to z technologii pierwszych pamięci operacyjnych - magnetycznych pamięci rdzeniowych (magnetic core). Sam pomysł był genialny, a w zasadzie genialnie prosty. Pamięć tworzyła prostokątna siatka z przewodów. W węzłach tej siatki umieszczono ferrytowe obręcze. Dodatkowy jeden wspólny przewód przewleczony był przez wszystkie rdzenie.

Rdzeń był tak dobrany, żeby określony prąd wywoływał nasycenie rdzenia, ale połowa wartości tego prądu nie powodowała jego przemagnesowania. I tak podanie połowy prądu na jeden przewód pionowy i jeden przewód poziomy umożliwiał przemagnesowanie tylko pojedynczego rdzenia. I tak prąd w jednym kierunku oznacza logiczne 1 a w przeciwnym - logiczne 0.

Odczyt polega na próbie zapisania logicznego 0. Jeśli w rdzeniu zapisana była logiczna 1 to na tym wspólnym drucie wyindukuje się napięcie. W przeciwnym wypadku można założyć że było tam zapisane 0. Ponieważ odczyt jest destrukcyjny, jedynkę trzeba zapisać ponownie.

#oesowo #linux #systemyoperacyjne

1151845a-0a9a-4968-acb6-037af8c21ca9
14f021fd-1552-45d3-9e16-22a6eef781c0

Komentarze (7)

@pierdonauta_kosmolony - aleś utrafił - wczoraj proces pobierania danych na produkcji się wykrzaczył i zrobił sobie core dump co zapisał sobie skrzętnie w logach - na szczęście proces sam wstaje więc nie musiałem nawet ruszać d⁎⁎y

@pierdonauta_kosmolony - w korpo to się nie skaluje - niemniej i tam wcale tak dużo automatyzacji nie ma, powiedziałbym gołe minimum po taniości

Dodam że pamięć rdzeniowa jak to pamięć magnetyczna była de facto nieulotna. Dlatego po awarii i wykrzaczeniu się programu można było, nawet pomimo zaniku zasilania, odczytać całą zawartość - ten faktyczny 'dump'

Zaloguj się aby komentować