版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、进程管理进程管理I1C1P1I2C2P2进程管理进程管理P1P1P1P1进程管理进程管理I1I2I3I4C1C2C3C4P1P2P3P4t进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理就绪就绪阻塞阻塞执行执行时间片完时间片完进程调度进程调度I/O请求请求I/O完成完成图图25 进程的三种基本状态及其转换进程的三种基本状态及其转换进程管理进程管理进程管理进程管理执行执行活动活动就绪就绪静止静止就绪就绪活动活动阻塞阻塞静止静止阻塞阻塞激活激活挂起挂起激活激活挂起挂起释放释放释放释放挂起挂起请求请求I/O进程管理进程管理v写一个程序描述进程状态迁移过程。写一个程序描
2、述进程状态迁移过程。v要求:要求: 提供导致进程状态变化的调用接口,包括创建、提供导致进程状态变化的调用接口,包括创建、删除、调度、阻塞、时间到、挂起、激活等。删除、调度、阻塞、时间到、挂起、激活等。 实现进程列表显示的接口。实现进程列表显示的接口。 注:这里设计的进程是一个假设的对象实体,是注:这里设计的进程是一个假设的对象实体,是由程序自己创建和删除,不是系统维护的进程。由程序自己创建和删除,不是系统维护的进程。进程管理进程管理pid进程状态进程状态现场现场优先级优先级阻塞原因阻塞原因程序地址程序地址同步机制同步机制资源清单资源清单链接指针链接指针进程管理进程管理执行指针执行指针就绪队列指
3、针就绪队列指针阻塞队列指针阻塞队列指针空闲队列指针空闲队列指针PCB14PCB23PCB30PCB48PCB5PCB67PCB79PCB80PCB91进程管理进程管理struct wait_queue struct wait_queue struct task_struct struct task_struct * * task; task;struct wait_queue struct wait_queue * * next; next;PCBPCBPCB进程管理进程管理PCB1PCB2PCB3PCB4PCB5PCB6PCB7执行指针执行指针就绪表指针就绪表指针阻塞表指针阻塞表指针进程管理
4、进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理producer: repeat produce an item in nextp; while counter=n do no-op;bufferin:=nextp;in:=(in+1)mod n;counter:=counter+1;until false;consumer: repeatwhile counter=0 do no-op;nextc:=bufferout;out:=(out+1) mod n;
5、counter:=counter-1;consumer the item in nextc;until false;进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理Swait(s1,s2,sn)if s11 and and sn 1 then for i:=1 to n do si:=si-1; endforelseplace the process in the waiting queue with the first si found with si1, and set the program
6、count of this process to the beginning of swait operationend if Ssignal(s1,s2,sn)for i:=1 to n do si:=si+1; remove all the process waiting in the queue associated with si into the ready queue endfor进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理S1S2S3S4S5S6abcdegf进程管理进程管理进程管理进程管理进程管理进程管理producer: begin repeat Prod
7、uce an item in nextp; 进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理va,b a,b 两点间是一段东西向的单行车道,现要设计一两点间是一段东西向的单行车道,现要设计一个自动管理系统,管理规则如下:当个自动管理系统,管理规则如下:当abab间有车辆在间有车辆在行驶时同方向的车可以同时驶入行驶时同方向的车可以同时驶入abab段,但另一方向段,但另一方向的车必须在的车必须在abab段外等
8、待;当段外等待;当abab之间无车时,到达之间无车时,到达a a(或(或b b)的车辆可以进入)的车辆可以进入abab段,但不能从段,但不能从a a,b b点同点同时驶入;当某方向在时驶入;当某方向在abab段行驶的车辆使出了段行驶的车辆使出了abab段且段且无车辆进入无车辆进入abab段时,应让另一方向等待的车辆进入段时,应让另一方向等待的车辆进入abab段行驶。请用段行驶。请用wait,signalwait,signal工具对工具对abab段实现正确段实现正确管理。管理。进程管理进程管理Semaphore s, mutexab,mutexbaPab:Wait(mutexab)Countab
9、+If countab=1 then wait(s);Signal(mutexab) .wait(mutexab)countab- -;if countab=0 then signal(s)signal(mutexab);进程管理进程管理Pba:wait(mutexba)countba=countba+1;If countba=1 then wait(s)wait(mutexba) enter;wait(mutexba)countba-;if countba=0 then signal(s)signal(mutexba);进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理
10、进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理mqmutexsmsender:Asize:5text:Hellosend(B,a)sender :Asize :5text:hellonext:0发送区发送区Asender:Asize:5text:Helloreceive(b)接收区接收区Bab进程进程APCB(B)进程进程B进程管理进程管理v 试说明如果使用试说明如果使用send_mailboxsend_mailbox和和receive_mailbox receive_mailbox 原原语实现打印文件的
11、系统。欲打印的进程将要打印的文语实现打印文件的系统。欲打印的进程将要打印的文件名发送到邮箱件名发送到邮箱printer,printer,打印机假脱机将打印邮箱中打印机假脱机将打印邮箱中出现名字的任何文件出现名字的任何文件/process wish to printCharfilename ;Status=send_mailbox(“printer”,filename);If (status 0) /failure/print spoolerchar filename while (true) status=receive_mailbox(“printer”,filename);if(status 0)/failureprint(filename);进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理进程管理v进程间通信和同一进程内线程间通信的效率?进程间通信和同一进程内线程间通信的效率?进
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- Unit1 They're monkeys(说课稿)-2023-2024学年外研版(三起)英语三年级下册
- 校园安全惩治管理制度范文
- 2025年小学三年级班主任工作计划第一学期
- 2025年学生会办公室个人工作计划
- 习作:写作品梗概(说课稿)-2023-2024学年统编版语文六年级下册
- 2025年度个人销售计划范文
- 人教版初中九年级上册 2.2.2 印度的觉醒 说课稿
- 2025年化工公司采购部工作计划2
- 涂镀添加剂相关行业投资方案范本
- PE电缆专用料相关项目投资计划书
- 仓库盘点培训资料
- 2025版健康体检中心代理运营合同协议3篇
- (已压缩)矿产资源储量技术标准解读300问-1-90
- 《户用光伏发电系统技术导则》
- (2024)江西省公务员考试《行测》真题卷及答案解析
- 采购部门总结及规划
- 期末综合试卷(含答案)2024-2025学年苏教版数学四年级上册
- 银行信息安全保密培训
- 《中华人民共和国药品管理法实施条例》
- 2024-2025学年人教版道法八年级上册 第一学期期末测试卷01
- GB/T 8574-2024复合肥料中钾含量的测定
评论
0/150
提交评论