パスワードを忘れた? アカウント作成
この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。

ユナイテッド航空、リアルOOM killerを発動」記事へのコメント

  • by Anonymous Coward on 2017年04月13日 13時53分 (#3192862)

    どういったケースで有用なのか想像ができないんですが

    • 例えばこのゲーム [seul.org]のように、ものすごい勢いでmalloc()しまくって(もしくはclassをnewしまくって)、用済みになっても手放さない、ゆかいなソフトが、稀にあるんですよ。
      勿論れっきとしたバグなんですが、OOM Killerが発動しないと、メモリが足りなくなって詰んでシステムが死んでしまうので、発動させてなんとかシステムは生き残らせようとする訳です。
      後、最近のメモリ容量が豊富なシステムではあんまし考えられないのですが、サーバで猛烈な量のスクリプトやプロセスが走ってしまってる場合とか、すごい数のユーザがログインしてコンパイラやEmacsを走らせてるとか…ある意味、90年代半ばまでの遺物なんですけど、実際役に立つこともあるので、廃止されてないんですよ。

      親コメント
      • by Sukoya (33993) on 2017年04月13日 14時18分 (#3192890) 日記

        これは妖怪メモリ不足ですね!メモリ増設もいいですが、サーバをリプレースしましょう!
        そうしましょう!

        というセールストークにしか役にたった試しがないデース……

        親コメント
      • by Anonymous Coward

        無限アロケーター系はちょっと考えたんですが
        本命に当たるより前にシステムに必須な何かを消される危険のほうが大きいんじゃないかと思ったんですが
        もうどうしようもない状況だから博打でもかまわない感じなんですかね
        ※昔はシステムに必須なデーモン類が少なくて分の悪い賭けでもなかったのかな

        • by nnnhhh (47970) on 2017年04月13日 14時23分 (#3192899) 日記

          なんか一応行儀が悪そうなやつを選んでる、んじゃなかったでしたっけ(うろ覚え

          親コメント
          • by Anonymous Coward

            本当ですね。ググったら、dstat --top-oomで悪そうなヤツ(プロセス)を確認できるということが分かりました。

        • by Anonymous Coward

          もうそろそろ落ちるって時になるべく後まで観察ができます。いきなりpanicするよりましってだけです。
          衝突が回避できない時にエアバッグを展開するようなものです。展開したらすごく運転しづらいけど頭ぶつけて死ぬよりはまし。

      • by Anonymous Coward

        >メモリが足りなくなって詰んでシステムが死んでしまうので、

        そもそもここがわからない。遅くなるだけじゃないの?
        あまりにも遅すぎて操作不能状態を「死んでしまう」と言ってるのならわかるが。

        • by nekopon (1483) on 2017年04月13日 16時36分 (#3193012) 日記
          OSてのは動くのにもメモリが必要なんすよ(バッファの類で)。これがどうにも足りなくなると場合によってはpanicします。
          親コメント
        • by Anonymous Coward

          多分、頑張ったら、HDDの最後の1バイトを使い切るまで遅くなるだけで踏ん張るようなOSの実装も出来るんだろうし、テーマとしては面白そうだけど、そんな事をしようとすると、そのために必要になる余分な処理やらデータ構造のせいで、普段から無駄に遅いOSになったりする。「上限を決めとく」というのは、かなり多くのソフトウェアで凄く効く高速化手法。

          大抵のOSは、普通に使っていて問題にならないようなところに多数の上限が設けられてる。

          その中でも普通に使っていて気付きやすい所では、パス名+ファイル名の長さの上限とか。結構短いので、実用的な範囲内でも、割としょっちゅう引っかかる。Windowsだと今時、250文字だとか、ちょっと信じがたい制限が残ってる。やっとのことで解消に向かっている [developers.srad.jp]けど。

    • by nemui4 (20313) on 2017年04月13日 15時00分 (#3192938) 日記

      "COM Killer"

      癇癪起こしてパソコン叩き壊して窓から投げ捨てる映像を連想した

      親コメント
    • by Anonymous Coward

      まずCOM Killerが何の略かについてご説明を。

      • by Anonymous Coward

        よく見たらOOM killerでしたね
        メモリが不足した時にプロセスを殺す仕組みがあると聞きかじるだけで元の言葉は知らずコピペ(にすらなっていない)間違いをしました
        ごめんなさい

        …で、どういう場合に有効なんでしょうか?
        適当に選んでプロセスを殺すとかシステムをクラッシュさせるだけではないかと思い疑問だったのですが
        ちょうどよい話題だったので聞いてみたのです

        • by o-nikko (46233) on 2017年04月13日 14時37分 (#3192918) 日記

          OOM Killer(Out of Memory Killer)は、できるだけ影響の少ないプロセスを選んで
          強制終了させますが、「影響の少ない」はあくまで一般論的な話ですから、
          個別な話では当然システムダウンの危険性があります。

          で、止められて困るプロセスをOOM Killerの対象から外す機能はありまして、
          必要ならば、この辺のお守りはしなくちゃいけない訳です。

          具体的な所は検索して調べて下さい。

          親コメント
        • by Anonymous Coward

          MS-DOSとかは、自分の処理に必要なメモリ(バッファとか管理領域とか)をあらかじめすべて確保していた。
          いまの汎用OSでは、すべて準備しておくことはできないので動的確保となる。

          運転中にシステムが必要とするメモリを確保できなかった場合、にっちもさっちもいかなくなって
          コンソールにメッセージすら出せないかもしれない。
          無理なのが前提で、フリーズか再起動しかできない。ブルースクリーンは優しさ。

          どれかのプロセスが突然死によって OOM Killerの発生をログに残せれば、何が起こっていたのかわかる。

    • by Anonymous Coward

      駅に置いてある無料の傘を中国人が返さずにお土産で持って帰って日本人が雨に濡れて帰ってる状態

クラックを法規制強化で止められると思ってる奴は頭がおかしい -- あるアレゲ人

処理中...