Доброго времени суток!
Переформулировал вопрос, ибо было много текста:
Делаю лаб. работу по Юниксу - "управление процессами"
Запускаю скрипт:
$sh pr1while((++i)); do echo $i » file.txt; sleep 1; done
командой
pr1 & перевожу процесс в фоновый режим
ps -l показывает данный процесс с TTY pts/5:
F S UID
PID PPID C PRI NI ADDR SZ WCHAN
TTY TIME CMD
1 S 11007
16359 16320 0 80 0 - 1735 -
pts/5 00:00:00 bash
Далее перезахожу в систему, (по-идее процесс должен умереть, так же?), ввожу опять
ps -l
вижу, что процесса
16359 нет, а я подключен уже с
pts/7 (ну или с любого другого).
ps -u username - таким образом пропавший процесс находится, запущенный и работающий от старого
pts/5 TTY.
Если я не запускаю фоновых процессов, а просто подряд перезахожу в систему, подключаюсь все время к одному TTY.
Собственно, вопрос:
По заданию я должен "перезайти в систему", посмотреть что этим я убил свой фоновый процесс, а потом сделать для него защиту от прерываний (при выходе из системы). Почему процесс не умирает, я же не задаю nohup? Почему меня кидает на новый TTY? Что делаю не так?)