计算机操作系统PV操作例题

问题1 一个司机与售票员的例子  在公共汽车上,为保证乘客的安全,司机和售票员应协调工作:  停车后才能开门,关车门后才能行车。用PV操作来实现他们之间的协调。  S1:是否允许司机启动汽车的变量  S2:是否允许售票员开门的变量  driver()//司机进程  {  while (1)//不停地循环  {  P(S1);//请求启动汽车  启动汽车;  正常行车;  到站停车;  V(S2); //释放开门变量,相当于通知售票员可以开门  }  }  busman()//售票员进程  {  while(1)  {  关车门;  V(S1);//释放开车变量,相当于通知司机可以开车  售票  P(S2);//请求开门  开车门;  上下乘客;  }  }注意:busman() driver() 两个不停循环的函数???问题2 ?图书馆有100个座位,每位进入图书馆的读者要在登记表上登记,退出时要在登记表上注销。要几个程序?有多少个进程?(答:一个程序;为每个读者设一个进程)?(1)?????? 当图书馆中没有座位时,后到的读者在图书馆为等待(阻塞)(2)?????? 当图书馆中没有座位时,后到的读者不等待,立即回家。?解(1 )设信号量:S=100;? MUTEX=1P(S)P(MUTEX)登记V(MUTEX)阅读P(MUTEX)注销V(MUTEX)V(S)???解(2)设整型变量 COUNT=100;信号量:MUTEX=1;P(MUTEX);IF (COUNT==0){ V(MUTEX);?? RETURN;}COUNT=COUNT-1;登记V(MUTEX);阅读P(MUTEX);COUNT=COUNT+1;V(MUTEX);RETURN;问题3? 有一座东西方向的独木桥;用P,V操作实现:(1)?????? 每次只允许一个人过桥;(2)?????? 当独木桥上有行人时,同方向的行人可以同时过桥,相反方向的人必须等待。(3)?????? 当独木桥上有自东向西的行人时,同方向的行人可以同时过桥,从西向东的方向,只允许一个人单独过桥。(此问题和读者与写者问题相同,东向西的为读者,西向东的为写者)。(1)解设信号量 MUTEX=1P (MUTEX)? 过桥V (MUTEX)(2)解设信号量: MUTEX=1 (东西方互斥)????? MD=1??? (东向西使用计数变量互斥)?? MX=1??? (西向东使用计数变量互斥)设整型变量: CD=0? (东向西的已上桥人数)??????? CX=0? (西向东的已上桥人数)?从东向西:P (MD)IF (CD=0){P (MUTEX)? }CD=CD+1V (MD)过桥P (MD)CD=CD-1IF (CD=0){V (MUTEX)? }V (MD)从西向东:P (MX)IF (CX=0){P (MUTEX)? }CX=CX+1V (MX)过桥P (MX)CX=CX-1IF (CX=0){V (MUTEX)? }V (MX)?(3) 解:从东向西的,和(2)相同;从西向东的和(1)相同。?问题4 有一个俱乐部,有甲乙两个服务员,当顾客有请求时,甲负责送烟,乙负责送火,无顾客请求时,服务员睡眠。顾客自己不能带烟和火,当顾客要抽烟时,可请求服务员送烟和火,烟和火还未送到时,顾客必须等待。设信号量:SY, SH,CY,CH:初值都为0?甲服务员REPEATP(SY)送烟V(CY)UNTIL FALSE乙服务员REPEATP(SH)送火V(CH)UNTIL FALSE顾客V(SY)?V(SH)?P(CY)?P(CH)?抽烟?问题5一家四人父、母、儿子、女儿围桌而坐;桌上有一个水果盘;(1)? 当水果盘空时,父亲可以放香蕉或者母亲可以放苹果,但盘中已有水果时,就不能放,父母等待。当盘中有香蕉时,女儿可吃香蕉,否则,女儿等待;当盘中有苹果时,儿子可吃,否则,儿子等待。解 设信号量:SE=1 (空盘子);SA=0 (放了苹果的盘子);SB=0 (放了香蕉的盘子)?父亲REPEAT剥香蕉P(SE)放香蕉V(SB)UNTIL FALSE母亲REPEAT削苹果P(SE)放苹果V(SA)UNTIL FALSE儿子P(SA)拿苹果V(SE)吃苹果?女儿P(SB)拿香蕉V(SE)吃香蕉?(2) 把(1)改为:儿子要吃苹果时,请母亲放苹果,女儿要吃香蕉时,请父亲放香蕉,(还是盘子为空时才可以放)

