ImageVerifierCode 换一换
格式:DOCX , 页数:27 ,大小:1.23MB ,
资源ID:6469871      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/6469871.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(操作系统实验er要点.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

操作系统实验er要点.docx

1、操作系统实验er要点操作系统实验指导书淮阴工学院 计算机科学与工程学院2014.9目 录实验一 熟悉Windows2000/XP中的进程和线程实验二 编程实现进程的控制实验三 Windows中的线程与线程同步现象实验四 操作系统中的经典线程同步问题实验五 死锁避免银行家算法的实现实验六 Windows内存管理实验七 分页内存管理算法模拟实验八 页面置换算法的模拟实现实验九 磁盘调度中的电梯调度算法实现实验十 Windows中的消息机制实验一 熟悉Windows2000/XP中的进程和线程一、实验目的1、熟悉Windows2000/XP中任务管理器的使用。2、通过任务管理器识别操作系统中的进程和

2、线程的相关信息。 3、掌握利用spy+.exe来察看Windows中各个任务的更详细信息。二、实验理论基础及教材对应关系1、实验理论基础:(1) 操作系统中的进程和线程的概念;(2) 进程PCB的各项指标含意;2、本实验内容主要对应于教材第2章。三、实验内容与步骤1、 启动操作系统自带的任务管理器:方法:直接按组合键Ctrl+Alt+Del,或者是在点击任务条上的“开始”“运行”,并输入“taskmgr.exe”。如下图所示:2、 调整任务管理器的“查看”中的相关设置,显示关于进程的以下各项信息,并完成下表(填满即可):表一:统计进程的各项主要信息序号进程名称进程ID线程数量占用内存优先级占C

3、PU时间虚拟内存1Acrobat.exe3744685064k标准0:00:0099828k2WINWORD.EXE3272847180K标准0:00:2481224k3Taskmgr.exe263635348k高0:00:022136k4Csrss.exe756128856k高0:00:022164k5Vmount2.exe103235756k标准0:00:003504k6MATLAB.exe3281356772k标准0:00:0166580k7Sqlservr.exe284261128k标准0:00:0053308k8System483300k标准0:00:0428k3、 从桌面启动办公软

4、件“Word”,在任务管理器中找到该软件的登记,并将其结束掉。再从任务管理器中分别找到下列程序:winlogon.exe、lsass.exe、csrss.exe、smss.exe,试着结束它们,观察到的反应是 任务管理器无法结束进程 ,原因是 该进程是关键系统进程 。4、 在任务管理器中找到进程“explorer.exe”,将之结束掉,并将桌面上你打开的所有窗口最小化,看看你的计算机系统起来什么样的变化 桌面上的图标都不见了,Windows图形界面无法使用,电脑只剩下一张壁纸 、得到的结论是 explorer.exe进程用于管理Windows的图形界面,包括开始菜单、任务栏、桌面和文件管理,对

5、系统的稳定性有很大帮助。 (说出explorer.exe进程的作用)。5、运行“spy+.exe”应用软件,点击按钮“”,切换到进程显示栏上,查看进程“explorer.exe”的各项信息,并填写下表:表二:统计线程的各项信息进程:explorer.exe 中的各个线程序号进程ID线程ID基本优先级当前优先级CPU时间上下文开关1000006E8000006EC8100:00:00.43796642000006E8000006F48100:00:00.0001213000006E80000006FC9130:00:01.3281087954000006E8000007008100:00:00.

6、00085000006E8000007088100:00:00.000186000006E8000007148100:00:00.00011507000006E8000007C48100:00:00.07871138000006E8000007D015150:00:00.000129000006E8000008E88110:00:00.156387610000006E800000AC48100:00:00.0006211000006E800000D648100:00:00.000431213146、注意某些线程前有“”,如图所示:,说明二者之间的差异是 有无子进程,“+”表示有子进程 。四、实

7、验材料的提交与成绩评定1、本实验的实验报告一份(电子版或纸质版一份,具体形式由任课教师确定,格式参考学院统一实验报告)2、实验源程序一份,请表明题号(电子版)备注:做下一次实验之时提交上一次实验的材料,由各班学习委员以班为单位收集并上交任课教师。3、实验成绩总分为10分,由指导老师根据学生实验表现和实验材料进行评定,本门课程结束后实验平均成绩(实验总成绩/实验次数)按照10的比例记入期末考试总成绩。实验二 编程实现进程的控制一、实验目的1、进一步掌握进程的相关概念2、掌握Windows2000/XP有关进程操作的API函数的使用。3、了解进程的地址空间的含义。二、实验理论基础及教材对应关系1、

8、实验理论基础:(1)操作系统中的进程和线程的概念;(2)进程的各种控制;2、本实验内容主要对应于教材第2章和第3章的内容。三、实验内容与步骤1、启动应用程序“Process Information.exe”,应出现下面的界面:2、依次改变上图中“下拉组合框”的选项,读出界面中显示的各项信息,并完成下表(填满即可):(统计中要包含winlogon.exe、lsass.exe、csrss.exe、smss.exe等应用程序)表一:统计进程的一些信息序号进程名称进程ID父进程ID优先级线程数Heaps数量模块数量1winlogon.exe51600000204高32lsass.exe58000000

9、244普通83csrss.exe428000001AC普通94csrss.exe468000001D4普通125smss.exe27200000110普通26Spoolsv.exe131600000524普通127Devenv.exe59000000170C普通218Lsm.exe5880000024C普通103、从上表中观察“进程ID”和“父进程ID”两栏,总结并画出下列程序间的亲缘关系:winlogon.exe、lsass.exe、csrss.exe、smss.exe。4、打开“ProcessInfo”工程文件,打开文件“ProcessInfo.cpp”,找到函数:CreateProces

10、s()的使用方法。按下列步骤建立一个工程项目,将记事本应用程序运行起来,即创建了一个新的进程。 步骤1、创建一个基于MFC的应用程序。步骤2、在应用程序类型中选取“基于对话框”的选项。步骤3、直接点击完成,系统将为你创建一个工程项目。步骤4、然后在“资源视图”中,打开对话框“IDD_MY_DIALOG”,将出现以下对话框:步骤5、打开界面上的“工具箱”,放置一个“按钮”,如下图:步骤6、双击上面的“Button1”按钮,切换到代码的编写处:输入以下语句:步骤7、编译并运行此工程项目,看看运行的结果。四、实验材料的提交与成绩评定1、本实验的实验报告一份(电子版或纸质版一份,具体形式由任课教师确定

11、,格式参考学院统一实验报告)2、实验源程序一份,请表明题号(电子版)备注:做下一次实验之时提交上一次实验的材料,由各班学习委员以班为单位收集并上交任课教师。3、实验成绩总分为10分,由指导老师根据学生实验表现和实验材料进行评定,本门课程结束后实验平均成绩(实验总成绩/实验次数)按照10的比例记入期末考试总成绩。实验三 Windows中的线程与线程同步现象一、实验目的1、掌握Windows中线程的操作。2、熟悉线程不同步时的现象及环境因素。3、掌握一种同步对象的使用。二、实验理论基础及教材对应关系1、线程和线程不同步的认识。2、线程间的同步和通信。3、本实验内容主要对应于教材第2章中关于线程的各

12、节。三、实验内容与步骤1、定义全局变量 int i = 0; 初始值置为 0。2、创建两个线程,一个对 i 执行加 1 操作,另一个对 i 执行减 1 操作。两个线程执行相同的次数。显然,正常情况下,i 的仍然保持为 0。#include #include #define MaxCount 9000000 / 循环次数要很大,可多次尝试一些值DWORD _stdcall fun1( LPVOID p1) for( int j =0 ;j MaxCount;j+) i+; return 0;DWORD _stdcall fun2( LPVOID p1) for( int j =0 ;j MaxC

13、ount;j+) i-; return 0;3、观察两个线程执行后的情况,可以发觉最后 i 的值不一定是 0, 有时是很大的正数,有时是很大的负数,这就是多个线程在操作同一个变量 i时,未同步时带来的严重问题。 还应该了解,在多个线程操作共享的变量时,才需要考虑同步问题。5、 给这两个线程加上同步代码,再来观察对 i 值的影响。步骤2的函数稍微改动即可:CRITICAL_SECTION cs;DWORD _stdcall fun1( LPVOID p1) for( int j =0 ;j MaxCount;j+) :EnterCriticalSection(&cs); i+; :LeaveCr

