Сделать процесс лидером группы и сеанса

Модератор: Модераторы разделов

demon_r
Сообщения: 2
ОС: XP, RedHat

Сделать процесс лидером группы и сеанса

Сообщение demon_r »

Здравия желаю народ.
Кто-нибудь может подсказать как сделать процесс лидером группы и сеанса. Пробовал через nice() с параметрами -19-20. Проверял через ps.
Ниче такого не заметил.
Кто знает поделитесь пожалуйста.
Спасибо сказали:
Аватара пользователя
nesk
Сообщения: 2268
Статус: Линукссаксовец
ОС: MS Windows XP Home SP3

Re: Сделать процесс лидером группы и сеанса

Сообщение nesk »

demon_r писал(а):
05.05.2007 15:08
Здравия желаю народ.
Кто-нибудь может подсказать как сделать процесс лидером группы и сеанса. Пробовал через nice() с параметрами -19-20. Проверял через ps.
Ниче такого не заметил.
Кто знает поделитесь пожалуйста.


nice меняет поправку к приоритету процесса
что бы сделать процесс лидером группы попробуй системный вызов setpgrp(2)
а что бы сделать лидером сеанса setsid(2)

удачи
Внимание: У меня под рукой нет машины с Linux. Я не использую эту ОС. Ответы я даю либо по памяти, либо мне помогает гугл. Тщательно читайте маны по тем командам и конфигурационным файлам, которые я упоминаю.

0xDEFEC8ED
Спасибо сказали:
Аватара пользователя
TimberWolf
Сообщения: 35
ОС: Gentoo Linux

Re: Сделать процесс лидером группы и сеанса

Сообщение TimberWolf »

Процесс становится лидером группы когда он создаёт новую группу при применении системного вызова setpgid(2) с помощью него таже возможно перейти в другую группу процессов. Для создания лидера сеанса используют системный вызов setsid(2). Процесс становится лидером сеанса и автоматически лидером новой группы
timberwolf@hyper-tux ~ $ uname -a
Linux hyper-tux 2.6.23-gentoo-r3 #4 SMP Sun Feb 3 17:35:39 MSK 2008 x86_64 AMD Athlon™ 64 X2 Dual Core Processor 3800+ AuthenticAMD GNU/Linux
Спасибо сказали:
demon_r
Сообщения: 2
ОС: XP, RedHat

Re: Сделать процесс лидером группы и сеанса

Сообщение demon_r »

TimberWolf я сделал как ты сказал. Вызов ps показыает в терминале только 2 процеса(у меня сам процесс и один дочерний), а где другие процессы bash и т.п? И причем вместо терминала tty0 показывает ?. Может я делаю что-то не так или так должно быть
Спасибо сказали:
Аватара пользователя
Фантом
Сообщения: 463
ОС: openSUSE

Re: Сделать процесс лидером группы и сеанса

Сообщение Фантом »

demon_r писал(а):
11.05.2007 10:36
Вызов ps показыает в терминале только 2 процеса(у меня сам процесс и один дочерний), а где другие процессы bash и т.п? И причем вместо терминала tty0 показывает ?. Может я делаю что-то не так или так должно быть


Пиши "ps -aux". :)
Спасибо сказали:
Аватара пользователя
nesk
Сообщения: 2268
Статус: Линукссаксовец
ОС: MS Windows XP Home SP3

Re: Сделать процесс лидером группы и сеанса

Сообщение nesk »

demon_r писал(а):
11.05.2007 10:36
TimberWolf я сделал как ты сказал. Вызов ps показыает в терминале только 2 процеса(у меня сам процесс и один дочерний), а где другие процессы bash и т.п? И причем вместо терминала tty0 показывает ?. Может я делаю что-то не так или так должно быть


Очень советую man ps
у этой команды очень много полезных ключей.

например ps -e -- все процессы в системе
ps -f или ps -l дополнительная подробная информация о процессах
ps -j информация о сессиях и группах
ps -u <username> все процессы данного пользователя
ps -t <ttyname> все процессы связанные с терминалом
и еще много разных ключей в разных стилях и форматах

А ? вместо tty указывается в том случае, когда процесс больше не связан с конкретным терминалом


Фантом писал(а):
11.05.2007 13:14
Пиши "ps -aux". :)

это же bsd-style :) можно даже без минуса
вот так ps aux
Внимание: У меня под рукой нет машины с Linux. Я не использую эту ОС. Ответы я даю либо по памяти, либо мне помогает гугл. Тщательно читайте маны по тем командам и конфигурационным файлам, которые я упоминаю.

0xDEFEC8ED
Спасибо сказали: