操作系统:管道运行原理
采用状态机视角分析:
1.初始状态
(父进程 [ (写口->管道入口) (读口->管道出口) ] ; 管道 (入口,出口) )
2.执行fork命令,复制父进程后
(父进程 [ (写口->管道入口) (读口->管道出口) ] ; 管道 (入口,出口) ; 子进程 [ (写口->管道入口) (读口->管道出口) ] )
3.关闭子进程读口
(父进程 [ (写口->管道入口) (读口->管道出口) ] ; 管道 (入口,出口) ; 子进程 [ (写口->管道入口) ] )
4.父进程关闭写口,
(父进程 [ (写口->管道入口) (读口->管道出口) ] ; 管道 (入口,出口) ; 子进程 [ (写口->管道入口) ] )
5.子进程执行命令,并写入管道空间
(父进程 [ (读口->管道出口) ] ; 管道 (入口,出口) ; 子进程 [ (写口->管道入口) (执行命令) ] )
6.父进程读取管道,并执行管道命令右边操作
(父进程 [(读口->管道出口) (执行命令) ] ; 管道 (入口,出口) ; 子进程 [ (写口->管道入口) ] )

浙公网安备 33010602011771号