14、iticalSection(&cs); DWORD _stdcall fun2( LPVOID p1) for( int j =0 ;j = RequestMatrixk0 & AvailResource1 = RequestMatrixk1 & AvailResource2 = RequestMatrixk2 & AvailResource3 = RequestMatrixk3)/若资源能使进程ProcessID结束 for(int i=0;i4;i+) AvailResourcei -= AllocMatrixki; / 恢复资源 int SearchSecurity(int level)

15、 /递归函数 if(level = 4) else SearchSecurity(level+1); / 有条件递归调用自己 其余由大家自行完成。四、实验材料的提交与成绩评定1、本实验的实验报告一份(电子版或纸质版一份,具体形式由任课教师确定,格式参考学院统一实验报告)2、实验源程序一份,请表明题号(电子版)备注:做下一次实验之时提交上一次实验的材料,由各班学习委员以班为单位收集并上交任课教师。3、实验成绩总分为10分,由指导老师根据学生实验表现和实验材料进行评定,本门课程结束后实验平均成绩(实验总成绩/实验次数)按照10的比例记入期末考试总成绩。实验六 Windows内存管理一、实验目的1、

16、熟悉程序的运行时动态链接。2、熟悉Windows中内存的分页管理方式。 3、了解虚拟内存的用法,熟悉Windows中相应的API函数。二、实验理论基础及教材对应关系1、应用程序的动态链接。2、内存的分页管理、虚拟内存的技术。3、本实验内容主要对应于教材第4章。三、实验内容与步骤1、运行“SystemInfo.exe”应用程序,出现如下界面:从该界面上可以看到Windows2000/XP系统中的分页大小(Page Size)是:4,096,即4K字节,也可以看到本机所安装的处理器的个数是:1个。打开工程文件,熟悉信息获取函数的使用:SYSTEM_INFO sinf; GetSystemInfo(

17、&sinf);2、运行“VMSTATE.exe”应用程序,出现如下界面:从界面上可以看到,本计算机中所安装的物理内存的大小“TotalPhys”,可用物理内存的大小“AvailPhys”。打开源文件,熟悉或者信息函数的使用:MEMORYSTATUS ms = sizeof(ms) ; GlobalMemoryStatus(&ms);3、运行“VMAlloc.exe”应用程序,掌握其用法和功能:打开源文件,熟悉以下操作虚拟存储空间函数的使用: VirtualAlloc( )、VirtualQuery( )、VirtualFree( )。4、运行“VMMap.exe”应用程序,了解程序的功能,读懂

