top показывает общее состояние ожидания ввода/вывода для процессов и "iostat" показывает, сколько процессов выполняют запросы ввода/вывода. Но я хочу знать, что мой конкретный процесс находится в непрерывном спящем режиме, поэтому я хочу исследовать, сколько времени он находится в этом состоянии.
/proc/[pid]/stat может предоставить некоторые интересующие вас данные. Поле 3 содержит флаг состояния процесса, если это состояние "D", он ожидает в непрерывное состояние сна диска. Можно опросить файл proc и определить долю времени, в течение которого процесс находится в состоянии D.