- 1、本文档共27页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
操作系统教程
实验指导书
姓名: 学号:::赵帼英
2014—11—28
目录
实验一 WINDOWS进程初识 3
1、实验目的 3
2、实验内容和步骤 3
3、实验结论 4
4、程序清单 4
实验二 进程管理 7
背景知识 7
1、实验目的 10
2、实验内容和步骤 10
3、实验结论 12
4、程序清单 12
实验三 进程同步的经典算法 17
背景知识 17
1、实验目的 18
2、实验内容和步骤 18
3、实验结论 19
4、程序清单 20
实验四 存储管理 24
背景知识 24
1、实验目的 28
2、实验内容和步骤 28
3、实验结论 34
4、程序清单 34
实验一 WINDOWS进程初识
实验目的
学会使用VC编写基本的Win32 Consol Application(控制台应用程序)。
掌握WINDOWS API的使用方法。
编写测试程序,理解用户态运行和核心态运行。
实验内容和步骤
(1)编写基本的Win32 Consol Application
步骤1:登录进入Windows,启动VC++ 6.0。
步骤2:在“FILE”菜单中单击“NEW”子菜单,在“projects”选项卡中选择“Win32 Consol Application”,然后在“Project name”处输入工程名,在“Location” 处输入工程目录。创建一个新的控制台应用程序工程。
步骤3:在“FILE”菜单中单击“NEW”子菜单,在“Files”选项卡中选择“C++ Source File”, 然后在“File” 处输入C/C++源程序的文件名。
步骤4:将清单1-1所示的程序清单复制到新创建的C/C++源程序中。编译成可执行文件。
步骤5:在“开始”菜单中单击“程序”-“附件”-“命令提示符”命令,进入Windows“命令提示符”窗口,然后进入工程目录中的debug子目录,执行编译好的可执行程序:
E:\课程\os课\os实验\程序\os11\debughello.exe
运行结果 (如果运行不成功,则可能的原因是什么?) :
______________
(2)计算进程在核心态运行和用户态运行的时间
步骤1:按照(1)中的步骤创建一个新的“Win32 Consol Application”工程,然后将清单1-2中的程序拷贝过来,编译成可执行文件。
步骤2: 在创建一个新的“Win32 Consol Application”工程,程序的参考程序如清单1-3所示,编译成可执行文件并执行。
步骤3:在“命令提示符”窗口中运行步骤1中生成的可执行文件,测试步骤2中可执行文件在核心态运行和用户态运行的时间。
E:\课程\os课\os实验\程序\os12\debugtime TEST.exe
步骤4:运行结果 (如果运行不成功,则可能的原因是什么?) :
步骤5:分别屏蔽While循环中的两个for循环,或调整两个for循环的次数,写出运行结果。
屏蔽i循环:
___________________________________________________________________________
屏蔽j循环:
__
调整循环变量i的循环次数:
_i=30000
______________________________________________________________________________调整循环变量j的循环次数:
J=30000_
实验结论
调用printf函数时进入核心态运行,所以当循环屏蔽i循环只能进入用户态运行,不能进入到核心态。当改变循环的次数时不能改变进入核心态的时间,所以运行时间不变。而j循环的次数,核心态运行时间变化,运行总时间随j增大而增大
Windows所创建的每个进程都从调用CreateProcess() API函数开始,该函数的任务是在对象管理器子系统内初始化进程对象。每一进程都以调用ExitProcess() 或TerminateProcess() API函数终止。通常应用程序的框架负责调用 ExitProcess() 函数。对于C++ 运行库来说,这一调用发生在应用程序的main() 函数返回之后。
1. 创建进程
CreateProcess() 调用的核心参数是可执行文件运行时的文件名及其命令行。表 3-4详细地列出了每个参数的类型和名称。
?
表3-4 CreateProcess() 函数的参数
参数名称 使用目的 LPCTSTR lpApplivationName 全部或部分地指明包括可执行代码的EXE文件的文件名 LPCTSTR lpCommandL
您可能关注的文档
- 南工院机电一体化机电设备安装调试综合实训技术范例.doc
- 南罕隧道临时用电施工方案范例.doc
- XX电厂2号主变C套重瓦斯保护动作(工作班成员不慎踩踏到电缆)范例.doc
- 南京工业大学生工作手册范例.doc
- XX电厂汽机紧急跳闸控制系统调试措施范例.doc
- 南京机场高速公路建设体会范例.doc
- 南京九中2004—2005学年第二学期高二生物期末(专业班)范例.doc
- 掺Sb锗烯的电子结构范例.doc
- XX电厂润滑油、顶轴油及盘车装置调试措施范例.doc
- 南京南站地区农花河建设项目范例.doc
- 书面表达之建议信(讲义)-中考英语一轮复习(含答案).pdf
- 中考历史复习小众题型类:填空题、改错题、判断题(70题).pdf
- 2024年吉林省县乡教师选调考试《教育学》真题汇编带解析必背【基础题】.pdf
- 2025年中考语文备考之《朝花夕拾》名著导读及考题.pdf
- 小说标题的含义和作用(模拟突破)-2025年中考语文考点突破之小说阅读(解析版).pdf
- 阅读理解之应用文(练习)-中考英语一轮复习(含答案).pdf
- 小说情节作用(模拟突破)-2025年中考语文考点突破之小说阅读(原卷版).pdf
- 小说段落作用(模拟突破)-2025年中考语文考点突破之小说阅读(解析版).pdf
- 小说段落作用(试题专练)-2025年中考语文考点突破之小说阅读(解析版).pdf
- 2025年上海市16区初三语文一模试题汇编之现代文阅读二(记叙文)学生版.pdf
文档评论(0)