4

Linuxシステム(正確にはFedora 15/16)のプロセスのoom_adjのデフォルト値を理解しようとしています。私が見ているのは、一連のプロセスが-17に設定されている、つまり、殺さないということですが、他のプロセスは異なる値(通常は0、場合によっては-13)を持っています。やや直感に反しますが、ユーザープロセスはシステムプロセスよりも-17多く使用しているように見えます。誰かがこれに光を当てることができますか?どこかに設定ファイルがありませんか?ありがとう!

4

1 に答える 1

8

特に設定しない限り、デフォルトでフォーク元のプロセスの値になります。opensshなどの一部のプロセスは、実行可能ファイルの値を明示的に変更します。opensshの理論的根拠は、メモリ不足の状態にあるときに、コンピューターにsshで接続して、いくつかのプロセスを強制終了できるようにすることです。他の実行可能ファイルの値の設定が異なる理由から、個々の開発者に問い合わせる必要があります。

プロセスは親からoom設定を継承するため、sshセッションから何かを起動すると、デフォルトで-17になります。そのため、一部のプロセスは不当に重要に見える場合があります。ただし、ユーザーのプロセスを実行するためのコンピューターが存在することに注意してください。重要な紙に取り組んでいて、メモリが不足し始めた場合、その時点でそのマシンで最も重要なプロセスは、ワードプロセッサを実行しているプロセスです。oom設定が存在する理由は、その重要性をオペレーティングシステムに伝達できるようにするためです。

于 2012-09-19T03:59:46.500 に答える