首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当我们使用控制键发送信号或运行“`kill`”时,进程是如何处理的?

当我们使用控制键发送信号或运行“`kill`”时,进程是如何处理的?
EN

Unix & Linux用户
提问于 2017-08-08 11:17:00
回答 1查看 268关注 0票数 -3

一个信号由一个进程或从一个进程发送到另一个进程。

bash进程通常在终端仿真器进程(如gnome终端)中运行。

bash进程依次运行其他进程。

因此,当我们在运行kill的终端仿真器中使用控制键或运行bash向进程发送信号时,哪个进程向哪个进程发送信号?如何涉及终端模拟器进程、bash进程和bash进程的子进程?

谢谢。

EN

回答 1

Unix & Linux用户

发布于 2017-08-08 11:49:46

当执行内置到各种shell的kill命令时,执行系统调用以发送信号的是shell进程本身。

在执行外部kill命令时,执行系统调用以发送信号的进程是分叉运行的。

没有所谓的“伪终端过程”。伪终端不是进程。有一个终端模拟器进程,但那个仿真器不是伪终端。

当一个特殊字符从终端或终端仿真器通过伪终端的主端发送到内核中的行规则时,那么(假设行纪律具有特殊字符的规范输入模式),则是内核发送信号。

再读

票数 2
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/384703

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档