没有合适的资源?快使用搜索试试~ 我知道了~
进程的创建 很好的东西,还有代码`` (1)加深对操作系统系统调用功能和进程概念的理解,明确进程和程序的区别。 (2)掌握Linux中进程的创建方法,进一步理解进程的并发执行。
资源推荐
资源详情
资源评论
进程的创建
软件 061 翟松伟
学号:200680011125
一、实验目的
(1)加深对操作系统系统调用功能和进程概念的理解,明确进程和程序的
区别。
(2)掌握Linux中进程的创建方法,进一步理解进程的并发执行。
二、实验内容
1、编写一段程序,使用系统调用 fork( )创建两个子进程。当此程序运行时,
在系统中有一个父进程和两个子进程活动。让每一个进程在屏幕上显示一个字
符:父进程显示'a',子进程分别显示字符'b'和字符'c'。试观察记录屏幕上的显示
结果,并分析原因。
2、修改上述程序,每一个进程循环显示一句话。子进程显示'daughter
…'及'son ……',父进程显示 'parent ……',观察结果,分析原因。
如果在程序中使用调用lockf()来给每一个子进程加锁,可以实现进程之间的
互斥,观察并分析出现的现象。
三、实验步骤
(1) 需求分析
编写一段程序,使用系统调用 fork( )创建两个子进程。当此程序运行时,在
系统中有一个父进程和两个子进程活动。让每一个进程在屏幕上显示一个字符:
父进程显示'a',子进程分别显示字符'b'和字符'c'。
修改上述程序,每一个进程循环显示一句话。子进程显示'daughter
…'及'son ……',父进程显示 'parent ……',观察结果,分析原因。
在程序中使用调用 lockf()来给每一个子进程加锁。
(2) 概要设计
本程序用到的抽象的数据有:int p1,p2;int i;
主程序的流程图如下图(图一):
(3)详细设计
对于概要设计中的使用系统调用 fork()创建两个子进程,创建的过程
函数如下:
#include<iostream>
Using namespace std;
Int main()
{
Int p1,p2;
P1=fork();
If(p1==0)cout<<”b”<<endl;
Else if(p1>0)
{
P2=fork();
1
资源评论
- WYLINDA2012-10-21信息非常全面。讲的很好。
- 憨仔蛋2021-11-22错误文件,不要下载,浪费资源
- 不屈的蚂蚁2011-11-22感觉很好,将进程的创建,调度和撤销等功能都实现了
water0070
- 粉丝: 2
- 资源: 17
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功