第 8 章 监控和管理 Linux 进程
1. 如何理解 systemd进程?
答:systemd进程在红帽Linux的第一个系统进程,所有进程都是systemd进程的后代,它负责初始化系统并启动其他系统服务。
2. ps和 top有什么区别?
答:ps提供当前的进程信息且是静态的,top提供的是实时更新的进程信息。
3. 解释 ps aux 和 ps -ef 这两个命令和参数的作用。
答:
- ps aux选项显示包括无控制终端的进程在内的所有进程
- ps -ef选项属于UNIX语法,作用是显示所有进程
4. 进程状态有哪些?
答:
- 运行中:R
- 睡眠:S(等待信号)、D(进程中断时使用)、K(可被kill的D)、I(游走的D)
- 已停止:T(被暂停或者临时停止)
- 僵停:Z(除pid之外资源已被释放,等待父进程释放pid资源)
5. 怎么理解作业(Job)和作业控制?
答:
- 作业是用户提交给操作系统的一个任务或者工作单元,它可能包括一个或多个进程,这些进程协同工作来完成作业。形象的说可以将一项作业比作吃饭,用户将吃饭这个作业提交给操作系统这个大脑,而操作系统来控制进程作为肌肉来完成吃饭这个作业。
- 作业控制是用户根据需要来启动和管理作业,用户可以通过kill指令来控制作业达到需要的状态。
6. 说明 kill 命令中使用 9 和 15 信号量的区别。
答:kill -9是立即终止程序,无法被拦截、忽略或处理;kill -15也会终止程序,但是是等待程序完成基本操作和自我清理后再终止,且是可被拦截、忽略或处理的。