proc
の頻度はどれくらいですか Linuxでファイルシステムが更新されましたか? 20ミリ秒(タイムクォンタム)ですか?
承認された回答:
procファイルシステムから読み取った情報はメディアに保存されないため(RAMにも保存されないため)、更新するものはありません。
procファイルシステムの目的は、ユーザースペースプログラムがシンプルで使い慣れたファイルシステムセマンティクス(open
)を使用してカーネルデータを取得または設定できるようにすることです。 、close
、read
、write
、lseek
)、読み取りまたは書き込みされるデータがどのメディアにも存在しない場合でも。この設計上の決定は、ASN1でエンコードされたOIDなどの実装よりも、事前に形式を指定できなかったデータを取得および設定するのに適していると見なされました(たとえば、人間が読める形式で簡単にスクリプト化できます)。
procファイルシステムから読み取るときに表示されるデータは、ファイルの先頭から読み取るときにオンザフライで生成されます。つまり、読み取りを実行すると、読み取り中のファイルに固有のカーネルコールバック関数によってデータが生成されます。 lseek
を実行する ファイルの先頭に移動して再度読み取ると、コールバックが再度呼び出され、データが再度生成されます。同様に、procファイルシステムで書き込み可能なファイルに書き込むと、入力を解析してカーネル変数を設定するコールバック関数が呼び出されます。生の形式の入力データは保存されません。
上記は、HaukeLagingが非常に簡潔に述べていることを言うためのもう少し冗長な方法です。彼の答えを受け入れることをお勧めします。