18、其显示的每一行信息的含义:从上面显示的信息中,谈谈自己对虚拟储存空间的认识(100字以内)。 四、实验材料的提交与成绩评定1、本实验的实验报告一份(电子版或纸质版一份,具体形式由任课教师确定,格式参考学院统一实验报告)2、实验源程序一份,请表明题号(电子版)备注:做下一次实验之时提交上一次实验的材料,由各班学习委员以班为单位收集并上交任课教师。3、实验成绩总分为10分,由指导老师根据学生实验表现和实验材料进行评定,本门课程结束后实验平均成绩(实验总成绩/实验次数)按照10的比例记入期末考试总成绩。实验七 分页内存管理算法模拟一、实验目的1、熟悉基本分页存储管理。2、建立描述分页内存管理中的页目

19、录表、页表结构。 3、实现进行虚拟内存到物理内存的映射算法。二、实验理论基础及教材对应关系1、操作系统中内存管理。2、基本分页内存、分段内存管理。3、页目录表、页表的作用,以及虚拟地址到物理地址的映射关系。三、实验内容与步骤题目:分页存储管理的设计与实现。某系统采用了两级页表机制,可使页表所占用内存尽量少,分页地址变换机构如下图所示:分页地址变换机构页目录表共1024项,每个页表1024项,每页的大小是4K个字节。地址转换时,先由分段部件生成线性地址,再由上面所述的分页部件,根据线性地址中的页目录索引在页目录表中找相应的项,该项值为所需页表在内存的块号,找到该页表后,然后按第2112位的页表索

20、引找到所需页的物理内存起始地址,把它与12位偏移直接相加得到32位的物理地址。设系统有如表1中所示的10个段,已知:18段从内存的200000H处开始由低地址到高地址连续存放,映射到3G4M开始的线性地址空间;9段(缓冲区)放在400000H开始的内存,映射的线性地址同物理地址;显存从B8000H开始,映射到3G开始的线性地址空间。表1(1)、请设计并填写页目录表和页表(需说明每张表的内存地址)(2)、线性地址为:C0401010H、C0404010H、C0414010H,则物理地址是多少,所在段的段名是什么?(需写出计算的详细步骤)实验步骤:1、定义页目录表、页表的数据结构,以及必要的数据。

21、#define Page_Size 4096 / 页面大小#define Pages 26 / 本题定义的总的页面个数#define FirstLinearAddr 0xC0000000+0x400000/ 线性地址3G + 4M#define SecondLinearAddr 0x400000 / 线性地址0x400000#define ThirdLinearAddr 0xC0000000/ 线性地址3G#define IDT 0#define TSS 1#define GDT 2#define PDT 3 / 页目录表的下标#define PT1 4 / 第1 个页表的下标#define PT2 5 / 第2 个页表的下标#define PT3 6 / 第3 个页表的下标#define PT4 7 / 第4 个页表的下标/ .省略其它页表#define CODE 20#define STACK 21#define DATA 22#define BUFF

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

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