We're sorry but this page doesn't work properly without JavaScript enabled. Please enable it to continue.
Feedback

The History and Future of Crash Dumps in FreeBSD

Formale Metadaten

Titel
The History and Future of Crash Dumps in FreeBSD
Alternativer Titel
The History and Future of Core Dumps in FreeBSD*: *and other related OS
Serientitel
Anzahl der Teile
31
Autor
Lizenz
CC-Namensnennung 3.0 Unported:
Sie dürfen das Werk bzw. den Inhalt zu jedem legalen Zweck nutzen, verändern und in unveränderter oder veränderter Form vervielfältigen, verbreiten und öffentlich zugänglich machen, sofern Sie den Namen des Autors/Rechteinhabers in der von ihm festgelegten Weise nennen.
Identifikatoren
Herausgeber
Erscheinungsjahr
Sprache

Inhaltliche Metadaten

Fachgebiet
Genre
Abstract
Crash dumps, also known as core dumps, have been a part of BSD since its' beginnings in Research UNIX. Though 38 years have passed since doadump() came about in UNIX/32V, core dumps are still needed and utilized in much the same way they were then. This talk will provide an extensive background on core dumps, including a complete history, a summary of the present state and a discussion on the future of the core dump routine in FreeBSD. One might assume the core dump code has changed little over time but, with some research, this assumption has proven incorrect. What has changed over time is the amount of RAM in the machines we expect to be able to get a crash dump from. Because of this, underlying assumptions about the size of swap partitions in respect to the size of kernel virtual memory are proving incorrect, disabling core dumps in many machines. To avoid these pitfalls, several extensions to the core dump code have been created over time but have never made it upstream. These extensions include gzip compressed dumps and dumping over the network. In addition, other related operating systems like macOS (formerly Mac OS X) and Illumos have several of the features that would be useful in FreeBSD including dumping to swap on a ZVOL, live core dumps and tools to estimate the size of a core dump on a running machine. This talk begins with a quick background on what core dumps are and why operators might need them. Following that the current state of the core dump facility and some of the more common extensions in use are examined. We conclude with a call to action for upstreaming these extensions and modularizing the core dump code such that different methods of core dump can be dynamically loaded into the kernel on demand. By the end of this talk attendees will have a thorough knowledge of what core dumps are, why they're useful, how they've been done in the past and what improvements could be made in the future.