操作系统 (第三次、第四次实验)

操作系统 (第三次、第四次实验)
操作系统 (第三次、第四次实验)

操作系统课程实验报告

姓名XX 学号1001010127 系计算机任课教师XX 指导教师XX 评阅教师贺辉实验地点综合楼B102

实验时间2012/10/24

实验课表现出勤和个人表现Q1(15+15(组长

评分)=30分)

得分:实验

总分

(Q1+Q2+Q3) 实验完成情况Q2(60分) 得分:

体会实验过程中遇到的问题解决办

法与实验体会Q3(10分)

得分:

实验编号与实验名称:

实验目的:

1 管理Linux系统进程

1) 回顾系统进程的概念,加深对Linux / UNIX进程管理的理解。

2) 回顾ps命令和选项。

3) 列出当前shell中的进程。

4) 列出运行在系统中的所有进程。

2 进程互斥实验

1、进一步认识并发执行的实质

2、通过分析实验结果,分析进程竞争资源的现象,学习解决进程互斥的方法

3 进程的控制实验

1、掌握进程另外的创建方法:需认真分析实验结果,体会本次

实验进程创建方法与fork的不同

2、通过分析实验结果,熟悉进程的睡眠、同步、撤消等进程控制方法

实验内容

1、用fork( )创建一个进程,再调用exec( )用新的程序替换该子进程的内容

2、利用wait( )来控制进程执行顺序

实验内容及要求(详见实验讲义与实验指导书):

实验用到的软件(:)

实验内容及关键步骤(代码)Q2(60分)

步骤1:登录进入Linux。

步骤2:访问命令行。

单击“系统工具”-“终端”命令,打开“终端”窗口。

步骤3:回顾系统进程概念。

每个运行的程序都会创建一个进程,进程分配到一个唯一的进程标识符(PID) 。PID被系统用于标识和跟踪进程,直到进程结束。

1) Linux系统中,几乎每一个启动的进程,都会由内核分配一个唯一的______PID_________,用于跟踪从进程启动到进程结束。

2) 当启动新进程的时候,内核也给它们分配系统资源,如

__CPU______和____RAM____。

3) 永远不向父进程返回输出的进程叫做___僵进程___________。

4) 由父进程派生出来的进程叫做___________子_______进程。

5) ________父________进程是一个派生另一个进程的进程。

6) 运行用于提供服务的Linux系统进程是__ sched (调度) 和init (初始化)_____________。

7) 如果父进程在子进程之前结束,它创建了一个______孤儿

________进程。

步骤5:列出系统中运行的所有进程。

输入ps -ef 命令,显示运行在系统中的各个进程的完全信息。执行该命令,并与ps –f命令的输出结果对照,一致吗?有何不同?

不一致:

Ps –ef:

Ps –f:

Ps ef表示的是所有进程的完整列表,而ps –f表示的是一个进程的完整列表。在范围上不一样。

注意分析当前终端窗口中的输出结果:

a. 显示了多少个进程?

___________________144______________________________________

__________

b. PID是什么?

进程的进程标识号。PID可以用来杀死进程

______________________________________________________________

c. 启动进程的命令(CMD) 是什么?

命令名守护进程执行的程序的名字_____________________________________________

d. 请观察,什么命令的PID号是1?

__________sbin/init____________________________________________

______

e. 再次运行ps -ef | wc -l命令,计算进程的数目并把输出结果输入到wc命令中:

____________144_____________________________________________

___________

执行man ps命令,可以打开Linux用户命令手册,了解ps命令的用法,输入wq命令可退出用户手册的阅读。man命令可以执行吗?结果如何?

可执行

______________________________________________________________

试调试下二段代码。并写明结果(考虑fork与sleep是什么函数)1.int main()

{

int p1,i;

while ((p1=fork())==-1);

if (p1>0)

for (i=0;i<5;i++)

{

printf("I am parent.\n");

sleep(1);

}

else

for (i=0;i<5;i++)

{

printf("I am child.\n");

sleep(1);

}

return 0;

}

结果:

2、

int main()

{

int p1,i;

while ((p1=fork())==-1);

if (p1>0)

{

wait(0);

for (i=0;i<5;i++)

{

printf("I am parent.\n"); sleep(1);

}

}

else

{

for (i=0;i<5;i++)

{

printf("I am child.\n");

sleep(1);

}

exit(0);

}

return 0;

}

结果:

父子进程到底谁先得到调度执行是由操作系统在运行时决定的,而且系统中也不止这两个进程,所以即使你使用了sleep让它睡眠,谁先运行谁后运行也是不确定的。

而且每次运行的结果也不一样

Fork()函数:

一个现有进程可以调用fork函数创建一个新进程。由fork创建的新进程被称为子进程(child process)。fork函数被调用一次但返回两次

Sleep()函数:

执行挂起一段时间,就是在执行的过程中,让执行停顿一下!

2 进程互斥实验

1. 修改以下代码,用lockf( )来给每一个进程加锁,以实现进程之

间的互斥

//======================================= #include

main( )

{

int p1,p2;

while((p1=fork( ))= = -1); /*创建子进程p1*/ if (p1= =0) putchar('b');

else

{

while((p2=fork( ))= = -1); /*创建子进程p2*/

if(p2= =0) putchar('c');

else putchar('a');

}

}

答案:

循环十次:

答案:

很容易看出答案不一样了,bc的顺序倒过来了!没有加锁的答案:

2、

#include

main( )

{

int p1,p2,i;

while((p1=fork( ))= = -1); /*创建子进程p1*/

if (p1= =0)

for(i=0;i<10;i++)

printf("daughter %d\n",i);

else

{

while((p2=fork( ))= = -1); /*创建子进程p2*/

if(p2= =0)

for(i=0;i<10;i++)

printf("son %d\n",i);

else

for(i=0;i<10;i++)

printf("parent %d\n",i);

}

}

答案:这个程序和上面的程序是一样原理的,没有什么可比性,我就不执行这个程序了!循环输出也在上面的程序执行了!

(四)分析以下程序的输出结果【写进实验报告】:#include

#include

main()

{

int p1,p2,i;

int *fp;

fp = fopen("to_be_locked.txt"

,"w+");

if(fp==NULL)

{

printf("Fail to create file");

exit(-1);

}

while((p1=fork( ))== -1); /*创建子进程p1*/

if (p1==0)

{

lockf(*fp,1,0); /*加锁*/

for(i=0;i<10;i++)

fprintf(fp,"daughter %d\n",i);

lockf(*fp,0,0); /*解锁*/

}

else

{

while((p2=fork( ))==-1); /*创建子进程p2*/ if (p2==0)

{

lockf(*fp,1,0); /*加锁*/

for(i=0;i<10;i++)

fprintf(fp,"son %d\n",i);

lockf(*fp,0,0); /*解锁*/

}

else

{

wait(NULL);

lockf(*fp,1,0); /*加锁*/

for(i=0;i<10;i++)

fprintf(fp,"parent %d\n",i);

lockf(*fp,0,0); /*解锁*/

}

}

fclose(fp);

}

