探索UNIX高级编程:进程关系与登录流程
需积分: 3 11 浏览量
更新于2024-08-02
收藏 561KB PDF 举报
"《UNIX环境高级编程》第009章探讨了进程关系在UNIX系统中的重要性。这一章节首先强调了进程间的父子关系,即子进程在终止后,其父进程能够接收到通知并获取子进程的退出状态。章节还提及了`waitpid`函数和进程组的概念,包括如何等待进程组中的任一进程结束。
接着,章节转向了POSIX.1引入的对话期(session)概念,这是理解进程间交互和管理的关键。登录shell,以及所有由登录shell启动的进程之间的关系也得到了深入剖析。由于信号在这些讨论中不可或缺,因此提到了对UNIX信号的了解,建议对信号不熟悉的读者阅读第10章作为前置知识。
9.2节专门研究终端登录过程。早期UNIX系统如V7,用户通过哑终端(RS-232)与主机连接,无论是本地还是远程。登录过程中,系统管理员在`/etc/ttytab`文件中配置每个终端设备及其参数,如波特率。内核中的初始化进程`init`负责加载用户并进入多用户模式,它会遍历`/etc/ttytab`,对每个允许登录的终端调用`fork`创建getty进程,后者负责管理和控制终端。
图9-1展示了这个过程,每个进程都以超级用户权限运行,且`init`以空环境启动`getty`。`getty`使用`open`函数打开终端设备,如果是调制解调器,可能需要等待用户拨号连接。这一章节深入介绍了这些核心进程及其在系统启动和用户登录中的作用,对于理解UNIX环境下的进程管理和用户交互至关重要。"
2009-12-08 上传
2009-12-08 上传
2019-04-10 上传
2009-03-22 上传
2009-07-30 上传
2007-04-11 上传
2022-06-09 上传
2010-03-22 上传
Tech-Worm
- 粉丝: 18
- 资源: 39
最新资源
- C++ Qt影院票务系统源码发布,代码稳定,高分毕业设计首选
- 纯CSS3实现逼真火焰手提灯动画效果
- Java编程基础课后练习答案解析
- typescript-atomizer: Atom 插件实现 TypeScript 语言与工具支持
- 51单片机项目源码分享:课程设计与毕设实践
- Qt画图程序实战:多文档与单文档示例解析
- 全屏H5圆圈缩放矩阵动画背景特效实现
- C#实现的手机触摸板服务端应用
- 数据结构与算法学习资源压缩包介绍
- stream-notifier: 简化Node.js流错误与成功通知方案
- 网页表格选择导出Excel的jQuery实例教程
- Prj19购物车系统项目压缩包解析
- 数据结构与算法学习实践指南
- Qt5实现A*寻路算法:结合C++和GUI
- terser-brunch:现代JavaScript文件压缩工具
- 掌握Power BI导出明细数据的操作指南