77范文网 - 专业文章范例文档资料分享平台

操作系统原理实验报告

来源:网络收集 时间:2018-12-04 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

[键入文字]

操作系统原理

实验报告

学 院: 专 业: 班 级: 学 号: 姓 名:

2011-2012学年 第2学期

目录

实验1 进程管理 ......................................... 2 实验2 进程通信 ......................................... 9 实验3 存储管理 ........................................ 15 实验4 文件系统 ........................................ 24

1

实验1 进程管理

一、实验目的

1. 弄清进程和程序的区别,加深对进程概念的理解。

2. 了解并发进程的执行过程,进一步认识并发执行的实质。 3. 掌握解决进程互斥使用资源的方法。

二、实验内容

1. 管道通信

使用系统调用pipe( )建立一个管道,然后使用系统调用fork( )创建2个子进程p1和p2。这2个子进程分别向管道中写入字符串:“Child process p1 is sending message!”和“Child process p2 is sending message!”,而父进程则从管道中读出来自两个子进程的信息,并显示在屏幕上。

2. 软中断通信

使用系统调用fork( )创建2个子进程p1和p2,在父进程中使用系统调用signal( )捕捉来自键盘上的软中断信号SIGINT(即按Ctrl-C),当捕捉到软中断信号SIGINT后,父进程使用系统调用kill( )分别向2个子进程发出软中断信号SIGUSR1和SIGUSR2,子进程捕捉到信号后分别输出信息“Child process p1 is killed by parent!”和“Child process p2 is killed by parent!”后终止。而父进程等待2个子进程终止后,输出信息“Parent process is killed!”后终止。

三、实验要求

1. 根据实验内容编写C程序。 2. 上机调试程序。

3. 记录并分析程序运行结果。

2

四、程序说明和程序流程图

实验1管道通信——所涉及的流程图:

实验2软中断信号——所涉及的流程图:

3

五、程序代码

/*expe1_1.c*/ #include void main( ) {

int i, r, p1, p2, fd[2]; char buf[50], s[50];

pipe(fd); /* 父进程建立管道 */

while ((p1=fork())==-1); /* 创建子进程P1,失败时循环 */ if (p1==0) /* 由子进程P1返回,执行子进程P1 */ {

lockf(fd[1], 1, 0); /* 加锁锁定写入端 */

sprintf(buf, \ printf(\

write(fd[1], buf, 50); /* 把buf中的50个字符写入管道 */ sleep(5); /* 睡眠5秒,让父进程读 */

4

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库操作系统原理实验报告在线全文阅读。

操作系统原理实验报告.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/337240.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: