linux
来源:互联网 发布:linux .ssh目录 编辑:程序博客网 时间:2024/04/27 18:05
由于 Linux 是一个多用户系统,同一时刻,系统中运行有属于不同用户的多个进程。那么,当处于某个终端上的用户按下了 Ctrl+C 键时(产生 SIGINT 信号),系统如何知道将该信号发送到哪个进程,从而不影响由其他终端上的用户运行的进程呢?
Linux 内核通过维护会话和进程组而管理多用户进程。如图 11-3 所示,每个进程是一个进程组的成员,而每个进程组又是某个会话的成员。一般而言,当用户在某个终端上登录时,一个新的会话就开始了。进程组由组中的领头进程标识,领头进程的进程标识符就是进程组的组标识符。类似地,每个会话也对应有一个领头进程。
同一会话中的进程通过该会话的领头进程和一个终端相连,该终端作为这个会话的控制终端。一个会话只能有一个控制终端,而一个控制终端只能控制一个会话。用户通过控制终端,可以向该控制终端所控制的会话中的进程发送键盘信号。
同一会话中只能有一个前台进程组,属于前台进程组的进程可从控制终端获得输入,而其他进程均是后台进程,可能分属于不同的后台进程组。
图 11-3 会话和进程、进程组
Linux 内核通过维护会话和进程组而管理多用户进程。如图 11-3 所示,每个进程是一个进程组的成员,而每个进程组又是某个会话的成员。一般而言,当用户在某个终端上登录时,一个新的会话就开始了。进程组由组中的领头进程标识,领头进程的进程标识符就是进程组的组标识符。类似地,每个会话也对应有一个领头进程。
同一会话中的进程通过该会话的领头进程和一个终端相连,该终端作为这个会话的控制终端。一个会话只能有一个控制终端,而一个控制终端只能控制一个会话。用户通过控制终端,可以向该控制终端所控制的会话中的进程发送键盘信号。
同一会话中只能有一个前台进程组,属于前台进程组的进程可从控制终端获得输入,而其他进程均是后台进程,可能分属于不同的后台进程组。
图 11-3 会话和进程、进程组
0 0
- linux
- linux
- Linux
- Linux
- LINUX!
- Linux
- linux
- linux
- linux
- Linux
- linux
- linux
- linux
- linux
- Linux
- linux
- linux
- Linux
- HDU 2089 数位dp (简单)
- <Unity3D>Unity3D入门篇——第二讲 初步认识Unity
- java Servlet 接收并保存TScrnCut截屏及扫描插件上传图像源码
- uva306 - Cipher 置换群
- twisted 入门教程
- linux
- 移植Freemodbus
- 单片机(AT89X52)四位数码管显示0123
- <Unity3D>Unity3D入门篇——第三讲 GUI控件(一)
- FreeModbus在STM32上移植。
- wamp修改多站点配置
- awk:base64加密解密,执行shell命令
- iOS系类教程之用instruments来检验你的app
- oSIP协议栈(及eXoSIP、Ortp等)使用入门