11-12-2操作系统原理实验报告(中澳).doc
上传人:qw****27 上传时间:2024-09-12 格式:DOC 页数:17 大小:59KB 金币:15 举报 版权申诉
预览加载中,请您耐心等待几秒...

11-12-2操作系统原理实验报告(中澳).doc

11-12-2操作系统原理实验报告(中澳).doc

预览

免费试读已结束,剩余 7 页请下载文档后查看

15 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

操作系统原理实验报告2011-2012学年第2学期第页操作系统原理实验报告学院:信息与电子工程学院专业:计算机科学与技术(中澳)班级:计算机102班(中澳)学号:110024036姓名:傅梦洁浙江科技学院2011-2012学年第2学期实验1进程管理一、实验目的1.弄清进程和程序的区别,加深对进程概念的理解。2.了解并发进程的执行过程,进一步认识并发执行的实质。3.掌握解决进程互斥使用资源的方法。二、实验内容1.管道通信使用系统调用pipe()建立一个管道,然后使用系统调用fork()创建2个子进程p1和p2。这2个子进程分别向管道中写入字符串:“Childprocessp1issendingmessage!”和“Childprocessp2issendingmessage!”,而父进程则从管道中读出来自两个子进程的信息,并显示在屏幕上。2.软中断通信使用系统调用fork()创建2个子进程p1和p2,在父进程中使用系统调用signal()捕捉来自键盘上的软中断信号SIGINT(即按Ctrl-C),当捕捉到软中断信号SIGINT后,父进程使用系统调用kill()分别向2个子进程发出软中断信号SIGUSR1和SIGUSR2,子进程捕捉到信号后分别输出信息“Childprocessp1iskilledbyparent!”和“Childprocessp2iskilledbyparent!”后终止。而父进程等待2个子进程终止后,输出信息“Parentprocessiskilled!”后终止。三、实验要求1.根据实验内容编写C程序。2.上机调试程序。3.记录并分析程序运行结果。四、程序说明和程序流程图五、程序代码六、程序运行结果及分析实验2进程通信一、实验目的1.了解进程间通信IPC的三种方式:消息队列、共享内存和信号量。2.掌握使用消息队列进行进程间通信的有关系统调用和编程方法。3.掌握使用共享内存进行进程间通信的有关系统调用和编程方法。二、实验内容1.消息队列使用系统调用msgget()、msgsnd()、msgrcv()和msgctl(),用消息队列机制实现客户进程和服务器进程间的通信。客户进程首先建立一个描述符为msgqid的消息队列,接着向服务器进程发送一个消息正文为自己的进程标识pid且类型为1的消息,然后接收来自服务器进程的消息,并在屏幕上显示:“Clientreceivesamessagefromxxxx!”,其中“xxxx”为服务器进程的进程标识。服务器进程首先捕捉软中断信号(除不能捕捉的SIGKILL),若捕捉到时则调用函数cleanup()删除消息队列,终止服务器进程。否则重复下列操作:接收所有类型为1的消息,并在屏幕上显示:“Serverreceivesamessagefromxxxx!”,其中“xxxx”为客户进程的进程标识;然后服务器进程将客户进程的进程标识作为返回消息的类型,而将自己的进程标识作为消息正文发送给客户进程。2.共享内存使用系统调用shmget()、shmat()和shmctl(),用共享内存机制实现进程间的通信。其中一个进程向共享内存中写入数据,另一个进程从共享内存中读出数据并显示在屏幕上。三、实验要求1.根据实验内容编写C程序。2.上机调试程序。3.记录并分析程序运行结果。四、程序说明和程序流程图五、程序代码六、程序运行结果及分析实验3存储管理一、实验目的1.了解虚拟存储管理技术的原理与特点。2.掌握请求页式存储管理的页面置换算法。二、实验内容1.通过随机数产生一个指令序列,共320条指令。指令的地址按下述原则生成:(1)50%的指令是顺序执行的;(2)25%的指令均匀分布在前地址部分;(3)25%的指令均匀分布在后地址部分。实现方法:(1)在[0,319]的指令地址中随机选取一起点s;(2)执行指令s;(3)顺序执行一条指令,即执行地址为s+1的指令;(4)在前地址[0,s]中随机选取一条地址为m的指令执行;(5)顺序执行一条指令,即执行地址为m+1的指令;(6)在后地址[m+2,319]中随机选取一条指令s;(7)重复(2)—(6),直到执行320次指令。2.将指令序列变换为页地址流,设:(1)页面大小为1K;(2)用户内存容量为4—32页面(pageframe);(3)用户虚存容量为32K(即32页)。若10条指令为1页,则320条指令在虚存中的存放方式为:(虚存地址[0,9])——第0条~第9条指令;(虚存地址[10,19])——第10条~第19条指令;••••••(虚存地址[310,319])——第