2022年操作系统实验 7.pdf

上传人:H****o 文档编号:31991678 上传时间:2022-08-08 格式:PDF 页数:7 大小:44.10KB
返回 下载 相关 举报
2022年操作系统实验 7.pdf_第1页
第1页 / 共7页
2022年操作系统实验 7.pdf_第2页
第2页 / 共7页
点击查看更多>>
资源描述

《2022年操作系统实验 7.pdf》由会员分享,可在线阅读,更多相关《2022年操作系统实验 7.pdf(7页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、操作系统实验( 1)模拟进程管理专业:信息管理与信息系统班级:信管082 姓名:温静名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 7 页 - - - - - - - - - 实验一进程管理1目的和要求通过实验理解进程的概念,进程的组成(PCB 结构) ,进程的并发执行和操作系统进行进程管理的相关原语(主要是进程的创建、执行、撤消)。2实验内容用 C语言编程模拟进程管理,至少要有:创建新的进程;查看运行进程;换出某个进程;杀死运行进程以及进程之间通信等功能。3主体程序#i

2、nclude #include #include struct PCB_type int pid; int priority; int cputime; int state; int shumu=0,pid_l; struct PCB_type neicun20; struct PCB_type hc10; int max=0;int number=0; void create(); void run(); void huanchu(); void kill(); /* 创建新进程*/ void create() if(shumu=20) printf(n 内存已满,请先结束或换出进程n);

3、名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 7 页 - - - - - - - - - else shumu+; printf(n 请输入新进程的程序名n); scanf(%d,&neicunshumu-1.pid); printf(n 请输入新进程的优先级n); scanf(%d,&neicunshumu-1.priority); printf(n 请输入新进程的运行时间n); scanf(%d,&neicunshumu-1.cputime); printf(n 创

4、建进程时令其状态为就绪n); neicunshumu-1.state=2; printf(n 创建进程成功 !n); /* 查看当前运行进程*/ void run() int max=0; for(int i=0;i=neicunmax.priority) max=i; neicunmax.state=3; printf( 当前运行进程程序名:n%d,neicunmax.pid); printf(n 该进程的优先级:n%d,neicunmax.priority); printf(n 该进程的运行时间:n%d,neicunmax.cputime); printf(n 该进程的状态 :n%d,ne

5、icunmax.state); /* 换出*/ void huanchu() int k; printf( 请输入要换出程序的程序名:); scanf(%d,&k); for(int j=0;jshumu;j+) if(neicunj.state=1) hcnumber.pid=neicunj.pid; hcnumber.state=neicunj.state; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 7 页 - - - - - - - - - hcnumber.

6、priority=neicunj.priority; hcnumber.cputime=neicunj.cputime; number+; neicunj.pid=0; neicunj.state=0; neicunj.priority=0; neicunj.cputime=0; pid_1+; else printf( 进程 %d 无法换出的pid:%dn,j.neicunj.pid); if(number!=0) for(int i=0;inumber;i+) printf( 当前运行进程程序名:n%d,hci.pid); printf(n 该进程的优先级:n%d,hci.priority

7、); printf(n 该进程的运行时间:n%d,hci.cputime); printf(n 该进程的状态 :n%d,hci.state); PCB_type temp=neicun0; for(k=0;ktemp.priority) tmpe=neicunk; neicunk.state=1; /* 杀死进程*/ void kill() neicunmax.pid=0; neicunmax.priority=0; neicunmax.cputime=0; neicunmax.state=0; if(max=(shumu-1) shumu-; else for(int j=max+1;jsh

8、umu;j+) neicunj-1.pid=neicunj.pid; neicunj-1.priority=neicunj.priority; neicunj-1.cputime=neicunj.cputime; neicunj-1.state=neicunj.state; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 7 页 - - - - - - - - - shumu-; max=0; run(); /* int k=0; printf( 请输入要杀死程序的进程名

9、:); scanf(%d,&k); if(neicunk.state=1) neicunk.state=2; neicunk.cputime=0; neicunk.pid=0; neicunk.priority=0; neicunk.state=0; if(k=(shumu-1) shumu-; else for(int j=k+1;jshumu;j+) neicunj-1.pid=neicunj.pid; neicunj-1.priority=neicunj.priority; neicunj-1.cputime=neicunj.cputime; neicunj-1.state=neicun

10、j.state; shumu-; printf( 进程 %d 已被杀死 !,k); */ int main() int n,a; n=1; while(n=1) system(cls); printf(n*); printf(n* 进程演示系统*); printf(n*); printf(n 1.创建新的进程2.查看运行进程 ); printf(n 3.换出某个进程4.杀死运行进程 ); printf(n 5.退出系统); printf(n*); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - -

11、- - 第 5 页,共 7 页 - - - - - - - - - printf(n 请选择 (15):); scanf(%d,&a); switch(a) case 1: create( ); printf(npress anykey to go on); getch(); break; case 2 : run(); printf(npress anykey to go on); getch(); break; case 3 : huanchu(); printf(npress anykey to go on); getch(); break; case 4 : kill(); print

12、f(npress anykey to go on); getch(); break; case 5 : exit(0); default: n=0; break; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 7 页 - - - - - - - - - 5感想与心得体会做了两周的实验,问了很多同学,可程序还是有很多问题。通过这次实验,我发现了自己在模拟进程调度和模拟程序换出这两块地方有很多东西都没有学好,自己还有很多的不足。以后还应多看看书,加深自己的知识储备。希望下次试验会比这次熟练多些。最后,真的要感谢徐老师耐心、细心的讲解。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 7 页 - - - - - - - - -

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 技术资料 > 技术总结

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