第一课关于 fork 和 exec 函数的学习
来源:互联网 发布:数据分析入门教材 编辑:程序博客网 时间:2024/06/05 11:56
1. 函数原型:pid_t fork(void)
功能:完整地拷贝父进程的整个地址空间。
课本例子:
该程序 使用fork 函数新建了一个子进程,其中父进程返回子进程的PID,而子进程返回值为0;
注意点:
1.程序执行的时候,执行 fork 之后 父进程的 result 返回值应该为 子进程的PID,子进程返回0,可以用返回值判断当前是哪个进程。
2.子进程是复制了父进程的所有内容,除了PID,因此在父进程中的变量改变了,子进程中并不会有改变。例子如下:
结果可想而知输出结果:
The value is 10
The value is 10
3. 和 vfork 不同的是,vfork 函数通过允许父子进程可访问相同物理内存,当子进程需要改变内存中数据时才拷贝父进程 (写操作时拷贝)
2. 函数原型:int execl(const char, const char *arg,....)
int execv(const char, char * const arg[],....)
...........
功能:进程执行另个程序调用的函数
例子:
注意点:
1. exec 函数族 不能直接执行管道命令,那么如何使用exec 执行管道命令呢?
课后作业:
1.创建3个进程,其中一个为父进程,其余两个是该父进程创建的子进程,其中一个进程运行一条Linux指令(该指令 要带管道命
令 如 : ls -l | more),该条指令自定;另一个子进程在打印一条提示信息并暂停3秒后退出。要求创建新进程后要进行出错
处理。
解答:请看 第一课习题之我的解决方案。
- 第一课关于 fork 和 exec 函数的学习
- fork和exec函数
- fork和exec()函数族
- linux 下fork函数和exec 函数的区别
- fork和exec的区别
- 【操作系统】fork()、exec()函数学习笔记
- Linux Fork和exec系列函数
- system函数和fork-exec机制
- vfork,fork,exec函数的区别
- vfork,fork,exec函数的区别
- vfork,fork,exec函数的区别
- fork,exec族函数的使用
- vfork,fork,exec函数的区别
- vfork,fork,exec函数的区别
- *exec,source和fork的区别*
- *exec,source和fork的区别*
- *exec,source和fork的区别*
- fork()和vfork()的区别,signal函数用法,exec()系列函数的用法小结
- 使用OpenGL扩展(转载)
- ping与nbtstat命令
- JBoss篇:安装与配置
- 网页跳转的三种方法
- 北大青鸟老师给初学者的一些建议
- 第一课关于 fork 和 exec 函数的学习
- ssh
- The momery
- ASP 常用正则表表达示
- Document.selection相应练习
- 使用命令行 Subversion 访问项目源文件
- LR监控ORACLE
- leap学习笔记
- AWT多媒体编程总结