Предложен новый механизм Statfs для получения статистики работы ядра Linux

 

Механизм получения статистических данных, генерируемых ядром Linux, использует DebugFS и устроен таким образом, что обычно требует root-доступа, а sysfs не всегда удобна. Более того, в ряде случаев требуется создание пользователями собственного инструментария.

Один из разработчиков Red Hat вынес предложение изменить столь неудобное положение дел. Для этого предлагается использовать новую, специально предназначенную для сбора статистики виртуальную файловую систему Statfs.

Изначально единого механизма сбора статистики ядра в Linux не существует. Как отмечает в своём посте Эмануэль Джузеппе Эспосито (Emanuele Giuseppe Esposito), подсистемы ОС вынуждены использовать свои механики сбора, например, в виде файлов в пространстве debugfs. Так, KVM имеет свой блок кода, отвечающий за эту функцию (обработчики debugfs находятся в файле virt/kvm/kvm_main.c). Из этого, отмечает разработчик, вытекает две основные проблемы: избыточный код и то, что debugfs далеко не всегда подходит для накопления статистики, хотя бы потому, что эта файловая система подвержена механизму локдауна (lockdown).

Решение проблемы он видит в использовании специальной виртуальной файловой системы statsfs, которая располагается в оперативной памяти. Эта система создана Паоло Бонзини (Paolo Bonzini), она достаточно проста и имеет стабильный API. В общем дереве она монтируется как /sys/kernel/stats, и в этом виде KVM уже может использовать statsfs. Данная ФС поддерживает любую структуру файлов и директорий, различные типы данных, а также их агрегацию, причём, не только в виде суммы, но также и в виде значений average, max, min и count_zero.

Применение statsfs позволяет избежать необходимости root-доступа, «загрязнения» пространства debugfs и существенно упрощает саму процедуру сбора статистики. Подробности можно узнать в этой ветке обсуждения ядра.

Если вы заметили ошибку — выделите ее мышью и нажмите CTRL+ENTER. | Можете написать лучше? Мы всегда рады новым авторам.

Источник:

Постоянный URL: https://servernews.ru/1012091
Поделиться:  

Комментарии

Система Orphus