答案:

分析:

程序开始定义了文件读写指针用于打开指定的文件,当文件不存在时则自动创建。然后有创建了一个进程p1,p1获得处理机执行,给文件读写指针加锁,这样,即使p1失去处理机,其他获得处理机的进程也无法访问文件指针指向的文件,当p1再次获得处理机后继续执行直至进程p1结束并解锁;p1结束后父进程获得处理机执行又创建了进程p2,p2获得处理机执行,也给文件指针加锁,同理直至p2运行完解锁;p2结束后父进程获得处理机,父进程也给文件指针加锁,直至父进程执行完毕解锁,程序结束。

3 进程的控制实验

实验内容

1、用fork( )创建一个进程,再调用exec( )用新的程序替换该子进程的内容

2、利用wait( )来控制进程执行顺序

(1)如何更新子进程内容?

答案:系统调用exec( )将一个可执行的二进制文件覆盖在新进程的用户级上下文的存储空间上,改变调用进程的执行代码,从而形成新进程。用fork( )建立子进程,然后在子进程中使用exec( ),这样就实现了父进程与一个与它完全不同子进程的并发执行。

(2)可执行文件加载时进行了哪些处理?

答案:可执行文件加载时首先是创建一个新进程的fork系统调用,然后用于实现进程自我终止的exit系统调用;改变进程原有代码的exec系统调用;用于将调用进程挂起并等待子进程终止的wait系统调用;获得进程标识符的getpid 系统调用等处理过程。

(3)什么是进程同步?wait( )是如何实现进程同步的?

答案:把异步环境下的一组并发进程因直接制约而互相发送消息而进行互相合作、互相等待,使得各进程按一定的速度执行的过程称为进程间的同步。(百科的)

进程同步:首先程序在调用fork()机那里了一个子进程后,马上调用wait(),使父进程在子进程调用之前一直处于睡眠状态,这样就使子进程先运行,子进程运行exec()装入命令后,然后调用wait(0),使子进程和父进程并发执行,实现进程同步。

实验过程中遇到的问题解决办法与实验体会Q3(10分)得分:

在这次的实验中我遇到不少的问题:

1.在第二个实验中的最后一个程序中要用到exit()函数,而按照老师的代码中,没有这个头文件,所以运行起来的时候有错误,后来通过自己查找一下资料解决了!

2.通过这次实验我会有lockf(0,0,0)加锁这个函数了,还有解锁,对进程互斥有了一个大概的了解。

3.在做那个to_be_locked.txt这个程序中遇到不少问题,程序中一直提示有警告,实验我就不断地重覆看那个代码,的确发现有不妥,文件应该是用FILE的,但是代码中用了int,但是我改了FILE还是出现问题,最后安装老师代码运行了,虽然有警告,但是程序还是可以正常运行,结果也输出在to_be_locked.tx中!在这个过程中还是挺有意思的,至少我也学到了不是东西和提高了我对实验的兴趣!

4.在最后一个实验中,主要是看exec( )、wait( )和exit()的介绍,从中了解到了另

外一种创建子进程的函数和了解了wait()的一些信息和exit()的执行过程!

5.最后的那三个思考题我是百科得来的答案,但是我很认真地去理解其中的意思了,也明白了这个过程了!

评阅教师特殊评语:

评阅教师:

日期:

第10周-《网络操作系统》复习题

训练课题:_《网络操作系统》复习题第__10_周 一、填空题 1、Windows Server2003有两种授权模式:(每服务器)和(每客户)。 2、在Active Directory中有两种类型的组:(本地用户账户)和(域用户账户)。 3、在安装Windows NT Server后, 系统会自动创建两个全局帐号, 一个是(administrator) , 另一个是(Guest)。 4、Windows 2000动态磁盘可支持多种特殊的动态卷,包括(简单卷)、(跨区卷)(RAID-5卷)、带区卷、镜像卷等。 5、NTFS权限有6个基本的权限:完全控制、(修改)、读取及运行、列出文件夹目录、(读取)、(写入)。 6、使用C类IP地址的网络可支持的主机数为(254 )台。 7、IP地址共占用(32)个二进制位,一般是以4个(十进制)进制数来表示。 8、在OSI参考模型中,TCP是(传输)层上的协议,IP是(网络)层上的协议。 9、DNS域名解析的方法主要有(递归查询法) , (迭代查询法) 10、DNS是一个分布式数据库系统,它提供将域名转换成对应的( IP 地址)信息。 11、FTP服务器默认使用TCP协议的(21)号端口。

12、Web服务使用的默认TCP端口号为(80) 13、通过对打印机设置优先级,可以让重要的文档优先打印。 14、Windows网络的管理方式有:工作组和域。 15、在一个TCP/IP网络中,实现为计算机自动分配IP地址的服务,叫做 DHCP服务。 16、为了向用户提供完全合格域名(FQDN)的解析功能,需要在网络中安装并配置DNS 服务器。 17、针对不同的用户和环境,Windows Server2003产品的版本有:标准版、 Web版、标准版、数据中心版。 18、在Windows Server 2003中安装活动目录的命令是____dcpromo_____,活动目录存放在____活动目录数据库__________中。 19、Windows Server 2003服务器的3种角色是__域控制器____、_成员服务器__、_独立服务器__。 20、一个基本磁盘最多可分为_4__个区,即__4__个主分区或___3___个主分区和一个扩展分区。 21、DNS顶级域名中表示商业组织的是___com___。 二、单项选择题 1、在Windows Server 2003支持的文件系统格式中,能够支持

《操作系统原理》信管专业实验指导书资料

《操作系统原理》实验指导书 班级:_______________ 学号:_______________ 姓名:_______________ 山东建筑大学管理工程学院 信息管理与信息系统教研室

目录 引言 (1) 实验题目一 (2) 实验题目二 (4) 实验题目三 (6) 实验题目四 (8) 实验题目五 (10) 实验题目六 (12)

