(26)--4.4Linux程序设计 进程创建.ppt
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《(26)--4.4Linux程序设计 进程创建.ppt》由会员分享,可在线阅读,更多相关《(26)--4.4Linux程序设计 进程创建.ppt(8页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、4.4 进程创建进程创建-2-(一)进程控制块进程控制块是task_struct结构体进程控制块PCB(process control block)l控制进程运行l描述进程情况l管理系统进程-3-(二)fork()函数fork()函数函数语法要点语法要点-4-即一个进程创建一个子进程,该子进程还可以创建自己的子进程。(三)fork()函数特点fork调用特点:被调用一次,却能够返回两次在父进程中,fork返回新创建子进程的进程IDfork函数执行完毕,若创建新进程成功,则出现两个进程,一个是子进程,一个是父进程。在子进程中,fork函数返回0fork函数的内部原理:进程的分裂生长模式-5-(四
2、)fork()函数使用调用fork()函数后,用if判断返回值返回值大于0时即父进程执行入口返回值等于0时即子进程执行入口fork系统调用之后,父子进程将交替执行,执行顺序不定fork之前:父进程自己做的事情对子进程有影响fork之后:父进程在自己的if里做的事情对子进程没有影响-6-(五)父子进程对文件的操作u子进程继承父进程中打开的文件u父子进程各自独立打开相同文件测试结论:接续写3.在父子进程中各自write向fd中写内容1.父进程先open打开一个文件得到fd2.fork创建子进程2.子进程打开test.txt然后写入1.父进程open打开test.txt然后写入测试结论:独立写若op
3、en时父子进程使用O_APPEND标志测试结果:接续写原因:父子进程之间的fd对应的文件指针彼此关联原因:这两个进程的PCB独立,文件表也独立-7-(六)小结ufork调用特点:被调用一次,返回两次。在子进程中,fork函数返回0,在父进程中,fork返回新创建子进程的进程ID。fork系统调用之后,父子进程将交替执行,执行顺序不定。u任何一个进程都有父进程。父进程先退出,子进程还没退出,子进程就成了孤儿进程;子进程先退出,父进程还没退出,则子进程就成为僵尸进程。u系统调用函数fork()-创建一个子进程。fork函数的内部原理:进程的分裂生长模式,即一个进程创建一个子进程,该子进程还可以创建自己的子进程。u父进程先open打开一个文件得到fd,再fork创建子进程,之后在父子进程中各自write向fd中写内容,测试结论是接续写。父进程open打开test.txt写入,子进程打开test.txt写入,测试结论是分别写;若open时父子进程使用O_APPEND标志;测试结果接续写。-8-
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 26-4.4Linux程序设计 进程创建 26 4.4 Linux 程序设计 进程 创建
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内