- 3
- 0
- 约4.38千字
- 约 11页
- 2019-04-30 发布于湖北
- 举报
实验项目二 进程管理
一、实验目的
加深对进程概念的理解,明确进程与程序的区别;
进一步认识并发进程的实质;
分析进程竞争资源的现象,学习解决进程互斥的方法;
了解Linux系统中进程通信的基本原理。
二、实验原理
1、进程是程序在一个数据集合上运行的过程,是系统进行资源分配和调度的一个独立单位。
2、并发进程的实质是多个进程实体同存于内存中,且在一段时间内同时运行。
3、进程竞争资源是因为系统中某些资源一次只允许一个进程使用,这样的资源称为临界资源,只要保证并发执行的诸进程互斥地进入各自的临界区,就能实现对临界资源的互斥访问!
4、进程通信的基本原理是指进程之间的信息交换。
三、实验设备
软件环境
Linux RedHat 7.1以上;TurboC 2.0。
硬件环境
局域网络;P2以上计算机;联机投影。
四、实验步骤
第一步、点击“开始”,再点击“运行”,输入telnet 202.116.57.246,进入命令提示符界面;
第二步、使用账户及密码“student1”登录;
第三步、(1)用“mkdir 09251103319”命令建立新目录;
(2)输入“cd 09251103319”命令进入该目录;
(3)使用“vi 09251103319.c”进入vi命令模式,在输入模式下输入程序,输入完毕后按“Esc”键按切换到命令模式,然后按“:wq”存盘退出vi编辑模式;
(4)退出vi工作模式后,输入“gcc –o 09251103319.exe 09251103319.c”对源程序进行编译和修改,然后再输入,“./09251103319”,运行编译后的目标程序,得到运行结果。
五、实验结果
任务1:进程的创建
(1)实验操作:编写一段程序,利用fork()创建两个子进程,其中父进程显示字符“a”,两个子进程分别显示字符“b”和“c”。先创建子进程p1,再创建子进程p2,最后父进程执行。
(2)实验结果截图:
1
(3)实验分析:
因为fork( )创建进程所需的时间多于输出一个字符需要的时间,故在父进程创建子进程2的同时,子进程1输出了字符“b“;而子进程2和父进程的输出次序是随机的,所以出现bac,acb等情况输出顺序都是有可能的。
任务2:进程的控制
(1)实验操作:创建子进程p1,输出字符串son,创建子进程p2,输出字符串daughter,父进程再执行,输出字符串children
(2)实验结果截图:
程序1:
程序2:
(3)实验分析:
程序1:由于函数printf( )输出的字符串之间不会被中断,故字符串内部的顺序不变;但由于进程并发执行时的调度顺序和处理机分配的问题,输出字符串的先后顺序随执行的不同而不同。
程序2:大致与程序1的执行结果相同,但不会出现同一组字符串间隔出现的情形。由于lockf( )函数锁定标准输出设备屏幕,故不可能出现一个字符串序列还没有显示完,就被其他进程抢占输出的情形;各组字符串的输出顺序可能不同,但必定连续输出50次
六、实验总结
1、我学会了如何用fork( )创建进程,以及利用系统调用lockf()给每个进程加锁实现进程间的互斥,对进程实施控制;
2、我也加深了对Linux系统中进程通信的基本原理的理解,即进程之间的信息交换;而并发进程的实质:多个进程实体同存于内存中,且在一段时间内同时运行。
3、通过这次实验,我加深对进程概念的理解,明确进程与程序的区别:进程是程序在一个数据集合上运行的过程,是系统进行资源分配和调度的一个独立单位,进程有如下特征:
(1)结构特征:可并发执行(2)动态性:是进程实体的一次执行过程(3)并发性:是多个进程实体同存于内存中,且能在一段时间内同时运行(4)独立性:进程实体是一个能独立运行、分配资源,接受调度的基本单位(5)异步性:进程实体按异步方式运行。
而程序则是一组有序指令的集合,并存放于某种介质上,其本身并不具运动的含义,是静态的;一般的程序是不能并发执行的,凡是未建立PCB的程序都不能作为一个独立的单位参与运行。
七、思考题
系统是怎样创建进程的?
答:一旦操作系统发现了要求创建新进程的事件后,便调用进程创建原语Creat()按下述步骤创建一个新进程。
申请空白PCB。为新进程申请获得唯一的数字标识符,并从PCB集合中索取一个空白PCB
为新进程分配资源。为新进程的程序和数据以及用户栈分配必要的内存空间。
初始化进程控制块。包括:初始化标识信息,处理机状态信息,处理机状态控制信息。
将新进程插入就绪队列,如果进程就绪队列能够接纳新进程,便将新进程插入到就绪队列中。
当首次调用新创建进程时,其入口在哪里?
答:fork系统调用创建的子进程继承了原进程的context,也就是说fork调用成功后,子进程与父进程并发执行相同
您可能关注的文档
- 构造地质学3阅读倾斜岩层地形地质图和编绘图切地质剖面图.ppt
- 儿童主题商场运营管理手册..doc
- 第五章 急性中毒的急救处理 安全防护与急救处理教学.ppt
- 湖南大学新生入学考试题库 (1).doc
- 鄂教版七年级语文上册全册备课.doc
- 非机动车法律法规试题(1、八不准2、安全法3、贺4、小 ….doc
- 后的西属美洲缘何未建成统一的联邦国家?*.pdf
- 恒天凯马股份有限公司 年第一次临时股东大会资料(900953).pdf
- 高中化学课时17太阳能、生物质能和氢能的利用学案苏教版必修2.doc
- 电气 毕业论文 三相鼠笼式异步电动机PLC控制系统设计.doc
- 2026年全球AI教育市场自适应学习系统与教育大数据分析.docx
- 2026年全球AI教育市场数据驱动决策分析.docx
- 2026年全球AI法律合规性检查技术路线图.docx
- 2026年全球AI法律咨询市场发展机遇与挑战.docx
- 2026年全球AI法律咨询市场合同审查自动化技术政府支持政策.docx
- 智慧农业无人机作物生长监测与病虫害防治信息化平台可行性分析报告.docx
- 2025年生态旅游景区停车场新能源汽车停车需求预测报告.docx
- 2026年全球AI法律咨询市场竞争格局分析.docx
- 2026年全球AI教育市场教师技术应用案例.docx
- 2026年全球AI教育市场教师角色转型与教育创新激励机制研究.docx
最近下载
- 深度解析(2026)《GBT 15555.8-1995固体废物 总铬的测定 硫酸亚铁铵滴定法》.pptx VIP
- 新大象版科学六年级下册全册精编知识点.pdf
- 钢轨探伤正常波形及图像识读王孟君课件.pptx VIP
- 2025年食品检验工食品理化检测考试试卷:理化指标分析.docx VIP
- 超声波常见异常波形识读王孟君课件.pptx VIP
- 跨境数据流动与个人信息保护.docx VIP
- 考试2018常规理化岗位考核.pdf VIP
- 轨头核伤波形及图像识读王孟君课件.pptx VIP
- 单元工程施工质量检验表与验收表(样表:4小型蓄水工程)(SLT 336—2025)水土保持工程质量验收与评价规范.docx VIP
- 单元工程施工质量检验表与验收表(样表:3梯田工程)(SLT 336—2025)水土保持工程质量验收与评价规范.docx VIP
原创力文档

文档评论(0)