Мое смутное и интуитивное понимание состоит в том, что Ctrl+C убивает процесс, который в данный момент выполняется в выбранном окне.
Я, однако, запутываюсь из-за разницы в том, какой процесс уничтожается при вызове исполняемого файла и когда используется интерпретатор.
переводчик
Когда я использую переводчика. Например, если я открываю R
на терминале, я вижу один процесс, который CMD
(по вызову ps
) является R
Однако когда я использую Ctrl+C , процесс R
не уничтожается, а процесс, выполняющийся в R
уничтожается.
исполнимый
Когда я вызываю exectuable, я вижу один процесс, который CMD
(по вызову ps
) является <nameOfExecutable>
. Когда я делаю Ctrl+C, этот процесс прекращается.
Вопрос
Кажется, что существует какая-то иерархия процессов (и может быть правильная семантика, чтобы ссылаться на нее). Что именно делает Ctrl+C в свете этой кажущейся иерархии процессов?
Для вашей информации я использую Терминал 2.6.1 в Mac OS X 10.11.3