LinuCレベル3 プラットフォームスペシャリスト プラットフォームの最適化 問1
プラットフォームの最適化/カーネルパラメータによるリソース最適化Linuxカーネルのメモリ関連パラメータに関する説明として、正しいものをすべて選べ。
当サイトのオリジナル問題(LinuCレベル3 プラットフォームスペシャリストの出題範囲「プラットフォームの最適化」に対応。実際の試験問題ではありません)
- Avm.swappinessは、プロセスのメモリをスワップアウトする度合いと、ページキャッシュを回収する度合いのバランスを調整する
- Bvm.swappinessを0に設定すると、メモリが逼迫した状況でもカーネルは決してスワップを使わず、OOM Killerも動作しなくなる
- Cfs.file-maxは、1つのプロセスが同時にオープンできるファイルディスクリプタ数の上限であり、ulimitの設定より優先される
- Dvm.overcommit_memoryは、物理メモリとスワップの合計を超える割り当て要求を許可するかどうかの方針を切り替える
正解:A、D
解説
vm.swappinessは、プロセスのメモリをスワップアウトする度合いとページキャッシュを回収する度合いのバランスを調整するパラメータで、値が大きいほどスワップが積極的に使われます。vm.overcommit_memoryは、物理メモリとスワップの合計を超えるメモリ割り当て要求(オーバーコミット)を許可するかどうかの方針を切り替えます。fs.file-maxはシステム全体で同時にオープンできるファイルディスクリプタ数の上限であり、プロセス単位の上限を決めるulimitとは別の階層の設定です。
選択肢ごとの解説
- A正しい。vm.swappinessはスワップアウトとページキャッシュ回収のバランスを調整するパラメータです。
- B誤り。vm.swappinessを0にしてもスワップの使用を可能な限り避けるだけで、メモリが逼迫すればスワップもOOM Killerも動作します。
- C誤り。fs.file-maxはシステム全体の上限で、1プロセスあたりの上限を決めるのはulimit(RLIMIT_NOFILE)です。
- D正しい。vm.overcommit_memoryはオーバーコミットを許可するかどうかの方針を切り替えるパラメータです。