fsysinfo

Просмотр статистики файловых систем

Синтаксис:

fsysinfo [опции]* устройство|файловая_система

Опции:

-l период
Цикл с установленным периодом (в миллисекундах).
-L период
Цикл с установленным периодом (в миллисекундах) с отображением статистических разниц между итерациями.
-m
Не добавлять в метаданные число операций ввода-вывода (точка монтирования файловой системы).
-v
Показать версии io-blk.so и файловой системы.
-z
Обнулить (сбросить) данные статистики после их считывания.
-Z
Обнулить (сбросить) данные статистики без их отображения.

Платформы:

ЗОСРВ «Нейтрино»

Целевые архитектуры:

aarch64, arm, armv7, e2k, mips, ppc, x86

Описание:

Утилита fsysinfo является внешним интерфейсом для функции devctl( DCMD_FSYS_STATISTICS ) (из <sys/fs_stats.h>), которая запрашивает статистику дисковой файловой системы. Эта статистика включает в себя данные операций чтения и записи разделов диска, эффективность внутреннего кэширования, число различных системных вызовов, выполненных с помощью кода пользователя и т.д.

По умолчанию текущая статистика отображается один раз. Также доступен режим цикла, в котором утилита выполняется циклично и повторно выводит статистику через заданный период времени (опция -l используется для вывода необработанных данных, а -L – для отображения разницы с прежними значениями). Для прерывания цикла нажмите Ctrl - C.

Статистику можно обнулить с помощью опции -z или -Z (-z показывает значения до сброса, а при применении опции -Z результаты не выводятся – эту опцию целесообразно использовать в сценариях).

При выборе опции -m утилита fsysinfo не объединяет статистику ввода-вывода для диска указанной файловой системы и устройства/раздела соответствующего хоста. Как правило, это требуется при использовании нескольких реализаций файловой системы, в которых обновление метаданных привязывается к устройству хоста, а не к определенному высокоуровневому файлу. (Например, при выборе опции -m изменения в файлах .bitmap и .inode в файловой системе fs-qnx4.so не отображаются в смонтированной файловой системе как данные ввода-вывода.)

Выводится следующая информация:

Раздел Статистика Описание
FILESYS Точка монтирования и тип файловой системы
MOUNT mounted Время монтирования файловой системы
elapsed Время с момента последнего сброса статистики
DISK I/O write Количество физических операций записи в секторы устройства
read Количество физических операций чтения из секторов устройства
r/a Упреждающее чтение с устройства
direct Секторы DCMD_FSYS_DIRECT_IO
bad Поврежденные блоки
CACHE write Секторы с отложенной записью в кэш-память буфера (blk delwri= commit=)
read Секторы, повторно прочитанные из кэш-памяти буфера
rate Соотношение (CACHE read) : (DISK IO read + r/a)
wipe Буферы, повторно использованные вне алгоритма замещения блока данных с наиболее длительным отсутствием обращений (Least Recently Used, LRU) для поддержания максимальной интенсивности использования (blk wipe=)
protect Буферы метаданных при условии усиленного применения LRU (blk protect=)
SYSCALL open Количество вызовов функции open()
stat Количество вызовов функции stat() или fstat() calls
namei Количество преобразований путевых имен в файл
write Количество вызовов функции write()
read Количество вызовов функции read()
devctl Количество вызовов функции devctl()
NAMES exist Имена известных файлов (без сканирования)
enoent Имена несуществующих файлов (без сканирования)
misses Файлы с неизвестными именами (требуется сканирование каталога)
unsuit Имена файлов не подходящих для кэширования (слишком длинные или неоднозначные)
stale Записи с устаревшим именем (демонтирована файловая система или повторно используется соответствующий виртуальный дескриптор)
rate Соотношение (exist + enoent) : (misses + unsuit)
BMAP hit Известное отображение логического блока на физический
miss Неизвестное отображение логического блока на физический
rate Соотношение (hit) : (miss)
VNODES create Открытие неизвестного файла (необходима загрузка/построение виртуального дескриптора из файловой системы)
hit Открытие известных или недавно использованных файлов
rate Соотношение (hit) : (create)
lock/UC Неочевидная/очевидная блокировка виртуального дескриптора
recycle Повторное использование записи из кэш-памяти для нового файла (blk vnode=)
SLAB map Число страниц, отображаемых в подсистеме памяти динамического резервирования памяти
unmap Число страниц, извлеченных из подсистемы памяти динамического резервирования памяти
active Разница между (map) − (unmap)

Эта информация используется для анализа эффективности различных типов кэшей io-blk.so, что может позволить точно определить значения опций командной строки драйвера (blk cache= ncache= map= vnode=).

Примеры:

Определение типов и количества дисковых операций, необходимых для выполнения действия:

# fsysinfo -Z /fs/hd/tmp # cd /fs/hd/tmp # rw -t150m -r8k # fsysinfo /fs/hd/tmp FILESYS /fs/hd (qnx4) MOUNT mounted Wed Jul 18 20:39:44 2007 elapsed 18 secs DISK I/O write 307874 read 282 r/a 307038 direct 0 bad 0 CACHE write 326473 read 331538 rate 51% wipe 0 protec 1003 SYSCALL open 2 stat 1 namei 5 write 19200 read 19201 devctl 7 NAMES exist 3 enoent 2 misses 2 unsuit 0 stale 194 rate 71% BMAP hit 38155 miss 501 rate 98% VNODES create 1 hit 9 rate 90% lock/U 38427 lock/C 0 recycl 1265 SLAB map 4041 unmap 24 active 4017

Контроль доступа к диску в режиме реального времени:

# fsysinfo -L500 /fs/hd

Эта команда выводит информацию, аналогичную приведенной выше, но с обновлением каждые 500 мс.

Классификация:

Базовые подсистемы ЗОСРВ «Нейтрино»

Тематические ссылки:

devb-*, fs-*, io-blk.so




Предыдущий раздел: Утилиты