(简答、计算)
1.处理机调度的层次
(1)高级调度:决定将外存上处于后备队列的哪几个作业调入内存,为它们创建进程、分配系统资源,插入就绪队列。
(2)中级调度:把暂时不能运行的进程调出内存,选择符合条件的进程调入放在就绪队列等待,实际是存储器管理的对换功能。
(3)低级调度:根据一定的算法从就绪队列选择一个进程为其分配处理机。
CPU使用率:CPU实际运行时间/(CPU实际运行时间+上下文切换时间)
吞吐量:单位时间内完成进程的数量
周转时间=完成时间-提交时间
等待时间=周转时间-运行时间
2.调度算法
调度算法1:FCFS SJF/SPF(SRTF) HRRN 上述几乎无交互性,适合早期的批处理系统
调度算法2:RR 优先级调度算法(抢占和非抢占) 多级反馈队列调度算法
【拓】简单的没有IO,难一点的有IO
3.死锁
概念:如果一组进程中的其他进程都在等待仅由该组其他进程才能引发的事件,那么该组进程就是死锁的。
必要条件:互斥条件、请求和保持条件、不可抢占条件、循环等待条件
处理死锁的办法:预防死锁、避免死锁、检测死锁、解除死锁
死锁一定有环路,有环路不一定死锁。安全状态一定没有死锁,不安全状态不一定有死锁。安全-><-不安全转换。
银行家算法:P allocation max need available | P work need allocation work+allocation
p个进程,1个进程需要m个资源,现有r个 不会发生死锁的条件 答: r>=p(m-1)+1