カーネルパニックとは何かを知っていますが、「カーネル申し訳ありません」という用語も見たことがあります。私はいつも同じだと思いましたが、たぶんそうではないかもしれません。だから:
カーネルoopsとは何ですか?カーネルパニックとどう違うのですか?
答え1
一つ」こんな「潜在的にシステムの安定性に影響を与えるほど深刻なLinuxカーネルの問題です。
いくつかの「申し訳ありません」は、深刻なため、カーネルがデータの損失やその他の破損を防ぐためにすぐに実行を停止することを決定します。これらは呼び出されますカーネルパニック。
後者の用語は元のLinuxのUnix祖先の初期バージョンにさかのぼり、問題が発生したときにコンソールに「パニック」メッセージを印刷します。このような状況を処理する元のAT&T Unixカーネル関数はpanic()
。 AT&T Unixの公開ソースコードを最初のバージョンとして追跡できます。
これオープンソラリスバージョン
panic()
出版社:サン2005年。この本は非常に徹底的であり、タイトルノートはパニックの状況で何が起こっているかについて多くを説明しています。これUnix V4実装は
panic()
1973年にリリースされました。デフォルトでは、カーネルのコア状態をコンソールに印刷し、プロセッサを停止します。機能はUnix V3ではデフォルトでは変更されていません。アミッシングは言った。優れたMac OS Xの以前のバージョンを分析して説明します。最初のリンクは、
panic()
関連する記録の議論から始まるmacOSの実装方法を説明する素晴らしい記事に進みます。これ」Unix-jun72「スキャンされたソースコードプリントからUnix V1を復活させるプロジェクトは、非常に初期の段階の結果を示しています。PDP-11組立バージョンこの関数のコードは、UnixがCに完全に書き換えられる前の1972年6月以前に書かれていました。この時点で、その実装は、PDP-11を再起動する以上の役割を果たす6つのコマンドルーチンに縮小されました。
答え2
申し訳ありません。カーネルで発生した特定のエラーです。申し訳ありません。以下の情報が含まれています。
- 簡単な紹介;
- こんな#
- どのCPUで発生し、CPUが実行されているコードは何ですか?
- 登録内容
このようなカーネルコードをデバッグする方法がありますが、役に立つユーティリティがあります。カーネルパニックはシステムを回復できず、再起動する必要があることを意味します。ただし、「申し訳ありません」が発生する限り、システムは通常動作し続けることができます。 oopsメッセージを標準出力ではなくファイルに書き込むようにklogdとsyslogdを設定できます。