Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / Взаимодействие процессов / 8 сообщений из 8, страница 1 из 1
26.01.2009, 20:15:43
    #35778528
I00N
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Взаимодействие процессов
1) Посылаю процессу сигнал STOP. Потом CONT. Процесс продолжает выполняться в фоне(jobs). Почему в фоне, а не в foreground?

2) Как узнать ид только что запущенного из шелла процесса? Интересует точный метод(не pidof, ps -C)

3) Перед выключением иксов хотелось бы сообщить запущенным иксовым прогам о завершении и дать им время коректно заверишься(SIGTERM). Как бы так сделать?

4) Есть ли лучший способ достижения результата: ps lax | grep <часть названия проги>
...
Рейтинг: 0 / 0
27.01.2009, 14:48:39
    #35780138
I00N
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Взаимодействие процессов
5) Почему по результатам бывает top RES != CODE + DATE, VIRT != RES + SWAP?
...
Рейтинг: 0 / 0
27.01.2009, 15:03:58
    #35780215
fy
fy
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Взаимодействие процессов
I00N,

автор1) Посылаю процессу сигнал STOP. Потом CONT. Процесс продолжает выполняться в фоне(jobs). Почему в фоне, а не в foreground?

Каким образом посылаете сигналы? Делаете в одном шелле?
...
Рейтинг: 0 / 0
27.01.2009, 15:33:43
    #35780339
I00N
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Взаимодействие процессов
fyI00N,

автор1) Посылаю процессу сигнал STOP. Потом CONT. Процесс продолжает выполняться в фоне(jobs). Почему в фоне, а не в foreground?

Каким образом посылаете сигналы? Делаете в одном шелле?
kill -STOP, kill -CONT
В одной консоли запускаю процесс, в другой посылаю ему сигналы. Используемый шелл - bash
...
Рейтинг: 0 / 0
27.01.2009, 16:05:47
    #35780439
fy
fy
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Взаимодействие процессов
I00N
kill -STOP, kill -CONT
В одной консоли запускаю процесс, в другой посылаю ему сигналы. Используемый шелл - bash

По-моему вполне логично что он запускает процесс в background, так как в это же время в первом шелле может быть запущен процесс в foregroud, а второму об этом ничего не известно. Если необходимо запустить процесс в foreground после сигнала STOP используйте команду fg "номер job" в том же шелле к котором запускали процесс.
...
Рейтинг: 0 / 0
27.01.2009, 17:28:19
    #35780734
onstat-
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Взаимодействие процессов
I00N1) Посылаю процессу сигнал STOP. Потом CONT. Процесс продолжает выполняться в фоне(jobs). Почему в фоне, а не в foreground?


Не совсем понятно что вы хотите, может это поможет:

man bash
REDIRECTION
Before a command is executed, its input and output may be redirected
using a special notation interpreted by the shell.
...........


Указывайте REDIRECTION явно,
ИМХО при не явном шел при переводе в бакгроунд
забирает у программы stdin stdout stderr выданные ей по умолчанию.
И подсовывает ей некий временный файл или /dev/null

I00N
2) Как узнать ид только что запущенного из шелла процесса? Интересует точный метод(не pidof, ps -C)


${!}

man bash
! Expands to the process ID of the most recently executed back-
ground (asynchronous) command.
...
Рейтинг: 0 / 0
27.01.2009, 20:50:50
    #35781148
I00N
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Взаимодействие процессов
onstat-,

Спасибо.
На счет KILL -STOP: при переводе в бекграунд не меняются потоки вывода процесса
...
Рейтинг: 0 / 0
03.02.2009, 13:28:02
    #35793683
I00N
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Взаимодействие процессов
Хотелось бы узнать ответы на остальные вопросы
...
Рейтинг: 0 / 0
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / Взаимодействие процессов / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]