History
The Unix kernel maintains internal consistency and runtime correctness with assertions as the fault detection mechanism. The basic assumption is that the hardware and the software should perform correctly and a failure of an assertion results in a panic, i.e. a voluntary halt to all system activity. The kernel panic was introduced in an early version of Unix and demonstrated a major difference between the design philosophies of Unix and its predecessor Multics. Multics developer Tom van Vleck recalls a discussion of this change with Unix developer Dennis Ritchie:
“ | I remarked to Dennis that easily half the code I was writing in Multics was error recovery code. He said, "We left all that stuff out. If there's an error, we have this routine called panic, and when it is called, the machine crashes, and you holler down the hall, 'Hey, reboot it.'" | ” |
The original panic
function was essentially unchanged from Fifth Edition UNIX to the VAX-based UNIX 32V and output only an error message with no other information, then dropped the system into an endless idle loop.
Source code of panic
function in UNIX V6:
As the Unix codebase was enhanced, the panic
function was also enhanced to dump various forms of debugging information to the console.
Read more about this topic: Kernel Panic
Famous quotes containing the word history:
“The history of the Victorian Age will never be written: we know too much about it.”
—Lytton Strachey (18801932)
“At present cats have more purchasing power and influence than the poor of this planet. Accidents of geography and colonial history should no longer determine who gets the fish.”
—Derek Wall (b. 1965)
“There is a constant in the average American imagination and taste, for which the past must be preserved and celebrated in full-scale authentic copy; a philosophy of immortality as duplication. It dominates the relation with the self, with the past, not infrequently with the present, always with History and, even, with the European tradition.”
—Umberto Eco (b. 1932)