操作系统的实验报告一.docVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
操作系统的实验报告一

实 验 报 告 课程名称: 操作系统 实验项目: 进程创建与控制 姓 名: 专 业: 班 级: 学 号: 计算机科学与技术学院 2017年04月11日 实验项目名称: 进程创建与控制 一、实验目的 1、为了更好的配合《操作系统》有关进程管理章节的教学。 2、加深和巩固学生对于进程概念的理解,明确进程和程序的区别。 二、实验内容 1、编写程序可以模拟实现进程的创建,对进程控制块进行初始化并输出相应变量的值。 三、实验用设备仪器及材料 1、计算机及编程软件; 2、操作系统——精髓与设计原理(第七版)。 四、实验要求 实验课时2学时。要求完成其中至少一个程序。 五、实验内容 #includestdio.h #includestdlib.h #includestring.h #define NULL 0 int shumu=0; //进程的内容结构体 struct node { int a; char ch; };//进程PCB结构体 struct jincheng { int pid; int youxian; float luntime; float zhantime; char zhuangtai; //a表示执行,b表示动态就绪 node *neirong; struct jincheng *next; }; struct jincheng *neijin,*neizhi,*p,*q; //换出进程函数 void huanchu(int a) { p=neijin; while(p-pid!=ap!=NULL) { q=p; p=p-next; } if(p==NULL) { printf(该进程不在内存里!\n); return; } if(p==neijin) { neijin=neijin-next; } else { q-next=p-next; //把目标进程换出来,即把目标进程从就绪队列中移出来 } }//杀死正在运行进程函数 void shasi() { neizhi-next=NULL; printf(运行的进程已经杀死!\n); return; }//创建新进程后与正在运行进程比较优先级并根据优先级判断谁该占用处理机 int bijiao() { int i,j; p=neijin; while(p!=NULL) { q=p; p=p-next; //q指向进程的末尾,即新建的进程 } i=q-youxian; //i代表新进进程的优先级 j=neizhi-next-youxian; //j代表正在执行进程的优先级 if(ij) { //如果新建的进程的优先级高于正在执行程序的优先级 p=neijin; if(p==q) { //就绪队列的进程中只有一个进程。也就是那个新建的进程 neijin=neizhi-next; p-neirong=(node*)malloc(sizeof(node)); p-neirong-a=9; p-neirong-ch=c; neizhi-next=p; //把处理机交给优先级高的新进程 return 1; } else { while(p-next!=q) { p=p-next; } //执行完后 p 指针在 q指针前面 p-next=neizhi-next; //将正在执行的进程放置p的后面 q-neirong=(node*)malloc(sizeof(node)); q-neirong-a=9; q-neirong-ch=c; neizhi-next=q; //将q放置在正在执行列表中,把处理机交给优先级高的进程 neizhi-next-next=NULL; return 1; }

文档评论(0)

ctuorn0371 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档