OS实验1进程管理.doc

OS实验1进程管理.doc

ID:50985519

大小:88.50 KB

页数:7页

时间:2020-03-08

OS实验1进程管理.doc_第1页
OS实验1进程管理.doc_第2页
OS实验1进程管理.doc_第3页
OS实验1进程管理.doc_第4页
OS实验1进程管理.doc_第5页
资源描述:

《OS实验1进程管理.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、实验要求1.每位同学上机前作好充分的准备工作,预习本次实验的内容,事先熟悉与实验有关的软硬件环境。2.实验时遵守实验室的规章制度,爱护实验设备,对于实验设备出现的问题,要及时向指导老师汇报。每个实验需要上交一个文件夹,名称格式:[班级][学号]_[实验题号](例:wl05103_4),包含下面两部分:3.提交实验程序格式:[班级][学号]_[实验题号].[扩展名]例:网络051班学号为03的学生第4个实验的文件名为:wl05103_4.c/cpp4.提交实验报告电子版格式:[班级][学号]_[实验题号].[扩展名]例:网络051班学号为03

2、的学生第4个实验报告为:wl05103_4.doc实验报告按照实验名称、实验目的、实验内容,实验过程(程序设计、实现与调试)、实验总结五部分书写,实验报告抬头同纸质实验报告。其中,实验总结是对于实验过程中出现的问题或疑惑的分析与思考。实验一、进程管理(3学时、必做)一、实验目的通过实验使学生进一步了解进程、进程状态、进程控制等基本概念。基本能达到下列具体的目标:1、理解进程PCB的概念,以及PCB如何实现、如何组织以及管理。2、复习数据结构中如何对链的操作,包括建链、删除、插入结点等,来实现进程的管理。 二、实验内容1、建立一个结点,即PC

3、B块包括用户标识域、状态域(执行、等待、就绪)、link域。 2、建立三个队列(执行队列、就绪队列、等待队列)。 3、根据进程状态转换实现对三个队列的具体操作。具体的驱动可以采用时间片算法或手动调度的形式完成三个状态之间的转换4、用switch选择语句选择状态。 5、按照自己的设定能完成所有的状态转换的运行(包括创建和运行结束)。三、实验步骤1、复习进程管理三状态模型部分内容。2、预习C++Builder或VC++、Delphi、JBuilder线程编程。3、运行示例程序,进一步明确实验要求。可以采用控制台模式或窗口模式。4、上机编程、调试

4、程序。5、完成实验报告。实验1的附加资料1、控制台模式进程管理的使用说明图1.输入结束字符本程序是输入一个字符串,每个作为一个进程的名称,以指定的字符为结束字符,比较容易实现,其实可以在程序运行期间任意创建进程才是最好的。图2.输入进程名称一次性的创建了多个进程,进入三状态模型,按照要求进行状态之间的转移,只要输入1、2、3、4、5数字,按回车即可。图3.进程管理程序的主界面2、窗口模式的进程管理图4.简单进程管理的主界面创建进程进入就绪队列,其排序可以按照FIFO的形式,也可以按照优先级的形式,为此需要在PCB节点中增加优先级数。进程状态

5、的转化在三个队列之间实现,输入进程的名称,选择合适的功能按钮。如果不符合状态转换的规则,则弹出错误的对话框,说明原因。3、基于时间片调度的进程管理图5.基于时间片的进程管理主界面创建一个进程,给出工作量,每个进程所占的时间片大小为20个单位,实现就绪状态到执行状态之间的转化。如果一个进程在执行,点击其I/O请求即可产生阻塞,实现了等待一个事件的状态转移。阻塞状态到就绪状态需要事件发生,本程序为了简化,过40个时间单位自动解锁。本程序可以在VC、Delphi或VB程序设计语言中实现,容易使用时钟控件。在控制台模式下,该方式不是非常合适。4、W

6、indows2000进程控制Windows所创建的每个进程都从调用CreateProcess()API函数开始,该函数的任务是在对象管理器子系统内初始化进程对象。每一进程都以调用ExitProcess()或TerminateProcess()API函数终止。通常应用程序的框架负责调用ExitProcess()函数。对于C++运行库来说,这一调用发生在应用程序的main()函数返回之后。这些详细的内容可以参考相关的MSDN模块。1)创建进程CreateProcess()调用的核心参数是可执行文件运行时的文件名及其命令行。表2-1详细地列出了每

7、个参数的类型和名称。 表1CreateProcess()函数的参数参数名称使用目的LPCTSTRlpApplivationName全部或部分地指明包括可执行代码的EXE文件的文件名LPCTSTRlpCommandLine向可执行文件发送的参数LPSECURIITY_ATTRIBUTESlpProcessAttributes返回进程句柄的安全属性。主要指明这一句柄是否应该由其他子进程所继承LPSECURIITY_ATTRIBUTESlpThreadAttributes返回进程的主线程的句柄的安全属性BOOLbInheritHandle一种标志

8、,告诉系统允许新进程继承创建者进程的句柄DWORDdwCreationFlage特殊的创建标志(如CREATE_SUSPENDED)的位标记LPVOIDlpEnvironment

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。