Я пытаюсь определить, сколько стека ядра используется процессами на сервере. я нашел документ это означает, что вывод 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