操作系统实验报告样本
1 操作系统实验报告内容
(1) 基本信息:完成人姓名、学号、报告日期 (2) 实验内容 (3) 实验目的 (4) 实验题目 (5) 设计思路和流程图 (6) 主要数据结构及其说明 (7) 源程序并附上注释
(8) 程序运行时的初值和运行结果
(9) 实验体会:实验中遇到的问题及解决过程、实验中产生的错误及原因分析、实验的体会 及收获、对做好今
后实验提出建设性建议等。
实验报告可以书面或电子文档形式提交。
2操作系统实验报告样本
一、实验内容 ( 1)进程的创建
编写一段源程序,使系统调用 fork() 创建两个子进程,当此程序运行时,在系统中有一 个父进程和两个子进程活动。 让每一个进程在屏幕上显示一个字符: 父进程显示字符“ b”; 子进程分别显示字符“ c”和字符“ a”。试观察纪录屏幕上的显示结果,并分析原因。
( 2)进程的控制 修改已编写的程序,将每个进程输出一个字符改为每个进程输出一句话,在观察程序执 行时屏幕出现的现象,并分析原因。
如果在程序中使用调用 lockf() 来给每一个子进程加锁, 可以实现进程之间的互斥, 观察 并分析出现的现象。
(3)①编写一段程序,使其现实进程的软中断通信。
要求:使用系统调用 fork() 创建两个子进程,再用系统调用 signal() 让父进程捕捉键盘 上来的中断信号(即按 DEL键);当捕捉到中断信号后,父进程用系统调用 进程发出信号,子进程捕捉到信号后分别输出下列信息后终止:
Kill()向两个子
Child Processll is Killed by Parent! Child Processl2 is Killed by Parent!
父进程等待两个子进程终止后,输出如下的信息后终止
Parent Process is Killed!
②在上面的程序中增加语句 观察执行结果,并分析原因。
( 4)进程的管道通信
编制一段程序,实现进程的管理通信。
使用系统调用pipe()建立一条管道线;两个子进程
sig nal (SIGNAL, SIG-IGN) 和 sig nal (SIGQUIT, SIG-IGN),
P1和P2分别向管道中写一句话:
Child 1 is sending a message! Child 2 is sending a message!
而父进程则从管道中读出来自于两个子进程的信息,显示在屏幕上。 要求父进程先接收子进程
P1发来的消息,然后再接收子进程 P2发来的消息。
二、实验目的 实验 2
(1)加深对进程概念的理解,明确进程和程序的区别 (2)进一步认识并发执行的实质
(3)分析进程竞争资源现象,学习解决进程互斥的方法。 ( 4)了解 Linux 系统中进程通信的基本原理。 实验 3
Linux 系统的进程通信机构 (IPC) 允许在任意进程间大批量地交换数据。本实验的目 的是了解和熟
悉 Linux 支持的消息通讯机制及信息量机制。
三、实验题目 本实验有六个题目。 第一题:进程的创建
系统调用fork ()创建两个子进程,当程序运行时,系统中有一个父进程一个子进程和 一个孙子进程在活动,使父进程显示‘ 程的执行与并发。
b'子进程显示‘ c',孙子进程显示‘ a',来观察进
开始
创建子进程
[否
创建子进程 I否I
结束
第二题:进程的控制
将上面程序的输出由单个字符改为一句话,使输出 在此基础上再设置另一个程序:在该程序中使用系统调用
pare nt 块,son 块禾口 gran dchild 块,
lockf ()来给每个程序加锁,
lockf(1,1,0)锁定标准输出设备,lockf(1,0,0)解锁标准输出设备,在 lockf(1,1,0)与lockf(1,0,0) 中间的for循
环输出不会被中断,实现进程之间的互斥。观察运行结果,从运行结果中可以 看出加锁的程序中每个块的输出过程不会被打断, 打断了。
未加锁:
而没有加锁的程序中各块输出被其他块给
son53 son54 son55 son56 son57 son53
son69 son61 son62
pa rents parent 1 pa rent2 parent? parent4
pa rent5 parents pa rent? parents
—.——一 一丄
n
加锁:
parent87 pa rent88 parent89 parent99 par&nt91 parent92 pa rent93 parent94 parent95 parent96
pa rent97 parentSB pa rent99 son63 son64 son65 son&6 son67 son&8 5on69 son70 son71 son72
第三题:软中断通信
开始
系统调用fork ()创建两个子进程,在调用signal ()让父进程捕捉键盘上来的中断
操作系统报告资料



