1、资源管理功能:资源数据结构的描述、确定资源的分配原则 (调度原则)、实施资源分配、存取控制和安全保护
2、资源的静态分配(作业)和动态分配(进程)
3、虚拟资源作用:1)方便用户使用 2)资源可动态分配,提高资源利用率
虚拟资源4、资源保护:对象的访问权限共有以下几种:完全控制、拒绝访问、读取、更改
保护措施:1)为对象建立保护层:安全描述符2)识别用户的安全信息:访问令牌
5、访问控制列表=ACL头+若干个ACE
访问令牌(Access Token): 是一个包含进程或线程安全标识的数据结构
访问控制列表6、若没有DACL,则每个用户拥有该对象的完全访问权
如果DACL为空(零个ACE),则任何用户不能访问该对象
7、
资源描述器:描述各类资源的最小分配单位的数据结构称为资源描述器rd。
资源信息块:描述某类资源的请求者、可用资源和该类资源分配程序等必要信息的数据结构。
8、常用的资源分配策略
先请求先服务: 每一个新产生的请求均排在队尾;当资源可用时,取队首元素,并满足其需要。
排序原则:按请求的先后次序排序。
优先调度: 对每一个进程指定一个优先级;每一个新产生的请求,按其优先级的高低插到相应的位置;当资源可用时,取队首元素,并满足其需要。
排序原则:按优先级的高低排序。
针对设备特性的调度策略调度的目标 当有大量I/O请求时,降低完成这些I/O服务的总时间。
移臂调度:柱面最接近的
旋转调度:块号由小到大
9、死锁:在两个或多个并发进程中,如果每个进程持有某种资源而又都等待着别的进程释放它或它们现在保持着的资源,否则就不能向前推进。此时,称这一组进程产生了死锁。
10、引起死锁的原因:系统资源不足进程推进顺序非法
11、必要条件:
互斥条件:涉及的资源是非共享的,即为临界资源。
不剥夺条件:进程所获得的资源在未使用完毕之前,不能被其他进程强行夺走。
部分分配:进程每次申请它所需要的一部分资源。在等待一新资源的同时,进程继续占用已分配到的资源。
环路条件:存在一种进程的循环链,链中的每一个进程已获得的资源同时被链中下一个进程所请求。
12、有环不一定死锁,如果每个资源类中只包含一个资源实例,则环路是死锁存在的充分必要条件。
13、解决死锁问题的策略:
1
)死锁的检测与忽略
2)采用静态资源分配方法——预防死锁:在系统设计时确定资源分配算法,保证不发生死锁。在作业调度时为选中的作业分配它所需要的所有资源,当资源一旦分配给该作业后,在其整个运行期间这些资源为它独占。
优点:简单、易于实现且安全。
缺点:
一个用户在作业运行之前可能提不出他的作业将要使用的全部设备。
用户作业必须等待,直到所有资源满足才能运行。
一个作业运行期间,对某些设备的使用时间很短,甚至不会用到
3)采用有控资源分配方法——避免死锁:不事先采取限制去破坏产生死锁的条件,而是在资
源的动态分配过程中,用某种方法去防止系统进入不安全状态,从而避免死锁的发生。
比如:有序资源分配法
14、p个进程共享m个同类资源,设所有进程对资源的最大数目之和小于p+m;试证:该系统不会发生死锁!
网友评论