![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
ЙаМайскЫйПчОЛ |
![]()
Сообщение
#11
|
![]() Участник ![]() ![]() Группа: Участник Сообщений: 154 Регистрация: 10.7.2008 Из: СПб Пользователь №: 232 Спасибо сказали: 7 раз(а) Репутация: ![]() ![]() ![]() |
prstatus_t
The entry containing this structure has a NOTE type of 1. This structure contains things of interest to a debugger from the operating system's u-area, such as the general registers, signal dispositions, state, rea- son for stopping, process ID and so forth. The prstatus_t structure is defined in <sys/procfs.h>. |
|
|
carveau |
![]()
Сообщение
#12
|
Студент ![]() Группа: Новичок Сообщений: 11 Регистрация: 9.12.2009 Пользователь №: 1292 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
к сожелению пример использует старые библиотеки и хеадеры, у себя не смог найти запросы битовых констант для ioctl - PIOCPSINFO. . .
находил еще в интернете о <sys/sched.h> там вообще были готовые функции, передаешь параметром имя процесса в функцию а она тебе pid_t сразу.... #define PIOC ('q'<<8) #define PIOCPSINFO (PIOC|30) так же находил в инете битовое представление этих констант, подставлял, результата не дало, ioctl возвращал -1 |
|
|
ЙаМайскЫйПчОЛ |
![]()
Сообщение
#13
|
![]() Участник ![]() ![]() Группа: Участник Сообщений: 154 Регистрация: 10.7.2008 Из: СПб Пользователь №: 232 Спасибо сказали: 7 раз(а) Репутация: ![]() ![]() ![]() |
посмотри procfs.h
структура elf_prstatus поле pr_pid |
|
|
carveau |
![]()
Сообщение
#14
|
Студент ![]() Группа: Новичок Сообщений: 11 Регистрация: 9.12.2009 Пользователь №: 1292 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
да есть, такое поле, дистрибутив у меня KUbuntu 9.04
счас надо понять каким системным вызовом заполнять ее !!! если все также ioctl такой REQUEST должен быть прошелся по <bits/ioctls-types.h> ничего похожего по смысле не нашел |
|
|
Kagami |
![]()
Сообщение
#15
|
Старейший участник ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 601 Регистрация: 2.2.2009 Пользователь №: 523 Спасибо сказали: 101 раз(а) Репутация: ![]() ![]() ![]() |
Мм... а никто еще не предлагал посмотреть исходники утилиты ps?
|
|
|
ЙаМайскЫйПчОЛ |
![]()
Сообщение
#16
|
![]() Участник ![]() ![]() Группа: Участник Сообщений: 154 Регистрация: 10.7.2008 Из: СПб Пользователь №: 232 Спасибо сказали: 7 раз(а) Репутация: ![]() ![]() ![]() |
carveau, давай ещё раз тебе по имени процесса надо узнать работает он или нет?
И делать так тебе не нравиться?
|
|
|
carveau |
![]()
Сообщение
#17
|
Студент ![]() Группа: Новичок Сообщений: 11 Регистрация: 9.12.2009 Пользователь №: 1292 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
да, так точно.
Вижу два варианта решения. 1) по имени процесса получить его PID, если процесса нет то и мы ни какого PID соответственно не получим 2) по PID получить имя процесса, обходим весь каталог /proc/номер - и есть список всех PID - ов в системе да делать так не нравится, потому что пишу дипломку, и преподователь не оценит легкость решения этой задачи !!! ДА есть плюс у этого метода, он будет не зависим от возраста линуксовых библиотек !!! |
|
|
ЙаМайскЫйПчОЛ |
![]()
Сообщение
#18
|
![]() Участник ![]() ![]() Группа: Участник Сообщений: 154 Регистрация: 10.7.2008 Из: СПб Пользователь №: 232 Спасибо сказали: 7 раз(а) Репутация: ![]() ![]() ![]() |
и ты не хочешь пробегать все дерево процессов с целью поиска в cmdline имени процесса??
Хотя мне кажется что это самый прямой способ... Любое решение которое ты найдешь ИМХО будет основанно на все том же переборе дерева процессов... но будет в красивой(может быть) упаковке в виде системной функции Сообщение отредактировал ЙаМайскЫйПчОЛ - 9.12.2009, 15:10 |
|
|
carveau |
![]()
Сообщение
#19
|
Студент ![]() Группа: Новичок Сообщений: 11 Регистрация: 9.12.2009 Пользователь №: 1292 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
да, потому что все решение сводится к простому чтению из файла ! не оценят !
|
|
|
ЙаМайскЫйПчОЛ |
![]()
Сообщение
#20
|
![]() Участник ![]() ![]() Группа: Участник Сообщений: 154 Регистрация: 10.7.2008 Из: СПб Пользователь №: 232 Спасибо сказали: 7 раз(а) Репутация: ![]() ![]() ![]() |
О_о
Погоня за оценкой не доведет до бобра |
|
|
![]() ![]() ![]() |
![]() |
|
Текстовая версия | Сейчас: 15.7.2025, 3:12 |