Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Kernel panic
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
==History== The [[Unix]] kernel maintains internal consistency and [[Runtime (program lifecycle phase)|runtime]] correctness with [[Assertion (software development)|assertions]] as the [[fault detection and isolation|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.<ref name="SiewiorekSwarz1998">{{cite book|author1=Daniel P. Siewiorek|author2-link=Robert S. Swarz|author2=Robert S. Swarz|title=Reliable computer systems: design and evaluation|url=https://books.google.com/books?id=o15pmRSdQIIC&pg=PA622|access-date=May 6, 2011|year=1998|publisher=A K Peters, Ltd.|isbn=978-1-56881-092-8|page=622}}</ref> 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]]: <blockquote>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.{{' "}}<ref>{{cite web|url=http://www.multicians.org/unix.html|title=Unix and Multics|website=www.multicians.org|access-date=May 25, 2005|archive-date=August 5, 2012|archive-url=https://web.archive.org/web/20120805155922/http://www.multicians.org/unix.html|url-status=live}}</ref></blockquote> [[File:WiiUKernelPanic.png|thumb|A [[Wii U]] kernel panic log file.]] The original <code>panic()</code> 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. As the Unix [[codebase]] was enhanced, the <code>panic()</code> function was also enhanced to dump various forms of debugging information to the console.
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)