操做系统概论六

一、目前使用的计算机基本上是冯·诺依曼(Von Neumann)式的结构,其基本特色是处理器按指令地址的指示顺序执行指令,这样的处理器称为顺序处理器。 算法

 

二、进程的顺序性是指进程在顺序处理器上的执行是严格按序的,即按照程序规定的操做顺序,只有在前一个操做结束后才能开始后继操做。安全

 

三、当一个进程独占处理器顺序执行时,它具备两个特性:(1)封闭性;(2)可再现性。并发

 

四、进程的并发性:在一个进程的工做没有所有完成以前,另外一个进程就能够开始工做,咱们说这些进程是可同时执行的,或称它们具备并发性,而且把可同时执行的进程称为并发进程。进程的并发执行会破坏“封闭性”和“可再现性”。工具

 

五、并发进程的执行速度受自身缘由以及进程调度策略的影响。测试

 

六、并发进程交替使用共享资源会出现与时间有关的错误。spa

 

七、咱们把并发进程中与共享变量有关的程序段称为临界区。操作系统

 

八、相关临界区是指并发进程中涉及到相同变量的那些临界区。xml

 

九、对若干个并发进程共享某一变量的相关临界区的管理有三个要求:进程

(1)一次最多一个进程可以进入临界区。当有进程在临界区执行时,其余想进入临界区执行的进程必须等待;资源

(2)不能让一个进程无限制地在临界区执行,即任何一个进入临界区的进程必须在有限的时间内退出临界区;

(3)不能强迫一个进程无限制地等待进入它的临界区,即有进程退出临界区时应让一个等待进入临界区的进程进入它的临界区执行。

 

十、PV操做由P操做和V操做组成。它们是两个不可中断的过程,这种不可中断的过程称为原语。所以,P操做和V操做也可称为P操做原语和V操做原语,简称PV操做。

 

十一、PV操做是对信号量进行操做,它们的定义以下:

(1)P操做PS):将信号量S减去1,若结果小于0,则把调用PS)的进程置成等待信号量S的状态。

(2)V操做VS):将信号量S1,若结果不大于0,则释放一个等待信号量S的进程。

 

十二、进程的互斥是指当有若干个进程都要使用某一共享资源时,任什么时候刻最多只容许一个进程去使用该资源,其余要使用它的进程必须等待,直到该资源的占用者释放了该资源。

 

1三、PV操做是一种可实现进程互斥地进入相关临界区的工具,但只有合理地使用该工具,才能既保持进程的并发性,又避免交叉使用共享资源形成的错误。在解决具体问题时,应验证是否符合对相关临界区的管理要求。粗心的使用PV操做可能会违反对临界区的管理要求。

 

1四、进程的同步是指在并发进程之间存在的一种制约关系,一个进程的执行依赖另外一个进程的消息,当一个进程没有获得另外一个进程的消息时应等待,直到消息到达才被唤醒。

 

1五、进程的互斥其实是进程同步的一种特殊状况。实现进程互斥时用P操做测试是否可使用共享资源,这至关于测试“资源已可以使用”的消息是否到达;用V操做归还共享资源,这至关于发送了“共享资源已空闲”的消息。因此,常常把进程的互斥与进程的同步统称为进程的同步,把用来解决进程互斥与进程同步的机制(如PV操做)统称为同步机制。

 

1六、进程的互斥与进程的同步是有差异的,进程的互斥是进程之间竞争共享资源使用权;而进程同步的状况就不一样了,涉及共享资源的并发进程之间有一种必然的依赖关系。因此,用PV操做管理共同资源时,必定要正确区分互斥与同步。最关键的是确切地定义信号量,以及合理的调用各信号量上的P操做和V操做。

 

1七、咱们把经过专门的通讯机制实现进程间交换大量信息的通讯方式称为进程通讯。目前经常使用的高级通讯方式有信箱通讯、消息缓冲通讯、管道通讯等。

 

1八、一个进程采用信箱方式进行通讯时,应先组织好一封信,信件的内容应包括:发送者名(进程名),信息(或信息存放的地址和长度),等/不等回信,回信存放地址。

 

1九、若干个进程均可向同一进程发送信件。接收信件的进程能够设立一个信箱。信箱的大小决定了信箱中能够容纳的信件数,每一个信箱由“信箱说明”和“信箱体”两部分组成。

 

20、信箱通讯须要用到两个通讯原语:发送原语(send)和接收原语(receive)。

 

2一、使用信箱通讯时,为避免信件的丢失和错误地索取信件,通讯时应遵循以下规则:

(1)若发送信件时信箱已满,则应把发送信件的进程置成“等信箱”状态,直到信箱有空时才被释放;

(2)若取信件时信箱中无信,则应把接收信件的进程置成“等信件”状态,直到信箱中有信件时才被释放。

 

2二、若系统中存在一组进程(两个或多个进程),它们中的每个进程都占用了某种资源而又都在等待该组进程中另外一个进程所占用的资源,这种等待永远不能结束,则说系统出现了死锁,或说这组进程进入了死锁状态。

 

2三、造成死锁的原由是系统提供的资源数比进程要求的资源数少,或者是若干个进程要求的资源总数大于系统能提供的资源数。这时,进程间就会出现竞争资源的现象,对进程竞争的资源若是管理或分配不当,就会引发死锁。死锁的出现与资源分配策略和并发执行的速度有关。PV操做可实现进程的同步和共享资源的互斥使用,但不能排除死锁。

 

2四、系统产生死锁的四个必要条件:(1)互斥地使用资源;(2)占有且等待资源;(3)非抢夺式分配;(4)循环等待资源。

 

2五、防止死锁的资源分配策略有:

(1)静态分配资源:是指进程必须在开始执行前就申请本身所要的所有资源,仅当系统能知足进程的所有资源申请要求且把资源分配给进程后,该进程才开始执行;

(2)按序分配资源:是指对系统中每个资源给一个编号。规定任何一个进程申请两个以上资源时,老是先申请编号小的资源,再申请编号大的资源。

(3)剥夺式分配资源:是指当一个进程申请资源得不到知足时,可从另外一个进程那里去剥夺。

 

26、若是操做系统能保证全部的进程在有限时间内获得须要的所有资源,则称系统处于安全状态,不然就说系统是不安全的。

 

 

27、死锁的避免:古典的测试方法:银行家算法:该算法规定,只有当系统现存的资源可以知足进程的最大需求量时,才把资源分配给该进程。

 

28、银行家算法是在保证至少有一个进程能获得所需的所有资源的前提下进行资源分配的,避免了进程共享资源时可能发生的死锁,但这种算法必须不断测试各个进程占用和申请资源的状况,需花费较多的时间。

 

29、死锁的检测:设置两张表格来记录进程使用和等待资源的状况。“死锁检测”程序定时地检测这两张表。若是发现有循环等待资源的进程,则就有死锁出现了。检测到死锁后,可采用抢夺某些进程占用的资源,或强迫进程结束,从新启动操做系统等办法来解除死锁。

相关文章
相关标签/搜索