计算机四级网络工程师-操作系统原理-第4章并发与同步
文章目录
单选题
同步和互斥关系
互斥关系 | 同步关系 |
---|---|
每个订票点/订票人发起请求订票进程 | 汽车装配流水线上的各道工序; 一个进程在等待另一个进程向它发送消息、两个并发进程包含同一共享变量; 某系统打印数据时,读数据进程、处理数据进程和打印结果进程之间的关系 |
进程间的相互制约关系
P、V操作,mutex的初值设为1,当有k(k>1)各进程在mutex的等待队列中时,信号量的值为**-k**#参考解析:临界资源有K个在等待进入临界区,说明当前临界区正在运行1个进程,此时mutex定为1,每次进程访问临界区后mutex-1,当前正在运行的1个进程加上等待区还有K个,每次访问都-1,一共需要减去(1+k)初始值1依次减去就是1-(1+k),所以此时mutex的值为-k。
PV操作由P操作原语和V操作原语组成(原语是不可中断的过程)对信号量进行操作。P(S):将信号量S的值减1,即S=S-1;如果S>=0,则该进程继续执行;否则该进程置为等待状态,排入等待队列。V(S):将信号量S的值加1,即S=S+1:如果S>0,则该进程继续执行:否则释放队列中第一个等待信号量的进程。
记忆技巧:P减1——V加1,顺序先P后V
临界资源的四个部分及流程步骤:
(1)进入区:(P原语);while TS(&lock)
(2)临界区:访问临界资源的一段代码;n=fetch(balance)
(3)退出区:(V原语)lock=FLASE
(4)剩余区:代码其余的部分output(list)
需要直接记忆单选
不能用P、V操作来实现的是:进程共享
P、V操作对共享资源进行保护读写的代码段称为(临界区)
同步机制应该遵循的准则有如下4条:空闲则入、忙则等待、有限等待和让权等待。禁选无限等待
民航网络订票系统中,作为临界资源的对象是:飞机票
某系统打印数据时,读数据进程、处理数据进程和打印结果进程之间通过缓存区关联
已满的邮件槽:不能再申请互斥锁
共享内存:最适合传送大量的消息
不能对信号量进行操作的是:加减操作(#正确答案初始化信号量;P操作;V操作)
信号量S在所有打印机都空闲时为4,在20个进程都对其进行申请时为4-20=-16,所以信号量S的数值范围是[4,-16]。
信号量机制中的**“临界区**”指:访问临界资源的代码
生产者往缓冲区放产品前要先使用P操作确保缓冲区有空闲槽
直接通信方式中:
发送原语send(receiver,message) SRM
接收原语Receive(Sender,message) RSM
多选题
测试与设置指令(Test&Set)
测试W的值,若W=1,则返回重新测试
测试W的值,若W=0,置位W=1,进入临界区
退出临界区时,复位W=0
信号量S的PV操作多选题
需要直接记忆多选
一般来说,具体看题目:empty信号量表明的是空闲资源数目,这里为N,所以其初始值为N;full信号量表明的是满的资源数目,这单为0,即其初始值为0:mutex信号量用于实现互斥访问,初始值为l。P(full)和F(mutex)两条语句若颠倒顺序,可能导致死锁。
并发进程间存在着相互制约关系产生若干问题:同步问题、互斥问题、死锁问题、饥饿问题
并发进程间感知问题:相互不感知;相互间接感知;相互直接感知
实现进程互斥方法:
Peterson算法
Test-and-Set(TS)指令
Swap或Exchange指令
信号量
禁选分派器(Dispatcher)
在间接通信的方式中,信箱作为的是一个实体:
私用信箱
公有信箱
共享信箱
信箱几种关系:
一对一关系
多对一关系
一对多关系
多对多关系
共享存储器
在共享存储器系统中,相互通信的进程共享某些数据结构或共享存储区,进程之间能够通过这些空间进行通信
管道通信
管道是指用于连接一个读进程和一个写进程以实现他们之间通信的一个共享文件# 计算机四级网络工程师-操作系统原理-第4章并发与同步