操作系统课内报告 内核编译、系统调用和进程同步通信 - 图文

2025/5/5 1:34:07

操作系统课内实验报告

3.文件的基本操作不太懂,后来通过相关资料找到了源代码。 2.6.2实验收获

1.网络资源真的很丰富;

2.进一步加深了对Linux操作系统的认识;

3.对Linux下C语言有了新的认识,对其数据结构有了一定的理解。 2.6.3意见与建议

1.内容比较多,分析起来有点困难,希望增长学时; 2.加强沟通与合作; 3.希望得到更多的相关资源。

3.编程设计实现进程同步和通信

3.1实验目的

1.加深了解进程的概念,进程与程序的区别;

2.进一步理解并发执行的概念,进程互斥的概念,进程通信的基本概念; 3.加强对Linux系统编程的熟悉。

3.2实验内容

1.编制实现软中断通信的程序

使用系统调用fork()创建两个子进程,再用系统调用signal()让父进程捕捉键盘上发出的中断信号(即按delete键),当父进程接收到这两个软中断的某一个后,父进程用系统调用kill()向两个子进程分别发出整数值为16和17软中断信号,子进程获得对应软中断信号,然后分别输出下列信息后终止:

Child process 1 is killed by parent !! Child process 2 is killed by parent !!

父进程调用wait()函数等待两个子进程终止后,输入以下信息,结束进程执行:

Parent process is killed!!

多运行几次编写的程序,简略分析出现不同结果的原因

25

操作系统课内实验报告

2.编制实现进程的管道通信的程序

使用系统调用pipe()建立一条管道线,两个子进程分别向管道写一句话:

Child process 1 is sending a message! Child process 2 is sending a message!

而父进程则从管道中读出来自于两个子进程的信息,显示在屏幕上。

要求:父进程先接收子进程P1发来的消息,然后再接收子进程P2发来的消息

3.3实验思想(或流程图)

1.进程软中断通信的算法流程图

图3.1进程软中断通信的算法流程图

26

操作系统课内实验报告

2.基于进程的管道通信的算法流程图

图3.2 .基于进程的管道通信的算法流程图 3.4实验步骤

1.设计流程图 2.编写代码 3.测试程序

3.5程序运行初值及运行结果分析

实验结果如下: 1. 软中断通信程序

27

操作系统课内实验报告

图3.3软中断通信程序结果

多次实验:

28


操作系统课内报告 内核编译、系统调用和进程同步通信 - 图文.doc 将本文的Word文档下载到电脑
搜索更多关于: 操作系统课内报告 内核编译、系统调用和进程同步通信 - 图文 的文档
相关推荐
相关阅读
× 快捷下载通道(下载后可以自由复制和排版)

开通会员免费下载

开通会员后百万份文档资料免费自由复制和下载,是您最优的选择,赶快来试试吧!

单篇下载:10元 点击下载

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219