引言 操作系统是信息管理与信息系统专业一门重要的专业理论课程,了解和掌握操作系统的基本概念、功能和实现原理,对认识整个计算机系统的工作原理十分重要。 操作系统实验是操作系统课程的一个重要组成部分,通过试验环节的锻炼使同学们不仅能够对以前的所学过的基础知识加以巩固,同时能够通过上机实验,对操作系统的抽象理论知识加以理解,最终达到融会贯通的目的,因此,实验环节是同学们理解、掌握操作系统基本理论的一个重要环节。 本实验指导书,根据教材中的重点内容设定了相应的实验题目,由于实验课程的学时有限,我们规定了必做题目和选做题目,其中必做题目必须在规定的上机学时中完成,必须有相应的预习报告和实验报告。选做题目是针对有能力或感兴趣的同学利用课余时间或上机学时的剩余时间完成。

实验题目一:模拟进程创建、终止、阻塞、唤醒原语 一、题目类型:必做题目。 二、实验目的:通过设计并调试创建、终止、阻塞、唤醒原语功能,有助于对操作系统中进 程控制功能的理解,掌握操作系统模块的设计方法和工作原理。 三、实验环境: 1、硬件:PC 机及其兼容机。 2、软件:Windows OS ,Turbo C 或C++、VC++、https://www.360docs.net/doc/914605792.html, 、Java 等。 四、实验内容: 1、设计创建、终止、阻塞、唤醒原语功能函数。 2、设计主函数,采用菜单结构(参见后面给出的流程图)。 3、设计“显示队列”函数,目的能将就绪、阻塞队列中的进程信息显示在屏幕上,以供 随时查看各队列中进程的变化情况。 五、实验要求: 1、进程PCB 中应包含以下内容: 2、系统总体结构: 其中: 进程名用P1,P2标识。 优先级及运行时间:为实验题目二做准备。 状态为:就绪、运行、阻塞,三种基本状态。 指针:指向下一个PCB 。

1001网络-操作系统实验报告

上机实验一安装操作系统及使用 一、实验目的及准备: 目的:练习虚拟机的使用和操作系统的安装过程,并熟练掌握Windows XP系统的使用。 准备:装有Windows XP系统的计算机、虚拟机VMware的安装文件、Windows XP系统的镜像文件。 二、实验内容: 1、在虚拟机VMware中安装Windows XP系统 2、用户界面的使用和工作环境的设置 三、实验步骤: (一)、在虚拟机VMware中安装Windows XP系统 安装虚拟机VMware: 1、双击安装程序后来到VMware Workstation安装向导界面。 2、选中“是的,我同意……” 3、我选择将VMware Workstation安装在默认的路径下。 4、确定无误后单击“Install”。 5、安装…… 6、如果主机操作系统开启了光驱自动运行功能,安装向导弹出提示框提示光驱的自动运行功能将影响虚拟机的使用询问是否要关闭此项功能,选择“是”关闭掉主机的此项功能。 7、安装继续 8、在安装虚拟网卡驱动时,系统会弹出提示告诉你正在安装的软件没有通过微软的徽标测试,不必理睬选择“仍然继续”。 9、安装完成。10、重启计算机。 在虚拟机VMware中安装Windows XP系统: 首先创建一个虚拟机:1、在虚拟机窗口下依次展开文件-新建-虚拟机2、出现“新建虚拟机向导”窗口:3、建议选择“自定义”方便后面配置虚拟机内存4、选择需要安装的“客户操作系统”。5、输入虚拟机名和存放虚拟机文件的文件夹的路径:6、分配虚拟机内存7、添加网络类型8、选择一个磁盘9、指定虚拟磁盘容量:10、创建后缀名为.vmdk的磁盘文件并指明其存放路径11、进入“磁盘高级选项”单击“完成”新的虚拟机就建立完毕。 接着在虚拟机中安装操作系统。1、在新建的虚拟机中选择“选项”,选择使用ISO镜像,并单击浏览,加载xp的镜像文件,2、运行虚拟机进入安装界面。3、安装完成。(二)、用户界面的使用和工作环境的设置 1、创建新的用户账号:依次单击“开始”、“控制面板”和“用户账户”。单击“添加”。在“添加新用户”向导提示下完成用户账号的创建。 2、Windows XP的用户界面:桌面与任务栏,窗口的基本操作,文件的基本操作,命令行控制界面 3、工作环境设置:设置键盘和鼠标、创建快捷方式、设置显示属性和设置文件夹选项等 4、Windows XP的管理工具的使用:注册表机制,单击“开始”菜单中的“运行”项,在“打开(O):”左边的编辑框中输入“regedit”,然后单击“确定”按钮就启动了注册表编辑器。 5、任务管理器的使用:按ctrl+alt+del键,或者在开始-运行里输入taskmgr打开任务管理器。使用应用程序选项卡查看当前打开的应用程序的状态,并可以通过单击结束任务按钮结束任务,单击切换至按钮切换到任务,用新任务按钮打开新任务。用进程选项卡查看进程状态,性能,、联网,用户选项卡的使用(描述使用方法) 6、事件查看器的使用,打开控制面板,选择管理工具,选择事件查看器。(描述使用方法) 7、性能监视工具的使用。打开控制面板,选择管理工具,选择性能。(描述使用方法) 四、实验总结:

网络操作系统复习题

一、单项选择题每小题2分 2.操作系统中采用多道程序设计技术来提高CPU和外部设备的() A.利用率 B.可靠性 C.稳定性 D.兼容性 答案:A 解析:多道程序设计的主要目的是充分利用系统的所有资源且尽可能地让它们并行操作。 3.允许在一台主机上同时连接多台终端,多个用户可以通过各自的终端同时交互地使用计算 机的操作系统是() A.网络操作系统 B.分布式操作系统 C.分时操作系统 D.实时操作系统 答案:C 解析:在一个系统中,如果多个用户分时地使用同一个计算机,那么这样的系统就称为分时系统。由此可知本题选C。 4.可以使系统并行操作更有效的是() A.采用进程 B.采用线程 C.采用分页存贮 D.采用批处理 答案:B 解析:采用线程提高系统的并行性比采用进程实现并行性更有效。 5.在下面对进程的描述中,不正确的是() A.进程是动态的概念

答案:D 解析:程序是指令的有序集合,是静态的概念;而程序和数据集合是进程存在的物质基础,即进程的实体。 6.在请求分页存储管理中,若采用FIFO页面淘汰算法,当分配的页面数增加时,缺页中断的 次数() A.减少 B.增加 C.无影响 D.可能增加也可能减少 答案:D 解析:缺页中断的次数与分配的页面数无关,因此在采用FIFO页面淘汰算法时中所产生的缺页中断的次数可能增加,也可能减少。 7.在下列文件的物理结构中,不利于文件长度动态增长的是() A.连续结构 B.串联结构 C.索引结构 D.Hash结构 答案:A 解析:连续结构是指一个逻辑文件的信息存放在文件存储器上的相邻物理块中,因此这种方法不利于文件长度动态增长。 8.位示图方法用于() A.进程的调度 B.盘空间的管理 C.文件的共享 D.进程间的通讯 答案:B 解析:位示图法为文件存储器存储空间建立一张位示图,用以反映整个存储空间的分配情况。

