Как часто обновляется файловая система proc в Linux?
Как часто обновляется файловая система proc
в Linux? Это 20 миллисекунд (квант времени)?
- Когда новый системный вызов добавляется в Linux?
- Команда sar vs / proc / stat для использования процессора
- Каковы возможные причины, по которым iwconfig не обновляет статистику соединений?
- Как скрывать на Arch Linux вручную?
- Почему не может / proc быть слоем файловой системы наложения (overlayfs) на linux?
2 Solutions collect form web for “Как часто обновляется файловая система proc в Linux?”
Информация, которую вы читаете из файловой системы proc, не хранится ни на одном носителе (даже в ОЗУ), поэтому обновление не требуется.
Цель файловой системы proc заключается в том, чтобы позволить программам пользовательского пространства получать или устанавливать данные ядра с помощью простой и знакомой семантики файловой системы ( open
, close
, read
, write
, lseek
), хотя данные, которые читаются или записываются, не проживать на любом носителе. Это конструктивное решение было признано лучше (например, для чтения человеком и легко выполнимо для сценариев) для получения и установки данных, формат которых не мог быть указан заранее, чем реализация чего-либо, такого как OID с кодировкой ASN1, который также отлично работал бы.
Данные, которые вы видите при чтении из файловой системы proc, генерируются «на лету», когда вы читаете с начала файла. То есть при чтении данные генерируются с помощью функции обратного вызова ядра, которая специфична для файла, который вы читаете. Выполнение lseek
для начала файла и повторное чтение вызывает другой вызов обратного вызова, который снова генерирует данные. Аналогично, когда вы пишете файл записи в файловой системе proc, вызывается функция обратного вызова, которая анализирует входные данные и задает переменные ядра. Входные данные в исходной форме не сохраняются.
Вышеизложенное является лишь немного более подробным способом сказать, что Хауке Лапинг так лаконично. Я предлагаю вам принять его ответ.
Он обновляется при каждом доступе. Вы видите состояние ядра в тот момент. Вот почему размер, показанный для «файлов», не является реальным размером. Реальный размер может измениться и определяется в момент доступа к файлу.
Вы могли бы сказать, что это может не обновляться в течение нескольких дней. Если вы не смотрите на это. 🙂