操作系统进程创建模拟_第1页
操作系统进程创建模拟_第2页
操作系统进程创建模拟_第3页
操作系统进程创建模拟_第4页
操作系统进程创建模拟_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

进程创建模拟,实验目的,1)理解进程创建相关理论;2)掌握进程创建方法;3)掌握进程相关数据结构。,实验内容:,本实验针对操作系统中进程创建相关理论进行实验。要求实验者输入实验指导书提供的代码并进行测试。代码简化了进程创建的多个步骤和内容。进程的树形结构采用广义二叉树的方式进行存储。,实验原理:,1)进程控制块为了描述和控制进程的运行,系统为每个进程定义了一个进程控制块(PCB),它是进程实体的一部分,是操作系统管理进程最重要的数据结构。其主要包含四类信息:(1)进程标识符它唯一地标识一个进程。通常包括进程号pid,父进程号ppid和用户号uid。(2)处理机状态处理器的状态通常由处理机的各种寄存器中的内容组成。PCB存放中断(阻塞,挂起)时的各寄存器值,当该进程重新执行时,可以从断点处恢复。主要包括:a)通用寄存器;b)指令计数器;c)程序状态字PSW;d)用户栈指针。,实验内容:,(3)进程调度信息a)进程状态;b)进程优先级(用于描述优先使用cpu级别的一个整数,高优先级的进程先得到cpu,通常情况下,优先值越小优先级越高);c)其它信息(等待时间、总执行时间等);d)事件(等待原因)。(4)进程控制信息a)程序和数据的地址(程序在内存和外存中的首址);b)进程同步和通信机制;c)资源列表(进程除CPU以外的所有资源);d)链接指针(进程队列中指向下一个进程的PCB首址)。,2)进程创建流程(1)申请空白PCB为新进程申请获得唯一的数字标识符,并从PCB集合中索取一个空白PCB。如果无空白PCB,可以创建一个新的PCB。在本实验中,每次动态创建PCB。(2)为新进程分配资源为新进程分配内存空间和栈空间。(3)初始化进程控制块a)初始化标识信息;b)初始化处理机状态信息;c)初始化处理机控制信息。(4)将新进程插入就绪队列,实验内容:,p2,p12,p10,p6,p11,p8,p3,p4,p5,p1,p9,p7,图1-1进程树,实验内容:,进程树用于描述进程家族关系,如图1-1中可以看出,进程P1创建了进程P2、P3、P4、P5,而P2又创建了P6、P7、P8。在进程创建过程中,需要对每一个新增加的进程加入到进程树中,有了清晰的父子关系,可以使资源继承或进程删除等操作变得很方便。4)进程总链它是一个PCB链表,每一个新创建的进程必须把其PCB放入总链中,该总链可以对破坏的进程树进行修复,也方便PCB查找。,程序清单:,实验步骤:,输入实验提供的代码后,可以输入createpc命令创建进程,输入showdetail显示每个进程及其子进程的信息,测试命令解释如下:1)createpc创建进程命令。参数:1、pid(进程id)2、ppid(父进程id)3、prio(优先级)。示例:createpc(1,0,1)。创建一个进程,其进程号为1,父进程号为0,优先级为1.createpc(2,1,2)。创建一个进程,其进程号为2,父进程号为1,优

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论