UNIX环境高级编程高效学习法
1、 每种UNIX系统实现均配备一套专属的内核进程,用以提供底层操作系统服务。例如,在部分UNIX系统的虚拟内存管理机制中,进程ID为2的进程即为页守护进程,专门负责执行页面换入换出、内存回收等分页相关操作,是虚拟存储系统稳定运行的关键支撑组件。
2、 一个现有进程可通过调用fork函数创建子进程。
3、 执行重定向
4、 vfork与fork的另一关键区别在于执行顺序:vfork确保子进程优先运行,且必须先调用exec或exit;在此期间,父进程被挂起,不得调度执行。一旦子进程完成exec或exit,父进程才恢复运行。这种机制避免了写时复制带来的开销,但也要求子进程在调用exec或exit前不得修改数据或返回。
5、 若进程因收到SIGCHLD信号而调用wait,通常会立即返回;但若在任意时刻主动调用wait,则可能因无子进程终止而进入阻塞状态,直至有子进程结束或被中断。
6、 另一个获取进程终止状态的函数是waitid,它功能类似waitpid,但在参数设置和控制选项上更为灵活多样。
评论
更多评论