💡
原文中文,约3100字,阅读约需8分钟。
📝
内容提要
本文介绍了 Linux 系统中的 ELF 文件格式和进程状态,终端类型和进程间通信的信号机制,以及使用 pcntl_fork() 函数时需要注意的问题。
🎯
关键要点
- ELF 文件格式是 Linux 系统中可执行文件的存储格式,分为四种类型:可执行文件、可重定位文件、共享目标文件和核心转储。
- tty 代表物理终端,/dev/ttyX 表示本地终端,/dev/console 是当前焦点终端,/dev/pts/X 是伪终端。
- 进程结束时可能会产生僵尸进程,需使用 pcntl_wait() 函数回收进程资源。
- 父进程和子进程的关系,子进程在父进程结束后会被 init 进程接管,形成孤儿进程。
- 进程组和会话的概念,进程组有一个组长,多个进程组组成一个会话,使用 setsid() 函数可以创建新的会话。
- 信号是进程间通信的一种方式,kill 命令用于发送信号,常用信号包括 SIGKILL 和 SIGINT。
- 信号处理可以选择默认操作、忽略信号或自定义处理,信号处理器会被子进程继承。
- 在使用 pcntl_fork() 之前,需先处理信号处理器,并与 Redis 建立连接。
➡️