操作系统原理-进程调度实验报告

一、实验目的 通过对进程调度算法的设计,深入理解进程调度的原理。 进程是程序在一个数据集合上运行的过程,它是系统进行资源分配和调度的一个独立单位。 进程调度分配处理机,是控制协调进程对CPU的竞争,即按一定的调度算法从就绪队列中选中一个进程,把CPU的使用权交给被选中的进程。 进程通过定义一个进程控制块的数据结构(PCB)来表示;每个进程需要赋予进程ID、进程到达时间、进程需要运行的总时间的属性;在RR中,以1为时间片单位;运行时,输入若干个进程序列,按照时间片输出其执行序列。 二、实验环境 VC++6.0 三、实验内容 实现短进程优先调度算法(SPF)和时间片轮转调度算法(RR) [提示]: (1) 先来先服务(FCFS)调度算法 原理:每次调度是从就绪队列中,选择一个最先进入就绪队列的进程,把处理器分配给该进程,使之得到执行。该进程一旦占有了处理器,它就一直运行下去,直到该进程完成或因发生事件而阻塞,才退出处理器。 将用户作业和就绪进程按提交顺序或变为就绪状态的先后排成队列,并按照先来先服务的方式进行调度处理,是一种最普遍和最简单的方法。它优先考虑在系统中等待时间最长的作业,而不管要求运行时间的长短。 按照就绪进程进入就绪队列的先后次序进行调度,简单易实现,利于长进程,CPU繁忙型作业,不利于短进程,排队时间相对过长。 (2) 时间片轮转调度算法RR

原理:时间片轮转法主要用于进程调度。采用此算法的系统,其程序就绪队列往往按进程到达的时间来排序。进程调度按一定时间片(q)轮番运行各个进程. 进程按到达时间在就绪队列中排队,调度程序每次把CPU分配给就绪队列首进程使用一个时间片,运行完一个时间片释放CPU,排到就绪队列末尾参加下一轮调度,CPU分配给就绪队列的首进程。 固定时间片轮转法: 1 所有就绪进程按 FCFS 规则排队。 2 处理机总是分配给就绪队列的队首进程。 3 如果运行的进程用完时间片,则系统就把该进程送回就绪队列的队尾,重新排队。 4 因等待某事件而阻塞的进程送到阻塞队列。 5 系统把被唤醒的进程送到就绪队列的队尾。 可变时间片轮转法: 1 进程状态的转换方法同固定时间片轮转法。 2 响应时间固定,时间片的长短依据进程数量的多少由T = N × ( q + t )给出的关系调整。 3 根据进程优先级的高低进一步调整时间片,优先级越高的进程,分配的时间片越长。 多就绪队列轮转法: (3) 算法类型 (4)模拟程序可由两部分组成,先来先服务(FCFS)调度算法,时间片轮转。流程图如下:

操作系统原理实验四

实验4 进程控制 1、实验目的 (1)通过对WindowsXP进行编程,来熟悉和了解系统。 (2)通过分析程序,来了解进程的创建、终止。 2、实验工具 (1)一台WindowsXP操作系统的计算机。 (2)计算机装有Microsoft Visual Studio C++6.0专业版或企业版。 3、预备知识 (3)·CreateProcess()调用:创建一个进程。 (4)·ExitProcess()调用:终止一个进程。 4、实验编程 (1)编程一利用CreateProcess()函数创建一个子进程并且装入画图程序(mspaint.exe)。阅读该程序,完成实验任务。源程序如下: # include < stdio.h > # include < windows.h > int main(VOID) ﹛STARTUPINFO si; PROCESS INFORMA TION pi; ZeroMemory(&si,sizeof(si)); Si.cb=sizeof(si); ZeroMemory(&pi,sizeof(pi)); if(!CreateProcess(NULL, “c: \ WINDOWS\system32\ mspaint.exe”, NULL, NULL, FALSE, 0, NULL, NULL, &si,&pi)) ﹛fprintf(stderr,”Creat Process Failed”); return—1; ﹜ WaitForSingleObject(pi.hProcess,INFINITE); Printf(“child Complete”); CloseHandle(pi.hProcess); CloseHandle(pi hThread); ﹜

操作系统原理实验-系统内存使用统计5

上海电力学院 计算机操作系统原理 实验报告 题目:动态链接库的建立与调用 院系:计算机科学与技术学院 专业年级:信息安全2010级 学生姓名:李鑫学号:20103277 同组姓名:无 2012年11 月28 日上海电力学院

实验报告 课程名称计算机操作系统原理实验项目线程的同步 姓名李鑫学号20103277 班级2010251班专业信息安全 同组人姓名无指导教师姓名徐曼实验日期2012/11/28 实验目的和要求: (l)了解Windows内存管理机制,理解页式存储管理技术。 (2)熟悉Windows内存管理基本数据结构。 (3)掌握Windows内存管理基本API的使用。 实验原理与内容 使用Windows系统提供的函数和数据结构显示系统存储空间的使用情况,当内存和虚拟存储空间变化时,观察系统显示变化情况。 实验平台与要求 能正确使用系统函数GlobalMemoryStatus()和数据结构MEMORYSTATUS了解系统内存和虚拟空间使用情况,会使用VirtualAlloc()函数和VirtualFree()函数分配和释放虚拟存储空间。 操作系统:Windows 2000或Windows XP 实验平台:Visual Studio C++ 6.0 实验步骤与记录 1、启动安装好的Visual C++ 6.0。 2、选择File->New,新建Win32 Console Application程序, 由于内存分配、释放及系统存储 空间使用情况均是Microsoft Windows操作系统的系统调用,因此选择An application that support MFC。单击确定按钮,完成本次创建。 3、创建一个支持MFC的工程,单击完成。

操作系统原理实验指导

