文档详情

操作系统教程(第6版)课件6.2 并发进程的制约关系.pptx

发布:2025-02-13约小于1千字共6页下载文档
文本预览下载声明

理解无关与交往的并发进程

理解与时间相关的程序设计错误

掌握进程互斥与同步的概念计算机操作系统6并发程序设计–6.1并发进程6.1.2并发进程的制约关系

无关与交往的并发进程无关的并发进程:一组并发进程分别在不同的变量集合上运行,一个进程的执行与其他并发进程的进展无关交往的并发进程:一组并发进程共享某些变量,一个进程的执行可能影响其他并发进程的结果

与时间有关的错误对于一组交往的并发进程,执行的相对速度无法相互控制如果程序设计不当,可能出现各种“与时间有关的”错误表现一:结果错误表现二:永远等待

进程1在此区间内被中断,进程2又卖此航班的票结果错误的例:机票问题IntA[1..m] //机票数共享变量processTi{ //i=1,2,… IntXi;按旅客定票要求找到航班j; Xi=A[j]; if(Xi=1){Xi=Xi-1;A[j]=Xi;{输出一张票}; }else{输出票已售完};}卖出同一张票!

永远等待的例:内存管理问题Intx; //记录空闲内存量的共享变量procedureborrow(IntB){if(Bx){进入等待队列等待主存资源}x=x-B;{修改主存分配表,获得主存资源}}procedurereturn(intB){x=x+B;{修改主存分配表}{释放等主存资源的进程}}1此处中断3永远等待2全部归还

进程互斥与进程同步因此,交互的并发进程在执行时必须进行制约,才能保证得到合理的结果进程互斥:并发进程之间因相互争夺独占性资源而产生的竞争制约关系进程同步:并发进程之间为完成共同任务基于某个条件来协调执行先后关系而产生的协作制约关系

显示全部
相似文档