操作系统 8.8分
读书笔记 第5章 并发性:互斥与同步
流氓

5.1列出与并发相关的四种设计问题

进程间通信,资源共享与竞争,多个进程活动的同步,分配给进程的处理器时间。

5.2产生并发的三种上下文环境是什么?

多个应用程序,结构化应用程序,操作系统结构

5.3执行并发进程的最基本的要求是什么?

互斥

5.4列出进程间的三种互相知道的程度,并简单的给出各自的定义。

进程之间不知道对方的存在(竞争)

进程间接知道对方的存在(对共享对象表现出合作行为)

进程直接知道对方的存在(合作)

5.5竞争进程和合作进程间有什么区别?

进程是否知道另一个进程的存在,知道对方的存在之后才能一起合作。

5.6列出与竞争进程相关的三种控制问题,并简单给出各自的定义

互斥:一个进程在处理共享资源时,其他进程不能访问任何共享资源

死锁:两个或两个以上的进程因为其中的每个进程都在等待其他进程做完某些事情而不能继续执行

饥饿:一个可运行的进程尽管能继续执行,但被调度器无限期的忽视,而不能被调度执行的情况

5.7列出对互斥的要求。

1.必须强制实施互斥

2.一个在非临界区停止的进程不能干涉其他进程

3.绝不允许需要访问临界区的进程被无限延迟的情况、即不能出现死锁和饥饿

4.当没有进程在临界区中时,任何需要进入临界区的进程必须能够立即进入

5.对相关进程的执行速度和处理器的数目没有任何要求和限制

6.一个进程驻留在临界区中的时间必须是有限的

5.8信号量上可以执行什么操作

可以执行3种操作:初始化成非负数,semWait使信号量减1,semSignal使信号量加1

5.9二元信号量和一般的信号量有什么区别

二元信号量的值只能是0或1

5.10强信号量和弱信号量有什么区别?

强信号量会让在队列中等待的线程先进先出,若信号量则不会。

5.11什么是管程

管城是一种程序设计语言结构,他提供了与信号量同样的功能,但更易于控制。

5.12对于消息,阻塞和无阻塞有什么区别?

分为三种常见的模式:阻塞发送,阻塞接收;无阻塞发送,阻塞接收;无阻塞发送,无阻塞接收。无阻塞代表进程在发送/接收之后可以干其他事情。

5.13通常与读者-写者问题相关联的有那些条件

读者优先、写者优先

0
《操作系统》的全部笔记 5篇
豆瓣
免费下载 iOS / Android 版客户端