操作系统实验指导 操作系统是计算机的最重要的系统软件,它在计算机中具有核心地位,其作用是对计算机系统资源进行统一的调度和管理,提供各种强有力的系统服务,为用户创造灵活而又方便的使用环境。一个精心设计的操作系统能极大地扩充计算机系统的功能,充分地发挥系统中各种资源的使用效率,提高系统工作的可靠性。 操作系统原理是计算机科学与技术专业的一门主要专业课程,它涉及计算机系统中各种软、硬资源管理的实现原理与方法,内容非常丰富,综合性非常强,并且还具有很强的实践性。只有把理论与实践紧密地结合起来,才能取得较好地学习效果。 培养计算机专业学生的系统程序设计能力,也是本课程的重要环节。系统程序要求结构清晰、合理、可读性好,有准确而简明的注释。通过实验可以培养学生正规系统程序设计能力。 本实验包括下列六个方面: 实验一几种操作系统的界面 实验二进程调度 实验三存储器管理 实验四存储器管理 实验五磁盘驱动调度 实验六文件管理系统 上述每个实验约需要10个学时。可根据实际情况选用。最好学生自己独立完成,如有困难,可参考一些示例,弄清每个实验的思想和实现方法,上机调试通过,不能完全照搬示例。 实验一几种操作系统的界面 1、目的与要求 目的:通过本实验,学生应熟悉1~2种操作系统的界面。在熟练使用的基础上,能了解各种命令和调用在系统中的大致工作过程,也就是通过操作系统的外部特性,逐步深入到操作系统的内在实质内容中去。 要求:能熟练地在1~2种操作系统环境下工作。学会使用各种命令,熟悉系统提供的各种功能。主动而有效地使用计算机。 熟悉系统实用程序的调用方法和各种系统调用模块的功能和用法。 2、示例 用1~2种操作系统提供的各种手段,建立、修改、编辑、编译和运行程序,最后撤消一个简单程序。要尽可能多地使用系统提供的各种命令和功能。 操作系统可为如下两种序列: (1)Windows 98或Windows 2000或Windows XP。 (2)Linux或Unix。 下面简要介绍一下Unix操作系统。 Unix是一个分时操作系统,面向用户的界面shell是一种命令程序设计语言,这种语言向用户提供了从低到高,从简单到复杂的三个层次的使用方式。它们是简单命令、组合命令和shell过程。 简单命令:Unix命令一律使用小写字母。 例如:ls -l 显示文件目录(长格式) rm 删除一个文件 cat 合并和传送文件、 cp 复制文件 mv 文件改名 cc 编译C语言源程序 组合命令:shell简单命令可以用管道算符|组合构成功能更强的命令。

《网络操作系统(Windows-server-)》实训指导书

