USBスティックで動作するKubuntu 20.04の使用。したがって、/cow
オーバーレイファイルシステムは上にマウントされます/
。 USBスティックの総容量は32GBですが、cow
オーバーレイファイルシステムには16GBしか割り当てられません。マイコンピュータのRAMサイズは32GBです(合計ユーティリティ「無料」に表示されます)。
現状の理由は、インターネット接続を無効にすることを忘れていたからです。
以前に適性を利用して検索したことはありますが、わざわざ何もダウンロードしたことはありません。一晩「牛」の16GBのうち約2GBを使用した。df -Th -a
「中古」マークが21%から33%に増加しました。
今は誰が何をしたのか調べています。
wels_fullpath
そのために、私は(bash globstarとglobstarに基づいて**
)私が書いたプログラムを実行し(数時間)、/
出力をソートしsort
(時間ごとにソートするために)、sortでless
。実行中にどのメモリがどのsort
バッファに使用されているかを注意深く見てくださいless
。 (今はソートを無視しています)。
これを行うには、このユーティリティを実行し続けてwatch
合計の変化を観察します。df
free
watch -d "df -T -a >/tmp/WEx_df__2; diff -U0 /tmp/WEx_df__1 /tmp/WEx_df__2; free -w -h"
strace
動作していることを示してくださいwels_fullpath
。
df
ただし、内部または外部では変更は報告されていませんfree
。
したがって、質問は、df
増加するバッファがリストのどこに表示されるべきかということです。
私はドキュメントを読み、less
インターネット上で長いGoogle検索を行いました。 lessとbufferに関する良い記事があります。ただし、FHSでより少ないバッファを見ることができる場所と名前はどこにも記載されていません。
- 付録:
新しい問題が発生します。
通話の順序を変更し、ここで「less」を使用しなくなりました。
それでも私の質問は私にとって重要です。
おそらく、私はlessのバッファがある場所に「ストレージ」という適切な用語を書いていないかもしれません。 「メモリまたはディスクに」があります。バッファ数が少ないほど、「free」または「df」に影響します。一部の文書ではこの点に言及する必要があります。
今私のコマンドスキームは次のとおりです。
/.../wels_fullpath -d /2>/dev/null | grep -v -e "^fd1" | grep -v -e "^fd1" | r -k7,8 >/tmp/WEx01
「top」(「htop」はデフォルトではインストールされていません)に見られるように、実行はまだ開始されていません。
上 -p <PID>
示す:
PID ユーザー PR NI VIRT RES
2159985 ルート 20 0 242132 235816
SHR S %CPU %MEM 時間 +
3160R 99.3 0.7 1634:33
注文する
wels_フルパス
私のプログラムは配列を使用します。そして、ソース"/"のファイルを読み込むときに配列に書き込みます。だからVIRTとRESは成長し続けています。
ただし、永久に実行される「df」および「free」「watch」には、これらの変更は表示されません。 「無料」の値は上下にほとんど変わりません。
したがって、追加の質問は次のとおりです。
私のプログラムのメモリ使用量の増加が「アイドル」に反映されないのはなぜですか?
Linux、Kubuntuにメモリのさまざまな側面(例: "df"、 "du")を分析して表示するためのユーティリティはありますか?
挨拶Antandhidh
ああ、すみません。私は覚えて発見しました:
/proc/meminfoは良い概要を提供します。 pmap は各プロセスのメモリ使用量を提供します。
気にしてすみません。
挨拶Antandhidh
答え1
less
ファイルシステムのどこにもバッファを保存しないでください。--buffers
オプションを使用して設定できるバッファは、--auto-buffers
メモリ(おそらくスワップ)に保存されます。