《操作系统原理实验报告(共20页).doc》由会员分享,可在线阅读,更多相关《操作系统原理实验报告(共20页).doc(20页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上操作系统原理实验报告班 级_学 号_姓 名_浙江科技学院信息与电子工程学院2010-2011学年 第2学期操作系统原理实验报告班级_学号_姓名_实验1 进程管理一、实验目的1. 弄清进程和程序的区别,加深对进程概念的理解。2. 了解并发进程的执行过程,进一步认识并发执行的实质。3. 掌握解决进程互斥使用资源的方法。二、实验内容1. 管道通信使用系统调用pipe( )建立一个管道,然后使用系统调用fork( )创建2个子进程p1和p2。这2个子进程分别向管道中写入字符串:“Child process p1 is sending message!”和“Child proc
2、ess 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!”
3、后终止。而父进程等待2个子进程终止后,输出信息“Parent process is killed!”后终止。三、实验要求1. 根据实验内容编写C程序。2. 上机调试程序。3. 记录并分析程序运行结果。四、程序说明和程序流程图五、程序代码六、程序运行结果及分析操作系统原理实验报告班级_学号_姓名_实验2 进程通信一、实验目的1. 了解进程间通信IPC的三种方式:消息队列、共享内存和信号量。2. 掌握使用消息队列进行进程间通信的有关系统调用和编程方法。3. 掌握使用共享内存进行进程间通信的有关系统调用和编程方法。二、实验内容1. 消息队列使用系统调用msgget( )、msgsnd( )、msgr
4、cv( )和msgctl( ),用消息队列机制实现客户进程和服务器进程间的通信。客户进程首先建立一个描述符为msgqid的消息队列,接着向服务器进程发送一个消息正文为自己的进程标识pid且类型为1的消息,然后接收来自服务器进程的消息,并在屏幕上显示:“Client receives a message from xxxx!”,其中“xxxx”为服务器进程的进程标识。服务器进程首先捕捉软中断信号(除不能捕捉的SIGKILL),若捕捉到时则调用函数cleanup( )删除消息队列,终止服务器进程。否则重复下列操作:接收所有类型为1的消息,并在屏幕上显示:“Server receives a mes
5、sage from xxxx!”,其中“xxxx”为客户进程的进程标识;然后服务器进程将客户进程的进程标识作为返回消息的类型,而将自己的进程标识作为消息正文发送给客户进程。2. 共享内存使用系统调用shmget( )、shmat( )和shmctl( ),用共享内存机制实现进程间的通信。其中一个进程向共享内存中写入数据,另一个进程从共享内存中读出数据并显示在屏幕上。三、实验要求1. 根据实验内容编写C程序。2. 上机调试程序。3. 记录并分析程序运行结果。四、程序说明和程序流程图五、程序代码六、程序运行结果及分析操作系统原理实验报告班级_学号_姓名_实验3 存储管理一、实验目的1. 了解虚拟存
6、储管理技术的原理与特点。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),直到执行3
7、20次指令。2. 将指令序列变换为页地址流,设:(1) 页面大小为1K;(2) 用户内存容量为432页面(page frame);(3) 用户虚存容量为32K(即32页)。若10条指令为1页,则320条指令在虚存中的存放方式为:第0页(虚存地址0,9)第0条第9条指令;第1页(虚存地址10,19)第10条第19条指令; 第31页(虚存地址310,319)第310条第319条指令。3. 计算并输出下列算法在不同内存容量下的命中率(命中率=1-缺页率)。(1) FIFOFirst In First Out Page Replacement Algorithm(2) LRULeast Recentl
8、y Used Page Replacement Algorithm三、实验要求1. 根据实验内容编写C程序。2. 上机调试程序。3. 记录并分析程序运行结果。四、程序说明和程序流程图五、程序代码六、程序运行结果及分析操作系统原理实验报告班级_学号_姓名_实验4 文件系统一、实验目的1. 了解文件系统的功能和内部实现。2. 熟悉有关文件系统的系统调用。3. 掌握简单文件系统的设计方法。二、实验内容1. 使用有关文件系统的系统调用creat( )、open( )、close( )、read( )和write( )将文件file1.c和file2.c合并为file3.c。2. 为Linux系统设计一个二级目录结构的文件系统,要求具有下列功能:(1) 向用户提供以下命令:login用户登录dir列文件目录create创建文件delete删除文件open打开文件close关闭文件read读文件write写文件(2) 文件可进行读写保护。(3) 列文件目录时须列出文件名、文件属性(保护信息)、文件长度和物理地址。三、实验要求1. 根据实验内容编写C程序。2. 上机调试程序。3. 记录并分析程序运行结果。四、程序说明和程序流程图五、程序代码六、程序运行结果及分析专心-专注-专业