この質問の動機Mac OS Xカーネルが次のものを使用していることがわかったとき750MB記憶容量。
私は20年間Linuxを使用してきましたが、カーネルRAMの使用量がXに比べて低いことを常に「知っていました」(これは本当ですか?本当だったことはありますか?)。
だから私はいくつかのグーグルの最後に試してみましたが、slabtop
結果は次のようになります。
Active / Total Size (% used) : 68112.73K / 72009.73K (94.6%)
これは私のカーネルが現在〜72MBのRAMを使用していることを意味しますか?
(top
報告されたXorg
RSSが17Mの場合、カーネルは現在その逆ではなくXを歪ませます。)
ラップトップの「一般的な」カーネルRAM使用量(範囲)は何ですか?
MacOSがLinuxよりはるかに多くのRAMを使用するのはなぜですか?
PS。最後の質問はここに回答されていませんので、関連質問をご覧ください。
ベストアンサー1
コアという言葉は少し間違った名前です。 Linuxカーネルは複数のプロセス/スレッド+モジュール()で構成されているので、完全なlsmod
理解を得るためには、個々のコンポーネントだけでなくボール全体を見る必要があります。
しかし、私のディスプレイslabtop
:
Active / Total Size (% used) : 173428.30K / 204497.61K (84.8%)
マニュアルページにはslabtop
次のように記載されています。
タブレット統計ヘッダーは物理メモリーを測定するのではなく、使用中のタブレットの数を追跡します。 / proc / meminfoファイルの「Slab」フィールドは、使用されているスラブ物理メモリに関する情報を追跡します。
キャッシュの削除
次に、私のキャッシュを削除@ダクロバート 提案あなたの質問に対するコメントで、これは私に次のことをしました。
$ sudo sh -c 'echo 3 > /proc/sys/vm/drop_caches'
$
Active / Total Size (% used) : 61858.78K / 90524.77K (68.3%)
Send 3は次のことを行います。ページキャッシュ、ディレクトリエントリ、およびinodeを解放します。私はU&L Q&Aでこれについてさらに議論します。メモリキャッシュとバッファをダンプする方法やツールはありますか?だから私の110MBは、ページキャッシュ、ディレクトリエントリ、およびinodeに関する情報を保持するためにのみ使用されます。
追加情報
- 興味があれば、
slabtop
この詳細なブログ記事を見つけました。タイトルは次のとおりです。今日のLinuxコマンド:slabtop。 - スラブキャッシングについては、ウィキペディアで次のタイトルでさらに詳しく説明します。スラブ分布。
それでは、私のカーネルはどのくらいのRAMを使用しますか?
写真は私には少しぼやけていますが、ここに私が「考える」ことがあります。
投手版
この手法を使用して、スラブの使用に関するスナップショットを取得できます。本質的には、ここからこの情報を抽出できます/proc/meminfo
。
$ grep Slab /proc/meminfo
Slab: 100728 kB
基準寸法
また、これらの値を抽出してカーネルモジュールのサイズ値(ディスクサイズかRAMサイズかわからない)を取得することもできます/proc/modules
。
$ awk '{print $1 " " $2 }' /proc/modules | head -5
cpufreq_powersave 1154
tcp_lp 2111
aesni_intel 12131
cryptd 7111
aes_x86_64 7758
ボード情報
SLABに関する多くの詳細は、次のproc構造からアクセスできます/proc/slabinfo
。
$ less /proc/slabinfo | head -5
slabinfo - version: 2.1
# name <active_objs> <num_objs> <objsize> <objperslab> <pagesperslab> : tunables <limit> <batchcount> <sharedfactor> : slabdata <active_slabs> <num_slabs> <sharedavail>
nf_conntrack_ffff8801f2b30000 0 0 320 25 2 : tunables 0 0 0 : slabdata 0 0 0
fuse_request 100 125 632 25 4 : tunables 0 0 0 : slabdata 5 5 0
fuse_inode 21 21 768 21 4 : tunables 0 0 0 : slabdata 1 1 0
情報
システムが起動すると、Linuxカーネルがロードされた後にメモリ使用量を報告する行があります。
$ dmesg |grep Memory:
[ 0.000000] Memory: 7970012k/9371648k available (4557k kernel code, 1192276k absent, 209360k reserved, 7251k data, 948k init)