目录 《网络操作系统(WINDOWS SERVER 2012)》课程实训指导书 (1) 一、实训目的与要求 (1) 二、实训内容 (1) 三、参考课时 (1) 四、实训考核与组织 (1) 五、说明 (2) 六、实训项目 (2) 实训项目一 WINDOWS SERVER 2012的安装与配置 (3) 实训项目二 DNS域名服务的实现 (5) 实训项目三 DHCP服务器的配置与管理的实现 (8) 实训项目四 WINS服务器的配置 (10) 实训项目五 WINDOWS SERVER 2012活动目录的实现 (12) 实训项目六 WINDOWS SERVER 2012磁盘管理的实现 (16) 实训项目七 WINDOWS SERVER 2012文件管理 (18) 一、实训目的与要求 (18) 实训项目八 IIS服务器的应用实现 (21) 一、实训目的与要求 (21) 在网站中放置一些网页,打开浏览器访问该网站。(在本机上访问可使用“,在其它计算机上访问可使用“ FTP服务器的配置的实现 (22)

《网络操作系统(Windows Server 2012)》课程实训指导书一、实训目的与要求 网络操作系统(Windows Server 2012)实训以Windows Server 2012为操作平台,全面介绍与Windows Server 2012网络系统管理有关的知识和 Windows Server 2012系统管理的基本技能,最终使学生掌握解决一般网络系统管理中遇到的问题的能力。 二、实训内容 Windows Server 2012 网络操作系统实训分为:Windows Server 2012的安装与配置、DNS域名服务的实现、DHCP服务器的配置与管理的实现、WINS服务器的配置、Windows Server 2012的相关管理、以及各种服务器的配置与应用。 三、参考课时 四、实训考核与组织

网络操作系统最主要的作用是处理

网络操作系统最主要的作用是处理 B 资源的最大共享及资源共享的局限性之间的矛盾 下面关于Windowns NT描述正确的是 D 如果BDC出现故障,PDC可以转换为BDC UNIX系统中具有最高权限的用户名是 B.root Netware的核心协议(NCP)提供了一系列的 D 控制协议 网络通信软件的任务是根据协议来控制和管理 D 程序间通信 Netware采用的通信协议是 D SPX/IPX ====================================================================== 1.Windows NT是一种(). 多用户多进程系统 2.网络操作系统是一种()。 系统软件 3.网络操作系统为网络用户提供了两级接口:网络编程接口和()。 操作命令接口 4.构成网络操作系统信息机制的是()。 B.通信原语 5.网络操作系统主要解决的问题是()。 网络资源共享与网络资源安全访问限制 6.以下属于网络操作系统的工作模式为()。 Client/Server ===================================================================== 1, 下面的操作系统中,不属于网络操作系统的是() DOS

2. 对网络用户来说,操作系统是指() 一个资源管理者 3. UNIX是一种() 多用户多进程系统 4. 允许一台主机同时连接多台客户端,同时为多个客户端提供服务的计算机的操作系统是() 网络操作系统 5. 下列不属于网络操作系统的安全性的是() 用户能管理和中止系统运行 6.在客户/服务器模式下的网络操作系统主要是指() 服务器操作系统

实验指导(2015完全版)

操作系统上机实验指导书 (第一版) 闫大顺李晟编著 吴家培主审 计算机科学与工程学院 2014.8

操作系统实验指导 本课程是为《计算机操作系统》课所开的实验。计算机操作系统课程是一门实践性很强的技术课程,本课程实验的目的在于培养学生的实践能力,促进理论与实践的结合。要求学生通过上机编程,熟悉对操作系统原理,并熟练使用程序接口,并了解如何模拟操作系统原理的实现,从而加深对操作系统原理的领会,加深对操作系统实现方法的理解,与此同时使学生在程序设计方面也能够得到很大程度的提高。 实验的目的是使学生理论联系实际,提高学生系统理解与开发能力。这里所列的实验分为必做和选做。具体实验题的选择,不仅要考虑课程内容,而且要考虑学生目前的编程能力,要由浅入深。教师可通过运行示例或动画,帮助学生理解实验要求。学生应选择自己熟悉的语言与开发环境去完成实验。根据以往的教学经验,Delphi、C++ Builder,JBuilder由于提供了许多可重用的构件,易于学习、使用,VC++学习、使用困难较多。实验要求尽量在windows操作系统下,也可以在Linux下完成,由于多数没有专门学习Linux,在其平台下做试验比较困难。实验的硬件要求是能够支持VC++、Delphi、C++ Builder,JBuilder的微机即可。每个学生都独立在一台计算机上完成自己的实验内容,杜绝学生的抄袭。 实验报告的要求 1. 每位同学准备实验报告本,上机前作好充分的准备工作,预习本次实验的内容,事先熟悉与实验有关的软硬件环境。 2. 实验时遵守实验室的规章制度,爱护实验设备,对于实验设备出现的问题,要及时向指导老师汇报。 3. 提交实验文件格式:[班级][学号]_[实验题号].[扩展名] 例:计051班学号为03的学生第四个实验的文件名为:j05103_4.c 4. 最终的实验报告按照实验名称、实验目的、实验内容,实验过程(程序设计、实现与调试)、实验总结五部分书写,按时上交。实验总结是对于实验过程中出现的问题或疑惑的分析与思考。认真按照要求填写到实验报告纸上。

操作系统安装的实验报告

实验报告 课程名称:网络操作系统 实验项目名称: Windows Server 2003的操作系统的安装; Red Hat Linux 9的操作系统的安装 学生姓名:胡廷 专业:计算机网络技术 学号:1200007833 实验地点:昆明冶金高等专科学校实训楼六机房 实验日期:2013 年11月16 日

目录 实验项目名称: Windows Server 2003的操作系统的安装; (1) Red Hat Linux 9的操作系统的安装 (1) 实训1: Windows Server 2003的安装 (3) 一、实验目的 (3) 二、实验内容 (3) 三、实验步骤 (3) 四、结论 (13) 五、思考题 (14) 实训2: Red Hat Linux 操作系统的安装 (15) 一、实验目的 (15) 二、实验内容 (15) 三、实验步骤 (16) 四、结论 (31) 五、思考题 (32)

实训1: Windows Server 2003的安装 一、实验目的 1、掌握Windows Server 2003操作系统网络授权模式的选择和确定 2、了解各种不同的安装方式,能根据不同的情况正确选择不同的方式来安装Windows Server 2003操作系统。 3、熟悉Windows Server 2003操作系统的启动与安装步骤。 二、实验内容 为新建的虚拟机安装Windows Server 2003操作系统,要求如下: 1、Windows Server 2003分区的大小为20GB,文件系统格式为NTFS; 2、授权模式为每服务器15个连接,计算机名称srever47-win2003,管理员密码为wlczxt0912$47; 3、服务器的IP地址为192.168.15.47,子网掩码为255.255.255.0,DNS地址为218.194.208.5、211.98.72.8,网关设置为192.168.15.252,属于工作组workgroup。 三、实验步骤 1、启动VMWARE,新建一个虚拟机,将光盘指向Windows Server 2003安装映像文件,启动虚拟机,进入安装界面;

网络操作系统试题总汇要点

一、填空题 1.网络操作系统应具有()、存储管理、设备管理、文件管理、 ()和()管理的功能。 2.Windows NT有四个特殊组。包括Network组、()、Everyone组和 Greater Owner组。 3.工作组是以(源)为主要目的的一组计算机和用户。其特点是采用 ()的管理方式。 4.Windows NT可以支持的文件系统是(),但也对() 文件系统兼容。 5.成员服务器可以被提升为()。 6.对用户账号和共享资源实施管理的是()组。 7.UNIX系统中,一个文件的许可权有()、()和其他。 8.UNIX系统中,系统与用户终端之间建立连接和表明身份的过程称为()。 9.网络操作系统需要解决的一对矛盾是()和(性)。 10.在安装了Windows NT Server之后,系统会自动建立两个账号()和 ()。 11.在Windows NT中,组分为全局组、()和特殊组。 12.Microsoft Windows NT server 操作系统被设计用于()服务器。它既是一个 个人计算机操作系统,又是一个()。它将()和基本操作结合,易于使用和管理。 13.在Netware中建立一个用户账号,需要在NDS中创建一个用户对象,然后设置对象的 ()和()。 14.匿名账户的名称是()。 15.在Internet信息服务(IIS)管理器中,设置FTP站点的访问权限有 和。 16.传输层有(_ __)、(_ _)两种协议。 17.TCP/IP参考模型由(_)、(_)、()、 链路层4层组成。 18.一般情况下,核心内存的值越()越好。 19.能够标识一个Web网站的三个方面是()、()、 ()。 20.动态主机配置协议英文是(_ )。 21.电子邮件使用协议和协议完成邮件的收发工作。 22.假设一台客户机是由DHCP分配IP地址,当释放此IP地址时,可输入() 命令。 23.在网络中提供域名与IP地址解析服务的服务器是()。 24.Windows Server 2003有四个版本,分别为:、、、。 25.推荐Windows Server 2003安装在(_ )文件系统分区。 26.某企业规划有2台Windows Server 2003和50台Windows 2000 professional,每台服务 器最多只有15个人会同时访问,最好采用(_ )授权模式。

Windows网络操作系统配置与管理单元六任务4:配置文件屏蔽实验报告(最新整理)

Windows网络操作系统配置与管理 实验报告 专业班级成绩评定______ 学号姓名(合作者____号____) 教师签名 单元六任务4:配置文件屏蔽第周星期第节 一、实验目的与要求 1.掌握文件屏蔽模板的配置 2.掌握文件屏蔽的配置 3.掌握文件屏蔽例外的配置 二、实验方案与步骤 任务4:配置文件屏蔽 1.工作情景 你是时讯公司网络管理员,禁止将某些类型的文件存放到公司的文件服务器上,需要对test 文件夹进行文件屏蔽,当向该文件夹存入可执行文件.bat时,将被禁止写入,并发出告警信息。 2.步骤 (1)创建文件屏蔽 1)在 SH-SVR2 上,“文件服务器资源管理器”控制台中,展开“文件屏蔽管理” 节点。 2)选择并右键单击“文件屏蔽”节点,然后单击“创建文件屏蔽”。 3)在“创建文件屏蔽”对话框中,单击“浏览”并定位到C:\test\test2文件 夹下,然后单击“确定”。 4)选择“定义自定义文件屏蔽属性”,单击“自定义属性”。 5)在“文件屏蔽属性”对话框中,选择“被动屏蔽”,然后从列表中选择“可执 行文件”。 6)单击“事件日志”选项卡,选择“将警告发送至事件日志”检查框,然后单 击“确定”。 7)在“创建文件屏蔽”对话框中,单击“创建”。 8)将显示“将自定义属性另存为模板”对话框。输入“Monitor Executables”, 然后单击“确定”。 (2)测试文件屏蔽 1)打开“Windows 资源管理器”,定位到 C:\test\test2文件夹下。 2)右键单击 test.bat文件,然后单击“复制”。 3)浏览至C:\test\test2 文件夹,在Windows 资源管理器右方空白处右键单击, 然后选择“粘贴”。 “管理工具”,选择“事 4)检查事件查看器。为了进入事件查看器,单击“开始”, 件查看器”。展开“Windows 日志”,然后单击“应用程序”。注意事件 ID 为8215的事件。 5)关闭“事件查看器”,然后关闭“Windows 资源管理器”。

