10112操作系统原理实验报告.docx

上传人:b****7 文档编号:11389322 上传时间:2023-02-28 格式:DOCX 页数:7 大小:18.49KB
下载 相关 举报
10112操作系统原理实验报告.docx_第1页
第1页 / 共7页
10112操作系统原理实验报告.docx_第2页
第2页 / 共7页
10112操作系统原理实验报告.docx_第3页
第3页 / 共7页
10112操作系统原理实验报告.docx_第4页
第4页 / 共7页
10112操作系统原理实验报告.docx_第5页
第5页 / 共7页
点击查看更多>>
下载资源
资源描述

10112操作系统原理实验报告.docx

《10112操作系统原理实验报告.docx》由会员分享,可在线阅读,更多相关《10112操作系统原理实验报告.docx(7页珍藏版)》请在冰豆网上搜索。

10112操作系统原理实验报告.docx

10112操作系统原理实验报告

 

操作系统原理

实验报告

 

班级____________

学号____________

姓名____________

 

浙江科技学院信息与电子工程学院

2010-2011学年第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页(虚存地址[0,9])——第0条~第9条指令;

第1页(虚存地址[10,19])——第10条~第19条指令;

••••••

第31页(虚存地址[310,319])——第310条~第319条指令。

3.计算并输出下列算法在不同内存容量下的命中率(命中率=1-缺页率)。

(1)FIFO——FirstInFirstOutPageReplacementAlgorithm

(2)LRU——LeastRecentlyUsedPageReplacementAlgorithm

三、实验要求

1.根据实验内容编写C程序。

2.上机调试程序。

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

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

 

五、程序代码

 

六、程序运行结果及分析

 

操作系统原理实验报告

班级____________学号____________姓名____________

实验4文件系统

一、实验目的

1.了解文件系统的功能和内部实现。

2.熟悉有关文件系统的系统调用。

3.掌握简单文件系统的设计方法。

二、实验内容

1.使用有关文件系统的系统调用creat()、open()、close()、read()和write()将文件和合并为。

2.为Linux系统设计一个二级目录结构的文件系统,要求具有下列功能:

(1)向用户提供以下命令:

login——用户登录

dir——列文件目录

create——创建文件

delete——删除文件

open——打开文件

close——关闭文件

read——读文件

write——写文件

(2)文件可进行读写保护。

(3)列文件目录时须列出文件名、文件属性(保护信息)、文件长度和物理地址。

三、实验要求

1.根据实验内容编写C程序。

2.上机调试程序。

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

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

 

五、程序代码

 

六、程序运行结果及分析

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 求职职场 > 简历

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1