昨日、アプリケーションを実行しているときに、syslog
カーネル パニックのように見えるコンソール ブロードキャストが表示され、コンソールが応答しなくなりました。今日、サーバーに接続できることに気付きました。実行すると、システムが数日間putty
稼働していることがわかります。uptime
実行するdmesg
とoom_killer
ログとログが表示されますが、システムが再起動され、カーネルパニックの痕跡がまったくないOops
ことを期待していました。dmesg
だから今私は混乱しています、カーネルパニックがありましたか? はいの場合、システムが再起動されていないように見える (数日間稼働している) のに、どうしてサーバーに接続できるのでしょうか。いいえの場合、サーバーに接続できるのはなぜですか? 手動で再起動するまでサーバーをフリーズするべきではありませんか?
質問する
419 次
1 に答える
0
いいえ、できません。質問 Oops is not kernel panic へのコメントで述べたように、このプロセスはカーネル ネットワーク スタックを回避する (独自の方法で実装する) ため、oom killer はメモリ不足のプロセスを強制終了しました。私を混乱させたのは、テストプログラムを作成する場合です
int * p = new int[(unsigned int)-1];
私は取得std::bad_alloc
し、om killer について何もしません。ここで見つけることができる詳細情報:
http://bl0rg.krunch.be/oom-frag.html
https://unix.stackexchange.com/questions/1660/what-is-a-kernel-panic
于 2014-03-06T09:45:20.367 に答える