操作系统原理实验五

实验五线程的同步 1、实验目的 (1)进一步掌握Windows系统环境下线程的创建与撤销。 (2)熟悉Windows系统提供的线程同步API。 (3)使用Windows系统提供的线程同步API解决实际问题。 2、实验准备知识:相关API函数介绍 ①等待对象 等待对象(wait functions)函数包括等待一个对象(WaitForSingleObject ())和等待多个对象(WaitForMultipleObject())两个API函数。 1)等待一个对象 WaitForSingleObject()用于等待一个对象。它等待的对象可以为以下对象 之一。 ·Change ontification:变化通知。 ·Console input: 控制台输入。 ·Event:事件。 ·Job:作业。 ·Mutex:互斥信号量。 ·Process:进程。 ·Semaphore:计数信号量。 ·Thread:线程。 ·Waitable timer:定时器。 原型: DWORD WaitForSingleObject( HANDLE hHandle, // 对象句柄 DWORD dwMilliseconds // 等待时间 ); 参数说明: (1)hHandle:等待对象的对象句柄。该对象句柄必须为SYNCHRONIZE访问。 (2)dwMilliseconds:等待时间,单位为ms。若该值为0,函数在测试对象的状态后立即返回,若为INFINITE,函数一直等待下去,直到接收到 一个信号将其唤醒,如表2-1所示。 返回值: 如果成功返回,其返回值说明是何种事件导致函数返回。

Static HANDLE hHandlel = NULL; DWORD dRes; dRes = WaitForSingleObject(hHandlel,10); //等待对象的句柄为hHandlel,等待时间为10ms 2)等待对个对象 WaitForMultiple()bject()在指定时间内等待多个对象,它等待的对象与 WaitForSingleObject()相同。 原型: DWORD WaitForMultipleObjects( DWORD nCount, //句柄数组中的句柄数 CONST HANDLE * lpHandles, //指向对象句柄数组的指针 BOOL fWaitAll, //等待类型 DWORD dwMilliseconds //等待时间 ); 参数说明: (1)nCount:由指针 * lpHandles指定的句柄数组中的句柄数,最大数是MAXIMUM WAIT OBJECTS。 (2)* lpHandles:指向对象句柄数组的指针。 (3)fWaitAll:等待类型。若为TRUE,当由lpHandles数组指定的所有对象被唤醒时函数返回;若为FALSE,当由lpHandles数组指定的某一个 对象被唤醒时函数返回,且由返回值说明是由于哪个对象引起的函数 返回。 (4)dwMilliseconds:等待时间,单位为ms。若该值为0,函数测试对象的状态后立即返回;若为INFINITE,函数一直等待下去,直到接收到 一个信号将其唤醒。 返回值:、 如果成功返回,其返回值说明是何种事件导致函数返回。 各参数的描述如表2-2所示。

网络操作系统试卷A附答案

一名词解释 1 NetBIOS名称 2递归查询 3 DHCPREQUEST 4组织单位 5镜像卷 二单选 1、如果一个主机的IP地址为172.168.2.198,那么这个主机是属于那一类网络() A A类网络 B B类网络 C C类网络 D 无法确定 2 、当安装Windows 2000 Server时, 会询问计算机的名称, 请问下面哪个语句描述了计算机名称的作用.( ) A. 计算机名称就是NetBIOS名称, 通过它可以在网上识别计算机. 只要不在一个网络内, 就允许两台计算机有相同的名字. B. 计算机名称就是NetBIOS名称, 通过它可以在网上识别计算机. 两台计算机绝不能有相同的名字. C. 通过计算机名字可以识别连接到某一个域控制器的计算机. 计算机名称至少由两个字母组成, 且名称中必须含有域名. D. 计算机名称随情况而不同, 并且在用户第一次登录时, 必须输入计算机名称. 3、将一个磁盘分区的所有内容精确的拷贝到另一个磁盘分区的卷是下面哪一种()。 A、RAID-5卷 B、带区卷 C、磁盘镜像 D、简单卷 4、假设某人不想让使用他的工作站的人访问他正在处理的一些文件。他应如何做才能达到目的()。 A、将这些文件的属性设为隐藏 B、将文件存储到桌面上,桌面具有安全性选项实现密码保护 C、用FAT格式化硬盘。FAT具有内置的对基于帐号的访问控制的支持 D、用NTFS格式化硬盘。NTFS具有内置的对基于帐号的访问控制的支持 5、Windows 2000 Sever 中具有最高权限的用户是( ) A、administrator B、root C、supervisor D、guest 6、DNS的功能为() A.将物理地址映射为网络地址 B.将IP地址映射为MAC地址 C.将MAC地址映射为IP地址 D.将主机名映射为IP地址 7、当客户机检测到其所使用的IP地址在网络上存在冲突时,将向DHCP服务器发出( ) A DHCPRELEASE B DHCPDECLINE C DHCPINFORM D DHCP REQUEST 8、关于FTP站点下列说法正确地是( ) A FTP服务是一种实时的联机服务,是基于C/S模式的 B FTP站点也可以创建虚拟目录,其虚拟目录可以分为本地虚拟目录和远程虚拟目录. C在一台服务器上我们可以使用IP地址、端口号和主机头名来维持多个FTP站点。 D FTP服务可以同时使用两个端口号进行传送,这两个端口都可以用于从传送指令消息和数

操作系统原理实验报告(终版)

操作系统原理实验报告(终版)

————————————————————————————————作者:————————————————————————————————日期:

[键入文字] XX学校 实验报告 课程名称: 学院: 专业班: 姓名: 学号: 指导教师: 2011 年3 月

目录 实验1 进程管理 (3) 一、实验目的 (3) 二、实验内容 (3) 三、实验要求 (3) 四、程序说明和程序流程图 (4) 五、程序代码 (5) 六、程序运行结果及分析 (7) 七.指导教师评议 (8) 实验2 进程通信 (9) 一、实验目的 (9) 二、实验内容 (9) 三、实验要求 (9) 四、程序说明和程序流程图 (9) 五、程序代码 (11) 七.指导教师评议 (14) 实验3 存储管理 (15) 一、实验目的 (15) 二、实验内容 (15) 三、实验要求 (15) 四、程序说明和程序流程图 (16) 六、程序运行结果及分析 (23)

七.指导教师评议 (23) 实验4 文件系统 (24) 一、实验目的 (24) 二、实验内容 (24) 三、实验要求 (24) 四、程序说明和程序流程图 (24) 五、程序代码 (26) 六、程序运行结果及分析 (26) 七.指导教师评议 (27)

实验1 进程管理 一、实验目的 1. 弄清进程和程序的区别,加深对进程概念的理解。 2. 了解并发进程的执行过程,进一步认识并发执行的实质。 3. 掌握解决进程互斥使用资源的方法。 二、实验内容 1. 管道通信 使用系统调用pipe( )建立一个管道,然后使用系统调用fork( )创建2个子进程p1和p2。这2个子进程分别向管道中写入字符串:“Child process p1 is sending message!”和“Child process 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!”后终止。而父进程等待2个子进程终止后,输出信息“Parent process is killed!”后终止。 三、实验要求 1. 根据实验内容编写C程序。 2. 上机调试程序。 3. 记录并分析程序运行结果。

网络存储实验报告

湖北文理学院《网络存储》 实验报告 专业班级:计科1211 姓名:*** 学号:*** 任课教师:李学峰 2014年11月16日

实验01 Windows 2003的磁盘阵列技术 一、实验目的 1.掌握在Windows 2003环境下做磁盘阵列的条件和方法。 2.掌握在Windows 2003环境下实现RAID0的方法。 3. 掌握在Windows 2003环境下实现RAID1的方法。 4. 掌握在Windows 2003环境下实现RAID5的方法。 5. 掌握在Windows 2003环境下实现恢复磁盘阵列数据的方法。 二、实验要求 1.在Windows 2003环境下实现RAID0 2.在Windows 2003环境下实现RAID1 3.在Windows 2003环境下实现RAID5 4.在Windows 2003环境下实现恢复磁盘阵列数据 三、实验原理 (一)磁盘阵列RAID技术的概述 RAID是一种磁盘容错技术,由两块以上的硬盘构成冗余,当某一块硬盘出现物理损坏时,换一块同型号的硬盘即可自行恢复数据。RAID有RAID0、RAID1、RAID5等。RAID 技术是要有硬件来支持的,即常说的RAID卡,如果没RAID卡或RAID芯片,还想做RAID,那就要使用软件RAID技术,微软Windows系统只有服务器版本才支持软件RAID技术,如Windows Server 2003等。 (二)带区卷(RAID0) 带区卷是将多个(2-32个)物理磁盘上的容量相同的空余空间组合成一个卷。需要注意的是,带区卷中的所有成员,其容量必须相同,而且是来自不同的物理磁盘。带区卷是Windows 2003所有磁盘管理功能中,运行速度最快的卷,但带区卷不具有扩展容量的功能。它在保存数据时将所有的数据按照64KB分成一块,这些大小为64KB的数据块被分散存放于组成带区卷的各个硬盘中。 (三)镜像卷(RAID1) 镜像卷是单一卷的两份相同的拷贝,每一份在一个硬盘上。它提供容错能力,又称为RAID1技术。 RAID1的原理是在两个硬盘之间建立完全的镜像,即所有数据会被同时存放到两个物理硬盘上,当一个磁盘出现故障时,系统仍然可以使用另一个磁盘内的数据,因此,它具备容错的功能。但它的磁盘利用率不高,只有50%。 四、实验设备 1.一台装有Windows Server 2003系统的虚拟机。 2.虚拟网卡一块,类型为“网桥模式”。 3.虚拟硬盘五块。 五、实验步骤 (一)组建RAID实验的环境 (二)初始化新添加的硬盘 (三)带区卷(RAID0的实现)

操作系统原理实验十一

实验十一银行家算法模拟实现 1实验类型 设计型(4学时)。 2实验目的 1)理解死锁避免相关内容; 2)掌握银行家算法主要流程; 3)掌握安全性检查流程。 3实验描述 本实验主要对操作系统中的死锁预防部分的理论进行实验。要求实验者设计一个程序,该程序可对每一次资源申请采用银行家算法进行分配。 4实验内容 1)设计多个资源(≥3); 2)设计多个进程(≥3); 3)设计银行家算法相关的数据结构; 4)动态进行资源申请、分配、安全性检测并给出分配结果。 5实验要求 1)编写程序完成实验内容; 2)画出安全性检测函数流程图; 3)小组派1人上台用PPT演讲实现过程; 4)撰写实验报告。

