Назад | Перейти на главную страницу

Показать использование стека ядра для процесса в Linux

Я пытаюсь определить, сколько стека ядра используется процессами на сервере. я нашел документ это означает, что вывод sysrq-t показывает количество неиспользуемого стека в 4-м поле строки с именем процесса. Проблема в том, что на каждой машине, на которой я запускаю sysrq-t, за исключением старого 32-битного CentOS 5, это поле всегда имеет 0. Есть ли другой способ определить использование стека?

Для заполнения этого значения ядро ​​должно быть скомпилировано с CONFIG_DEBUG_STACK_USAGE. Я подозреваю, что большинство производственных ядер не устанавливают его.

# RHEL5
$ grep CONFIG_DEBUG_STACK_USAGE /boot/config-`uname -r`
# CONFIG_DEBUG_STACK_USAGE is not set

# Lucid
$ grep CONFIG_DEBUG_STACK_USAGE /boot/config-`uname -r`
# CONFIG_DEBUG_STACK_USAGE is not set

# Precise
$ grep CONFIG_DEBUG_STACK_USAGE /boot/config-`uname -r`
# CONFIG_DEBUG_STACK_USAGE is not set