理解unix进程笔记
2015-02-15
书名《理解unix进程》这本小册子,作者使用ruby来进行说明,irb立马可以实验,回家在七大姑八大姨的关切中看完了。
进程名称的修改导致ps查询可以不同的东西
fork方式 当年的经典问题 如何让if else里面的两个逻辑都执行的宁一种解法 if fork puts “fork if”else “child fork if" jdk6的fork/join框架,不过这是线程级别。
父子进程与孤儿进程相关:失控时父进程推出,子进程继续写标准输出,导致问题 弃子 父集成不带子进程同归于尽(fire and forget的弃子模式,子进程异步处理其他事务)
守护进程周边概念:守护进程都知道,但底层创建一个守护集成是需要理解进程组与会话组 进程组:管理父子进程,弃子模式在终端ctrl+c实效,这是由于进程组接受信号转发给每个进程组成员 会话组在非终端终结所有非进程组的命令
进程概念 僵尸进程是什么,如何避免 任何结束的进程,如果它的状态未被读取,就是僵尸进程,它在消耗内核资源。 父进程在弃子模式下如何
进程内存模型 cow的copy-on-write模式,父子共享内存,如果一个修改,则进程复制
进程通信 不依赖网络与文件,退出码 信号通信,捕获内核发出的,但是数量上不可靠 单向管道通信,管道本身是一种资源,利用资源描述符可以父子进程共享 当然还有其他sock方式mq等