6测试要求 1)进行Request请求,输入参数为进程号、资源号和资源数; 2)进行3次以上的Request请求; 3)至少进行1次资源数目少于可用资源数,但不安全的请求。 7相关知识 7.1银行家算法的数据结构 1)可利用资源向量Available。其中每个元素代表每类资源的数目。 2)最大需求矩阵Max。其中每个元素代表每个进程对于每类资源的最大需求量。 Max[i,j]=K表示i进程对于j类资源的最大需求量为K。 3)分配矩阵Allocation。其中每个元素代表每个进程已得到的每类资源的数目。 4)需求矩阵Need。其中每个元素代表每个进程还需要的每类资源的数目。 7.2银行家算法 Request i [j]=K表示进程Pi需要K个j类资源。 1)如果Request i [j]≤Need[i , j],便转向步骤2,否则认为出错。 2)如果Request i [j]≤Available[j],便转向步骤3,否则表示无足够资源,Pi需等待; 3)系统尝试分配资源给Pi; 4)系统进行安全性检查,检查此次资源分配后,系统是否安全。如果安全,则正式分配资源,否则撤销此次分配。 7.3安全性算法 1)设置两个向量:工作向量Work和Finish。算法开始时Work=Available;Finish 表示系统是否有足够的资源分配给进程,使之运行完成,开始时,令 Finish[i]=False;如果有足够的资源分配给进程,则令Finish[i]=True。 2)从进程集合中找到一个能满足下列条件的进程:Finish[i]=False;Need[i,j] ≤Work[j],若找到,执行步骤3),否则,执行步骤4); 3)Pi获得所需资源后,可顺利执行指导完成,并释放它占有的资源。并执行:Work[j]=Work[j]+Allocation[i , j]; Finish[i] = True; 到第2)步。

相关文档
最新文档