в ps -l, что означает wchan = stext? - PullRequest
8 голосов
/ 01 января 2009

когда я пытаюсь настроить свой процесс, я вижу, что ожидающий канал - это Stext, что это значит?

Ответы [ 3 ]

11 голосов
/ 01 января 2009

WCHAN - это адрес в ядре, где процесс спит (если он действительно спит). Если для него установлено значение stext, это обычно означает, что ваше ядро ​​предшествует 2.6, и вы не инициализировали System.map (файл списка имен) или файл ядра и список имен не совпадают.

Если вы выполните команду «man ps» и выполните поиск wchan, он сообщит вам путь поиска для файла списка имен. Вероятно, первый найденный файл не соответствует ядру, которое у вас есть, поскольку stext - это начало сегмента TEXT ядра, и вы вряд ли будете там спать.

Я считаю, что если адрес находится за пределами сегмента TEXT, по умолчанию вы получите stext (отсюда и мои мысли о том, что ваш файл списка имен и ядро ​​не совпадают).

6 голосов
/ 09 ноября 2010

wchan не работает в системах x86, где для SCHED_NO_NO_OMIT_FRAME_POINTER установлено значение "y" (значение по умолчанию). В этих системах wchan всегда будет возвращать «0», что соответствует _stext

проверьте http://lkml.org/lkml/2008/11/6/12 для получения более подробной информации

1 голос
/ 07 января 2012

Kiwi - ps RHEL должны выбрать список имен из /boot/System.map-2.6.18-53.1.14.el5PAE. Я ожидаю, что это уже установлено. Если он работает правильно, то ps axo pid,cmd,wchan выдаст список процессов и функций ядра, в которых они ожидают. Для меня это значимый вывод для большинства функций, за исключением некоторых - rpc.idmap и lockd. Несколько функций показывают "stext", и я все еще хотел бы знать, что это значит.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...