计算机操作系统pv实验,计算机操作系统PV操作例题.doc相关推荐

  1. 计算机理论导引 试卷,计算机理论导引实验报告_CFG是P成员.doc

    计算机理论导引实验报告_CFG是P成员.doc (15页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 9.90 积分 HUNAN UNIVERSITY计 ...

  2. 大学计算机实验演示文稿及其高级应用,东南大学《大学计算机基础》实验20幻灯片高级操作.pdf...

    实验20 幻灯片高级操作 实验目的 了解幻灯片的其他工具 实验任务和要求 理解幻灯片的声音及设置效果 了解母版的设置和SmartArt 图形设置 n c 了解幻灯片放映 u. 实验内容及操作步骤 d ...

  3. 计算机键盘常识打字教案,键盘的操作教案.doc

    键盘的操作教案 <键盘的操作>教学案例 一.教学目标:熟悉键盘布局,掌握正确的操作方法,提高上机操作效率. 二.教学重难点:掌握操作系统的启动与退出:熟悉键盘的构造和操作规范 . 三.教学 ...

  4. 计算机组成原理汇编程序实验,计算机组成原理汇编实验(资料).pdf

    计算机组成原理汇编实验(资料) 汇编语言调试工具 DEBUG 的使用 一.实验目的: 1.掌 DEBUG 的基本命令及其功能 2.熟练掌 DEBUG 的常用命令,学会用 DEBUG 调试程序. 3.掌 ...

  5. 浙江高校计算机等级考试二级办公,浙江省高校计算机等级考试二级(高级办公)Word操作提示.doc...

    浙江省高校计算机等级考试二级(高级办公)Word操作提示 说明:经过多位教师的反复验证,以下操作步骤能做出与效果图一样的文档. 具体操作步骤如下: 1(1)~(2)操作: 选择"格式&quo ...

  6. 计算机组成原理加法器实验,计算机组成原理加法器实验

    实验三实验三 带进位的算术运算实验带进位的算术运算实验一.实验目的内容1.掌握简单运算器的组成以及数据传送通路.2.验证运算功能发生器(74HC181)的组合功能.3.掌握用 4 位 ALU 芯片 7 ...

  7. 计算机公共教学平台 用户登录,天空教室计算机共课学习管理平台教师操作手册.doc...

    天空教室计算机共课学习管理平台教师操作手册 天空教室2012计算机公共课学习管理平台教师操作手册 文档编号 DOCUMENT NUMBER:2012-6-2 文件类型 TYPE OF DOCUMENT ...

  8. 计算机操作系统pv实验,计算机操作系统笔记--信号量与PV 操作

    同步和同步机制 一个进程在某一特殊点上被迫停止执行直到接收到一个对应的特殊变量值,通过特殊变量这一设施,任何复杂的进程交互要求可得到满足,这种特殊变量就是信号量(semaphore).在操作系统中,信 ...

  9. 计算机操作系统进程同步实验报告,操作系统进程同步和互斥的实验报告

    操作系统进程同步和互斥的实验报告 (5页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 9.9 积分 湖南农业大学信息科学技术学院学生实验报告姓名: 年级专 ...

最新文章

  1. 在鱼眼和全向视图图像的深度学习方法
  2. Java写十进制和二进制互转
  3. 如何做好应急响应工作?常见应急响应流程
  4. SD功能增强业务说明书
  5. CentOS 7 安装nexus
  6. java数据结构有哪些_java有哪些数据结构?
  7. 【渝粤题库】国家开放大学2021春2402外国文学题目
  8. 【金融申请评分卡】数据准备 - 缺失值数据清洗
  9. ACM - ICPC World Finals 2013 A Self-Assembly
  10. 【图像隐写】基于matlab DWT+DCT+LSB数字水印隐藏提取比较【含Matlab源码 1623期】
  11. user32.dll 函数说明
  12. 实对称矩阵的特征值一定为实数证明
  13. CodeQL自动化代码审计工具
  14. cydia 未能连接服务器,iOS 越狱全过程,解决cydia或sileo无法联网问题
  15. Windows Server 2016 IPAM 服务管理-李海园-专题视频课程
  16. phpStudy的建站与踩坑,与微信公众号对接
  17. 解决Pycharm绘图报错:Error: failed to send plot to http://127.0.0.1:63342
  18. DDoS deflate 解决服务器被DDOS攻击的问题
  19. 数据库---学生选课查询案例---经典查询题
  20. CF1152C Neko does Maths

热门文章

  1. Rtools 环境变量设置-windows
  2. 微信小程序开发部署上线流程
  3. POJO有哪些要求?
  4. BZOJ 4416: [Shoi2013]阶乘字符串【状压DP
  5. Netty手动实现Dubbo(含视频教程)
  6. Python - 经典程序示例
  7. 数据库编程入门培训(一)
  8. Android 添加Flutter 项目依赖
  9. matlab实现图像DCT变换
  10. python实现泊松分布_常见的分布及如何使用python实现