下载此文档

计算机操作系统课程设计.docx


文档分类:IT计算机 | 页数:约66页 举报非法文档有奖
1/66
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/66 下载此文档
文档列表 文档介绍
计算机操作系统课程设计.docx裸程筱针报告吊2014/2015学年第2学期课程名称:操作系统课程设计专业班级:计算机科学与技术1301班学号: 姓名: 指导教师: 目录题冃1进程创建模拟实现 错误!未定义书签。题H2进程调度算法的实现题目3银行家算法的实现 20题冃4磁盘调度算法的实现 29题冃5页面置换算法的实现 43总结 ;创建进程树屮4层以上的树型结构。理解进程创建相关理论;掌握进程创建方法;掌握进程相关数据结构。:装冇Linux操作系统(焜拟机)的计算机一台。软件环境:vim编辑器、VisualC++。—。在系统中运行的进程都是由进程创建出來的,创建进程的进程与被创建的进程之间构成父子关系,子进程还可以再创建它的子进程,由此可以构成一颗进程树,如图1・1所示。图1-1进程树根进程子进程的创建是基于父进程的,因此一直追溯上去,总有一个进程是原始的,是没有父进程的,这个进程是根进程。根进程没有可复制和参考的对象,它所拥有的所有信息和资源都是强制设置的,不可复制的,这个过程称为手工设置,也就是说根进程是“纯手工打造”的,它是操作系统中“最原始”的一个进程,它是个模子,后面的任何进程都是基于根进程生成的。在Linux系统屮的这个根进程的进程号是0,也把它叫做0号进程。创造0号进程主要包描两部分:一是创建进程0运行时所需的所有信息,即填充0号进程;二是调度0号进程的执行,即让它“动”起来,只冇动起来,才是真正意义上的进程,符合进程动态的概念。(3)进程的创建过程一但操作系统发现了要求创建进程的事件后,便调用进程创建原语按下述步骤创建一个新进程。A、 申请空白PCB为新进程屮请获得唯一的数字标识符,并从PCB集合中索取一个空白PCB。如果无空RPCB,可以创建一个新的PCB。在本实验中,每次动态创建PCB。B、 为新进程分配资源为新进程分配内存空间和栈空间。C、 初始化进程控制块a) 初始化标识信息;b) 初始化处理机状态信息;c) 初始化处理机控制信息。D、 (开始)(1)主程序源代码:#include"”pnode*proot;//系统进程树的树根pnode*plink;//系统进程树的连接头intcreatepc(int*para){pnode*p,*pl,*pp;//定义进程节点intpflag;//标识pflag=0;for(p=plink;p;p=p->next){if(p->node->pid==pani[0])//检查进程是否已经存在{printf(”进程%d已经存在!\nH,para[0]);return-1;}if(p->node->pid==pani[l])//查找父进程{pflag=l;PP二P;}}if(!pflag){printf(“父进程%d不存在\n”,para[l]);return-2;}〃初始化一个新的进程控制块pl=newpnode;//为pl创建一个新的节点pl->nodc=ncwpcb;//为pl节点创建一个新的进程控制块p1->node->pid=para[0];//X'Jpl进程id进行赋值pl->node->ppid=para[l];〃对pl父进程id进行赋值p1->node->prio=para[2J;Wpl的优先级进行赋值pl->sub=NULL;//初始化pl->ncxt=NULL;//初始化p1->brother=NULL;//^J始化〃添加进程树if(!pp->sub)pp->sub=p1;else{for(p=pp->sub;p->brother;p=p->brother);p->brother=p1;}//添加进程连接for(p=plink;p->next;p=p->next);p->next=p1;return0;}〃显示进程信息voidshowdetail(){pnode吝p,*pl;p=plink;//定位到头节点for(;p;)〃打印所有sub的信息{printf(,,%d(优先级%d):",p->node->pid,p->node->prio);pl=p・>sub;for(;p1;)//打印出p1的控制块(sub)信息{printf("%d(优先级%d)",p1->node->pid,p1->node->prio);pl=pl・>brother;}printf(M\nM);p=p->next;}printf(M\nM);}intmain(){initerror();shorteflag,pflag;charcmdstr[32

计算机操作系统课程设计 来自淘豆网www.taodocs.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数66
  • 收藏数0 收藏
  • 顶次数0
  • 上传人sssmppp
  • 文件大小423 KB
  • 时间2019-11-18