版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、常州大学操作系统课程实验报告姓 名 金苗 专业班级 信息与计算科学 学 号 13434104 指导老师 张英丽 实验时间 2015年10月23日2015年12月15日实验一 Windows XP 系统管理一 实验目的1) 了解和学习Windows系统管理工具及其使用;2) 熟悉Windows系统工具的内容和应用;3)熟悉Windows操作系统的应用环境。二 实验环境需要准备一台运行Windows XP操作系统的计算机。三 背景知识Windows XP的“管理工具”中集成了许多系统管理工具,利用这些工具,管理员可以方便地实现各种系统维护和管理功能。这些工具都集中在“控制面板”的“管理工具”选项下
2、,用户和管理员可以很容易地对它们操作和使用。在默认情况下,只有一些常用工具如服务、计算机管理、事件查看器、数据源 (ODBC) 、性能和组件服务等随Windows XP系统的安装而安装。四 实验内容与步骤为了帮助用户管理和监视系统,Windows XP提供了多种系统管理工具,其中最主要的有计算机管理、事件查看器和性能监视等。步骤1:登录进入Windows XP。步骤2:在“开始”菜单中单击“设置”-“控制面板”命令,双击“管理工具”图标。在本地计算机“管理工具”组中,有哪些系统管理工具,基本功能是什么:1) 本地安全策略:查看和修改本地安全策略,如用户权限和审核策略 2) Internet信息
3、服务:管理 IIS,Internet 和 Intranet 站点的 WEB服务器 3) 服务:启动和停止服务 4)计算机管理:管理磁盘以及使用其他系统工具来管理本地或远程的计算机 5)事件查看器:显示来自于 Windows 和其他程序的监视与排错消息 6)数据源ODBC:添加、删除、以及配置 ODBC 数据源和驱动程序 7)性能:显示系统性能图表以及配置数据日志和警报 8)组件服务:配置和管理 COM+ 应用程序 1. 计算机管理使用“计算机管理”可通过一个合并的桌面工具来管理本地或远程计算机,它将几个Windows XP管理实用程序合并到一个控制台目录树中,使管理员可以轻松地访问特定计算机的
4、管理属性和工具。步骤3:在“管理工具”窗口中,双击“计算机管理”图标。“计算机管理”使用的窗口与“Windows资源管理器”相似。在用于导航和工具选择的控制台目录树中有“系统工具”、“存储”及“服务和应用程序”等节点,窗口右侧“名称”窗格中显示了工具的名称、类型或可用的子工具等。它们是:1) 系统工具,填入表1-3中。 表1-3 实验记录名称类型描述事件查看器扩展管理单元显示事件日志共享文件夹显示共享文件夹,目前回话及打开文件本地用户和组扩展管理单元管理本地用户和组性能日志和警报扩展管理单元配置数据性能日志和警报设备管理器设备管理器 2) 存储,填入表1-4中。表1-4 实
5、验记录名称类型描述可移动存储扩展管理单元编录可移动媒体并管理自动库磁盘碎片整理程序扩展名管理单元对本地卷上的文件和文件夹进行碎片整理磁盘管理管理单元逻辑磁盘管理器 3) 服务和应用程序,填入表1-5中。 表1-5 实验记录名称性能描述Microsoft SQL Server服务启动,控制并设置Windows服务WMI控件扩展管理单元配置和控制Windows Management Instrumentation(WMI)服务索引服务扩展管理单元提供快速和灵活的文件内容和属性搜索Internet信息服务2. 事件查看器事件查看器不但可以记录各种应用程序错误、损坏的文件、丢失的数据以及其他
6、问题,而且还可以把系统和网络的问题作为事件记录下来。管理员通过查看在事件查看器中显示的系统信息,可以迅速诊断和纠正可能发生的错误和问题。步骤4:在“管理工具”窗口中,双击“事件查看器”图标。在Windows XP事件查看器中,管理员可以查看到三种类型的本地事件日志,请填入表1-6中。 表1-6 实验记录名称类型描述当前大小应用程序日志应用程序错误记录128.0KB安全性日志安全审核记录64.0KB系统日志系统错误记录128.0KB 步骤5:在事件查看器中观察“应用程序日志”:本地计算机中,共有367个应用程序日志事件。步骤6:单击“查看”菜单中的“筛选”命令,系统日志包括的
7、事件类型有:1) 信息(I) 2) 警告(W) 3) 错误(O) 4) 成功审核(S) 5) 失败审核(L) 3. 性能监视“性能”监视工具通过图表、日志和报告,使管理员可以看到特定的组件和应用进程的资源使用情况。利用性能监视器,可以测量计算机的性能,识别以及诊断计算机可能发生的错误,并且可以为某应用程序或者附加硬件制作计划。另外,当资源使用达到某一限定值时,也可以使用警报来通知管理员。步骤7:在“管理工具”窗口中,双击“性能”图标。“性能”窗口的控制台目录树中包括的节点有:1) 性能监视器 2) 性能日志和警报,其中的子节点填入表1-7中。 表1-7 实验记录名称描述计数器日志配置
8、性能数据和监视器日志跟踪日志配置跟踪事件日志警报配置性能警报4. 服务步骤8:在“管理工具”窗口中,双击“服务”图标。在你的本地计算机中,管理着100个系统服务项目。通过观察,重点描述你所感兴趣的5个系统服务项目:1) World Wide Web Publishing:通过Internet信息服务管理单元提供Web连接和管理2) Windows Image Acquisition:为扫描仪和照相机提供图像捕获 3) Security Accounts Manager:存储本地用户账号的安全信息 4) Security Center:监视系统安全设置和配置 5)Shell Hardware D
9、etection:为自动提供硬件事件提供通知 5. 数据源 (ODBC)ODBC,即开放数据库连接。通过ODBC可以访问来自多种数据库管理系统的数据。例如,ODBC数据源会允许一个访问SQL数据库中数据的程序,同时访问Visual FoxPro数据库中的数据。为此,必须为系统添加称为“驱动程序”软件组件。步骤9:在“管理工具”窗口中,双击“数据源 (ODBC) ”图标,打开“ODBC数据源管理器”对话框,请描述其中各选项卡的功能,填入表1-8中。 表1-8 实验记录选项卡功能描述用户DSNODBC用户数据源存储了如何与指定数据提供程序连接的信息。用户数据只对当前用户可见,而且只能用于
10、当前机器上。系统DSNODBC用户数据源存储了如何与指定数据提供程序连接的信息。用户数据只对当前用户可见,包括NT服务。文件DSNODBC 文件数据源允许用户连接到数据提供程序。文件DSN可以由安装了相同驱动程序的用户共享。驱动程序ODBC驱动程序允许支持ODBC的程序从ODBC数据源获取信息。要安装新的驱动程序,请使用其安装程序。跟踪ODBC跟踪允许创建调用驱动程序的日志,以供技术支持人员查看,也有助于您调试应用程序。Visual Studio跟踪启用Microsoft Visual Studio的ODBC跟踪。连接池连接池允许应用程序重用打开连接句柄,此操作将节省到服务器的往返过
11、程。 步骤10:单击“驱动程序”选项卡,试分析,系统为哪些数据源缺省安装了ODBC驱动程序:1) MSORCL32.DLL 2) SQLSRV32.DLL 实验二 Windows任务管理器的进程管理一 实验目的1)在Windows 任务管理器中对程序进程进行响应的管理操作;2)熟悉操作系统进程管理的概念;3)学习观察操作系统运行的动态性能。二 实验环境需要准备一台运行Windows XP操作系统的计算机。三 背景知识Windows XP的任务管理器提供了用户计算机上正在运行的程序和进程的相关信息,也显示了最常用的度量进程性能的单位。使用任务管理器,可以打开监视计算机性能的关键指示器,
12、快速查看正在运行的程序的状态,或者终止已停止响应的程序。也可以使用多个参数评估正在运行的进程的活动,以及查看CPU 和内存使用情况的图形和数据。四 实验内容与步骤启动并进入Windows环境,单击Ctrl + Alt + Del键,或者右键单击任务栏,在快捷菜单中单击“任务管理器”命令,打开“任务管理器”窗口。当前机器中由你打开,正在运行的应用程序有:1) 实验二 Windows任务管理器的进程管理 2) 管理工具 Windows“任务管理器”的窗口由5个选项卡组成,分别是:1) 应用程序 2) 进程 3) 性能 4)联网 5)用户 当前“进程”选项卡显示的栏目分别是 (可移动窗口下方的游标/
13、箭头,或使窗口最大化进行观察) :1) 映像名称 2) 用户名 3) CPU 4) 内存使用 1. 使用任务管理器终止进程步骤1:单击“进程”选项卡,一共显示33个进程。请试着区分一下,其中:系统 (SYSTEM) 进程有19个,填入表2-1中。 表2-1 实验记录映像名称用户名作用内存使用Svchost.exeSYSTEMWindows服务主进程4416KService.exeSYSTEM服务和控制器应用程序3272Ksqlservr.exeSYSTEMSQL基础服务9580KLMS.exeSYSTEMLocal Manageability service2912KMDM.EXES
14、YSTEM针对应用软件进行排错3424KInetinfo.exeSYSTEM支持微软Windows IIS网络服务的除错9780KSpoolsv.exeSYSTEM管理所有本地和网络打印队列及控制所有打印工作5612Kati2evxx.exeSYSTEM管理ATI Hotkey特性4024KSvchost.exeSYSTEMWindows服务主进程24912KSvchost.exeSYSTEMWindows服务主进程5084Kservice.exeSYSTEM服务和控制器应用程序3476Klsass.exeSYSTEMLocal Security Authority Process1736KS
15、ervices.exeSYSTEM服务和控制器应用程序5904KWinlogon.exeSYSTEMWindows登录应用程序1820KCsrss.exeSYSTEMClient Server Runtime Process9492Klsm.exeSYSTEM本地会话管理器服务1156KSmss.exeSYSTEMWindows会话管理器408KSystemSYSTEMNT Kernel & System2196KSystem Idle ProcessSYSTEM处理器空闲时间百分比16K 服务 (SERVICE) 进程有4个,填入表2-2中。 表2-2 实验记录映
16、像名称用户名作用内存使用Svchost.exeLOCAL SERVICEWindows服务主进程4212Kalg.exeLOCAL SERVICE处理微软Windows网络连接共享和网络连接防火墙3808KSvchost.exeNETWORK SERVICEWindows服务主进程3848KSvchost.exeNETWORK SERVICEWindows服务主进程4660K用户进程有9个,填入表2-3中。表2-3 实验记录映像名称用户名作用内存使用Taskmgr.exeAdministrator任务管理器2596KTXPplatform.exeAdministratorTXP platfor
17、m620KSafecenter.exeAdministrator安全中心12728Ksogouflash.exeAdministrator搜狗拼音输入法-Flash皮肤引擎10976KSqlmangr.exeAdministrator构建和管理用于业务的高可用和高性能的数据应用程序5548KCtfmon.exeAdministrator供语音识别、手写识别、键盘、翻译和其它用户输入技术的支持3512KRTHDCPL.EXEAdministrator声卡特性设置软件相关程序6268KExplorer.exeAdministratorWindows 资源管理器34760KWscntfy.exeAd
18、ministratorWindows安全相关策略2544KWINWORD.EXEAdministratorMicrosoft Office Word28844K 步骤2:单击要终止的进程,然后单击“结束进程”按钮。 终止进程,将结束它直接或间接创建的所有子进程。例如,如果终止了电子邮件程序 (如Outlook 98) 的进程树,那么同时也终止了相关的进程,如MAPI后台处理程序mapisp32.exe。请将终止某进程后的操作结果与原记录数据对比,发生了什么:终止后,原窗口被关闭,进程不再运行,未经保持的数据都将失去。 2. 显示其他进程记数器在“进程”选项卡上单
19、击“查看”菜单,然后单击“选择列”命令。单击要增加显示为列标题的项目,然后单击“确定”。为对进程列表进行排序,可在“进程”选项卡上单击要根据其进行排序的列标题。而为了要反转排序顺序,可再次单击列标题。 经过调整,“进程”选项卡现在显示的项目分别是:映像名称,用户名,CPU,内存使用。通过对“查看”菜单的选择操作,可以在“任务管理器”中更改显示选项:· 在“应用程序”选项卡上,可以按详细信息、大图标或小图标查看。· 在“性能”选项卡上,可以更改CPU记录图,并显示内核时间。“显示内核时间”选项在“CPU使用”和“CPU使用记录”图表上添加红线。红线指示内核操作占用的CPU资源
20、数量。 3. 更改正在运行的程序的优先级要查看正在运行的程序的优先级,可单击“进程”选项卡,单击“查看”菜单,单击“选择列”-“基本优先级”命令,然后单击“确定”按钮。为更改正在运行的程序的优先级,可在“进程”选项卡上右键单击您要更改的程序,指向“设置优先级”,然后单击所需的选项。更改进程的优先级可以使其运行更快或更慢 (取决于是提升还是降低了优先级) ,但也可能对其他进程的性能有相反的影响。记录操作后所体会的结果当进程的优先级提高后,该进程的执行速度比其他进程的速度快了,操作起来不卡,优先级被降低的进程,运行速度明显变慢。在多处理器计算机上,用户还可以给处理器指派进程,将程序或进程的执行限制
21、在选定的处理器上,但这有可能导致总体性能的下降。实验三:进程调度一、实验内容1模拟批处理多道操作系统的进程调度;2模拟实现同步机构避免并发进程执行时可能与时间相关的错误;二、实验目的进程调度时进程管理的主要内容之一,通过设计,编制,调试一个简单的进程调度模拟系统,对进程调度,进程运行状态变换及PV操作加深理解和掌握。三、实验题目采用剥夺式优先算法,对三个进程进行模拟调度模拟PV操作同步机构,用PV操作解决进程进入临界区的问题。【提示】(1)对三个进程进行模拟调度,对各进程的优先数静态设置,P1,P2,P3三个进程的优先数为1,2,3,并指定P1的优先数最高,P3的优先数最低,每个进程都处于执行
22、态“e”,就绪态“r”,等待态“w”三种状态之一,并假定初始态为“r”。(2)每一个进程用一个PCB表,PCB表的内容根据具体情况设置,该系统在运行过程中能显示或打印各进程和参数的变化情况,以便观察各进程的调度。(3)在完成必要的初始化后,便进入进程调度程序,首先由P1进入执行,当执行进程因等待某各事件被阻塞或唤醒某个进程等待进程时,转进程调度。(4)在进入临界区前后,调PV操作。(5)如果被唤醒的进程优先数高于现有执行的进程,则剥夺现行进程的执行权。(6)当三个进程都处于等待状态时,本模拟系统退出执行。四、实验要求1、仔细阅读程序,然后调试该程序;2、将程序中进程的优先数改为随机数或者改为动
23、态优先数,重新调试该程序;3、将p1先执行改为p2或者p3先执行,并与p1先执行时的结果进行比较;4、写好书面实验报告,于下次实验课时提交实验报告。五、示例1.数据结构:(1)进程控制块PCBstructint id;char status;int priority;int waiter1;(2)信号量structint value;int waiter2;sem2(3)现场保护栈stackchar stack114每个进程都有一个大小为10个字的现场保护栈,用来保护被中断时的断点地址等信息。(4)全局变量int i;用以模拟一个通用寄存器char addr;用以模拟程序计数器int m1,m
24、2;为系统设置的公用数据被三个进程共享使用。六、程序框图:略七、程序说明:本程序是用C语言编写,模拟三个进程的运行情况,过程在运行中要调用P操作申请信号量,如果该过程得到其申请的信号量,就继续运行,否则P操作阻塞该申请过程的运行,并将过程置为所申请信号量的等待者,如果已有其它过程在等待同一信号量则将该申请过程排在所有等待进程之后。过程运行中除了调用P操作申请信号量外,还要调用V操作释放信号量,V操作在释放信号量之后,还将唤醒因申请此信号量而被阻塞的过程。在程序运行的三个过程(PROCESS1,PROCESS2,PROCESS3),其中过程运行中通过P操作申请信号量1,过程2通过V操作释放信号量
25、2,然后做一次操作申请信号量2。三个过程之间存在这样一种关系:过程1消耗的信号量1由过程2通过V操作产生,而过程3即释放信号量2也消耗信号量2。三个过程的运行通过进程调度模块同意安排,调度模块通过FIND()函数找到第一个就绪过程,如果当前没有过程已在运行,就直接运行此过程,如果有,则比较两者的优先数,然后运行优先权高者。七、源程序:#include <stdio.h>int m1;int m2;structint id;int waiter1;int priority;char status;pcb4;structint value;int waiter2;sem3;char s
26、tack114;int i,ep;char addr;void init();int find();int w2();int process1();int process2();int process3();int p(int,int ,char);int v(int,int ,char);main()init();printf("系统程序开始执行n");for(;)if(find()!=0) w2();else break;printf("系统程序结束n"); void init()int j,k;pcb0.status='w'
27、;pcb0.priority=4;for(j=1;j<=3;j+)pcbj.id=j;pcbj.status='r'pcbj.waiter1=0;pcbj.priority=j;for(j=1;j<=2;j+)semj.value=1;semj.waiter2=0;i=0;ep=0;addr='0'm1=0;m2=0;for(j=1;j<=10;j+)for(k=1;k<=3;k+)stackjk='0' int find()int j;for(j=1;j<=3;j+)if(pcbj.status='
28、;r') return(j);return(0); int w2()int pd;pd=find();if(pd=0) return(0);else if(ep=0)pcbpd.status='e'ep=pd;printf("进程%d正在执行n",ep);else if(pcbpd.priority<pcbep.priority)pcbep.status='r'printf("读取进程%dn",pcbpd.id);pcbpd.status='e'ep=pd; printf(
29、"运行进程%dn",ep);i=stack1ep;addr=stack2ep;switch(ep)case 1:process1();break;case 2:process2();break;case 3:process3();break;default:printf("当前进程出现错误%dn",ep);break; int process1()if(addr='m') goto m;i=1;a:printf("进程1在信号量sem1上调用P操作n");if(p(1,1,'m')=0) re
30、turn(0);else goto m;m:printf("打印进程1.m1=%dn",m1);printf("打印进程1.i=%dn",i);i+=5; goto a; int process2()if(addr='m') goto m;if(addr='n') goto n;i=1; a:printf("进程2在信号量sem2上调用P操作n");if(p(2,2,'m')=0) return(0); m:m1=2*m2;printf("
31、;进程2在信号量sem1上调用V操作m1=%dn",m1);if(v(1,2,'n')=0) return(0);elsen:printf("打印进程2.i=%dn",i);i+=10;goto a; int process3()if(addr='m') goto m;if(addr='n') goto n;i=1;a:if(i>4)printf("进程3在信号量sem2上调用P操作n");if(p(2,3,'n')=0) return(0);n:m2=i;prin
32、tf("进程3在sem2信号量上调用V操作m=%dn",m2);if(v(2,3,'m')=0) return(0);elsem:i+=1;goto a; int p(int se,int p,char ad)int w;semse.value-;if(semse.value=0) return(1);printf("阻塞当前进程%dn",p);pcbp.status='w'ep=0;pcbp.waiter1=0;w=semse.waiter2;if(w=0) semse.waiter2=p;elsewhile(
33、pcbw.waiter1!=0) w=pcbw.waiter1;pcbw.waiter1=p;stack1p=i;stack2p=ad;return(0); int v(int se,int p,char ad)int w;semse.value+;if(semse.value>0) return(1);w=semse.waiter2;semse.waiter2=pcbw.waiter1;pcbw.status='r'printf("唤醒进程%dn",w);stack1p=i;stack2p=ad;return(0);实验四 虚拟存储器管理一
34、、实验目的 1、为了更好的配合操作系统有关虚拟存储器管理章节的教学。 2、加深和巩固学生对于请求页式存储管理的了解和掌握。3、提高学生的上机和编程过程中处理具体问题的能力。二、实验内容请求页式存储管理是一种常用的虚拟存储管理技术。本实验的目的是通过请求页式存储管理中页面置换算法模拟设计,了解虚拟存储技术的特点,掌握请求页式存储管理的页面置换算法。 1通过随机数产生一个指令序列,共320条指令。指令的地址按下述原则生成:50%的指令是顺序执行的。25%的指令是均匀分布在前地址部分。25%的指令是均匀分布在后地址部分。 具体的实施方法是:在0,319指令地址之间随机选取一起点;顺序执行一条指令,即
35、执行地址为m+1的指令;在前地址0,m+1中随机选取一条指令并执行,该指令的地址为m;顺序执行一条指令,其地址为m;在后地址m+2,319中随机选取一条指令并执行;重复上述步骤ae,直到执行320次指令。2将指令序列变换成为页地址流设:a.页面大小为1K;b.用户内存容量为4到32页;c.用户虚存容量为32K。在用户虚存中,按每K存放10条指令排列虚存地址,即320条指令在虚存中的存放方式为:第0条第9条指令为第0页,对应虚存地址为0,9;第10条第19条指令为第1页,对应虚存地址为10,19 . .第310条第319条指令为第31页,对应虚存地址为310,319。按以上方式,用户指令可组成3
36、2页。3、输出下述各种算法在不同内存容量下的命中率。a.先进先出的算法;b.最近最少访问算法;c.最近最不经常使用算法。其中: 命中率=1-页面失效次数/页地址流长度 页地址流长度为320,页面失效次数为每次访问相同指令时,该指令所对应的页不在内存的次数。三、实验要求 实验课时4学时。要求画出利用各种算法置换时的置换图,并可以分析说明。编程可分为几个部分完成:指令的分页,算法的选择,算法的实现,命中率的输出。编写程序前可先阅读Linux源代码页面换入: static int do_swap_page(struct mm_struct * mm,struct vm_area_struct * v
37、ma,unsigned long address,pte_t * page_table,swp_entry_t entry,int write_access)struct page *page = lookup_swap_cache(entry);pte-t pte;if (!pgae)lock_kernel( );swapin_readahead(entry);page = read_swap_cache(entry);unlock_kernel( );if (!page)return -1;flush_page_to_ram(page);flush_icache_page(vma,page
38、);mm->rss+;pte = mk_pte(page,vma->vm_page_prot);/*Freeze the "shared" ness of the page,ie page_count + swap_count.*Must lock page before transferring our swap count to already*obtained apge count.*/lock_page(page);swap_free(entry);if (write_access && !is_page_shared(page)pte
39、= pte_mkwrite(pte_mkdirty(pte);UnlockPage(page);set_pte(page_table,pte);/*No need to invalidate - it was non-present before */update_mmu_cache(vma,address,pte);return 1;/*Minor fault */四、源程序指导#include <stdlib.h>#include <stdio.h>#include <math.h>int i,M,j,k,s,h,t;char r;float int_c
40、ount,page_count,v;float vc29;int l,m,n,o,p;int address320;int page3210,pageNo32,page_Index200,page_IndexNo200,page_change200;pagechange() for(i=0;i<32;i+) for(j=0;j<10;j+) pageij=10*i+j; pageNoi=i; Ram_Make() int x,y; Loop1: l=random(319); if(l>1) m=l+1; else goto Loop1; Loop2: x=random(319
41、); if(x<l-1) n=x; o=n+1; else goto Loop2; Loop3: y=random(319); if(y>o) p=y; else goto Loop3;fifo() for(s=4;s<=32;s+) page_change0=page_IndexNo0; int_count=1; page_count=1; for(h=1;h<5*M;h+) if(page_IndexNoh!=page_IndexNoh-1)page_count+=1; for(t=0;t<s;t+) if(page_IndexNoh=page_changet
42、) goto Loop8;else if(page_IndexNoh!=page_changet && page_changet=999) page_changet=page_IndexNoh; int_count+; goto Loop8; for(k=0;k<s;k+) page_changek=page_changek+1; page_changes-1=page_IndexNoh; int_count+=1; Loop8: ; v=int_count/page_count; vcs-4=1-v; printf("Vc for page %d: vc%d=
43、%.3f $ ",s,s-4,vcs-4); for(i=0;i<200;i+)page_changei=999; lru() int q,temp; for(s=4;s<=32;s+) page_change0=page_IndexNo0; page_count=1; int_count=1; for(h=1;h<5*M;h+) if(page_IndexNoh!=page_IndexNoh-1)page_count+=1; for(t=0;t<s;t+) if(page_IndexNoh!=page_changet && page_chan
44、get=999) page_changet=page_IndexNoh; int_count+; goto Loop9;else if(page_IndexNoh=page_changet) for(q=t;q<s;q+) if(page_changeq+1!=999) temp=page_changeq; page_changeq=page_changeq+1; page_changeq+1=temp; goto Loop9; for(k=0;k<s;k+)page_changek=page_changek+1; page_changes-1=page_IndexNoh; int
45、_count+=1; Loop9:; v=int_count/page_count; vcs-4=1-v; printf("The vc for the page %d: vc%d=%.3f $ ",s,s-4,vcs-4); for(i=0;i<200;i+)page_changei=999; opt() int i,count32,max,j; for(j=0;j<32;j+) countj=0; for(s=4;s<=32;s+) page_change0=page_IndexNo0; page_count=1; int_count=1; for(h
46、=1;h<5*M;h+) if(page_IndexNoh!=page_IndexNoh-1)page_count+=1; for(t=0;t<s;t+) if(page_IndexNoh=page_changet) goto Loop10;else if(page_IndexNoh!=page_changet && page_changet=999) page_changet=page_IndexNoh; int_count+; goto Loop10; for(t=0;t<s;t+) for(i=h;i<5*M;i+) if(page_changet
47、=page_IndexNoi) countt=i; goto Loop11; page_changet=page_IndexNoh;int_count+=1;goto Loop10; Loop11:; max=0; for(t=0;t<s;t+) if(countt>max) max=countt; for(t=0;t<s;t+) if(countt=max) page_changet=page_IndexNoh; int_count+=1; Loop10:; v=int_count/page_count; vcs-4=1-v; printf("The vc for
48、 page %d: vc%d=%.3f $ ",s,s-4,vcs-4); for(i=0;i<200;i+)page_changei=999; main() char c;Loop4: clrscr(); for(i=0;i<320;i+) addressi=rand(); for(i=0;i<200;i+) page_changei=999; printf("Put The Value Of The M: "); scanf("%d",&M); pagechange(); for(j=0;j<M;j+) Ra
49、m_Make(); page_Index5*j+0=l;page_IndexNo5*j+0=l/10; page_Index5*j+1=m;page_IndexNo5*j+1=m/10; page_Index5*j+2=n;page_IndexNo5*j+2=n/10; page_Index5*j+3=o;page_IndexNo5*j+3=o/10; page_Index5*j+4=p;page_IndexNo5*j+4=p/10; for(k=0;k<5*M;k+) printf("page_Index%d=%d,page_IndexNo%d=%dn",k,pag
50、e_Indexk,k,page_IndexNok); printf("n"); Loop5: printf("select the method for page_exchange:n"); printf("1.)FIFOn2.)LRUn3.)OPTn"); printf("Put The select of The method: "); scanf("%s",&r); switch(r) case '1': fifo(); break;case '2': lru(); break;case '3': opt(); break;default: printf("n"); printf("Put the
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 保护地球建议书15篇
- 中秋节国旗下讲话稿(11篇)
- 人性的弱点读后感(15篇)
- 仲夏夜之梦的读后感范文
- 中学秋季田径运动会开幕词
- 英语代词课件教学课件
- 探究新课改下高中数学有效教学的几点策略
- 影像科危急值报告制度
- 影响心理挫折承受能力的因素
- 联考协作体八年级上学期语文12月月考试卷
- 慕课《自然辩证法概论》课后习题及期末考试参考答案
- 小学译林版英语五年级上册Unit4-Cartoon-time名师课件
- 毕业设计-装配流水线PLC控制系统
- 公安派出所建筑外观形象设计规范1
- (施工方案)双梁桥式起重机安装施工方案
- 幼儿园教学课件问个不停的小鳄鱼tigerlee
- 四川泸州遗赠案
- 调机品管理规定
- 检测公司检验检测工作控制程序
- 社工机构项目管理制度
- 充电桩整体解决方案PPT幻灯片(PPT 27页)
评论
0/150
提交评论