В чем разница между работой и процессом в Unix? - PullRequest
14 голосов
/ 27 апреля 2010

В чем разница между job и process в Unix? Можете ли вы привести пример?

Ответы [ 7 ]

10 голосов
/ 27 апреля 2010

Задания - это процессы, которые запускаются оболочкой. Оболочка отслеживает их в рабочем столе. Команда jobs показывает список активных фоновых процессов. Они получают номер задания, который не является пидом процесса. Команды, такие как fg, используют идентификатор задания.

В духе примера Юргена Хетцеля:

find $HOME | sort &
[1] 15317
$ jobs
[1]+  Running                 find $HOME | sort &
$ fg
find $HOME | sort
  C-c C-z
[1]+  Stopped                 find $HOME | sort
$ bg 1
[1]+ find $HOME | sort &

Попробуйте сами примеры и посмотрите справочные страницы.

8 голосов
/ 27 апреля 2010

A Группа процессов может рассматриваться как Задание . Например, вы создаете группу фоновых процессов в оболочке:

$ find $HOME|sort &
[1] 2668

И вы можете видеть два процесса в качестве членов новой группы процессов:

$ ps -p 2668 -o cmd,pgrp 
CMD                          PGRP
sort                         2667


$ ps -p "$(pgrep -d , -g 2667)" -o cmd,pgrp
CMD                          PGRP
find /home/juergen           2667
sort                         2667

Вы также можете убить всю группу процессов / задание:

$ pkill -g 2667
6 голосов
/ 27 апреля 2010

http://en.wikipedia.org/wiki/Job_control_%28Unix%29:

Процессы, находящиеся под воздействием средства управления заданиями, называются заданиями.

2 голосов
/ 27 апреля 2010

http://en.wikipedia.org/wiki/Job_control_%28Unix%29

Задания - это один или несколько процессов, которые сгруппированы как «задание», где задание - это концепция оболочки UNIX.

0 голосов
/ 26 апреля 2016

Я думаю, что работа - это запланированный процесс или набор процессов, работа всегда имеет понятие расписания, в противном случае мы можем назвать это процессом.

0 голосов
/ 21 декабря 2015

job - это когда вы хотите узнать о процессах, запущенных из текущей оболочки.

process - это когда вы хотите узнать о процессе, запущенном из любой оболочки или компьютера.

0 голосов
/ 20 января 2014

Задание состоит из нескольких процессов, выполняющихся последовательно или параллельно. Процесс - это исполняемая программа.

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