GNU/Linux >> Linux の 問題 >  >> Linux

Ubuntu 12.04 でカーネル共有メモリが 0 になるのはなぜですか?

アプリケーション ソフトウェアが madvise(MADV_MERGEABLE) を呼び出して指示しない限り、KSMD は何もしません。 .ほとんどの場合、KSMD のサービスを使用するアプリケーション ソフトウェアを使用していません。

<ブロック引用>

MADV_MERGEABLE (Linux 2.6.32 以降):

addr と length で指定された範囲のページに対して Kernel Samepage Merging (KSM) を有効にします。カーネルは、マージ可能としてマークされたユーザー メモリの領域を定期的にスキャンし、同一のコンテンツを持つページを探します。これらは、単一の書き込み保護されたページに置き換えられます (後でプロセスがページのコンテンツを更新する必要がある場合、このページは自動的にコピーされます)。 KSM は非公開の匿名ページのみをマージします (mmap(2) を参照)。

KSM 機能は、同じデータの多くのインスタンスを生成するアプリケーション (KVM などの仮想化システムなど) を対象としています。多くの処理能力を消費する可能性があります。注意して使用してください。詳細については、カーネル ソース ファイル Documentation/vm/ksm.txt を参照してください。 MADV_MERGEABLE および MADV_UNMERGEABLE 操作は、カーネルが CONFIG_KSM で構成されている場合にのみ使用できます。


Linux
  1. Linuxカーネル:イノベーショントップ5

  2. OpenStackでWindows10VMが遅いのはなぜですか?

  3. Aptがカーネルを更新しなくなったのはなぜですか?

  1. Ubuntuに2つのカーネルが必要なのはなぜですか?

  2. Linux での ipcs コマンドの例

  3. 更新プログラムをインストールした後、Ubuntu が頻繁に再起動するのはなぜですか?

  1. Ubuntu / Debianのカスタムカーネル–方法、時期、理由

  2. Ubuntuサーバーのカーネルバージョンを更新します

  3. core_pattern の編集が制限されているのはなぜですか?