本文主要是介绍保研面试408复习 3——操作系统,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
文章目录
- 1、操作系统
- 一、进程有哪几种状态,状态之间的转换、
- 二、调度策略
- a.处理机调度分为三级:
- b.调度算法
标记文字记忆,加粗文字注意,普通文字理解。
为什么越写越少?
问就是在打瓦。(bushi)
1、操作系统
一、进程有哪几种状态,状态之间的转换、
- 就绪态:进程获得了除处理机外的一切所需资源,一旦得到处理机,便可立即运行。
- 就绪队列
- 运行态:进程正在处理机上运行。
- 只有就绪状态的进程才能被调度程序选中。
- 阻塞态:阻塞态,又称等待态。进程正在等待某一事件而暂停运行,如等待某资源为可用(不包括处理机)或等待输入/输出完成。即使处理机空闲,该进程也不能运行。
- 阻塞队列
一个进程从运行态变成阻塞态是主动的行为(比如进程运行时申请某一资源,但是资源不够等待释放,进程主动调用阻塞Block原语进入阻塞态)。从阻塞态变成就绪态是被动的行为,需要与之合作的或其他相关的进程中调用一条相应的Wakeup原语唤醒进程(比如资源得到释放,所需的资源有了,则进程已经具备了除了CPU外的一切所需资源,进入就绪态)。
运行态到就绪态,就绪态到运行态是通过调度器完成的。
进程控制包括:
- 进程的创建
- 进程的终止
- 进程的阻塞和唤醒
这都是在核心态下完成的,在执行期间不允许中断。
二、调度策略
a.处理机调度分为三级:
- 高级调度(作业调度)
- 在外存上处于后备队列的作业中挑选一个(或多个),给它们分配内存等必要资源,并建立相应的进程,以使它获得竞争处理机的权利。
- 中级调度(内存调度)
- 将暂时不能运行的进程调至外存等待,此时进程的状态称为挂起态。
- 低级调度(进程调度)
- 分配处理机
b.调度算法
调度算法适用的不止进程调度。
- 先到先服务调度算法(FCFS)
- 不可剥夺算法
- 最短作业有限调度算法(SJF)
- 优先级调度算法
- 时间片轮转调度算法
- 可剥夺算法
- 多级反馈队列调度算法
- 结合前几种算法的有点是时间片轮转 和 优先级调度算法的综合与发展。
- 设置多级就绪队列,优先级逐个降低;第i+1级队列的时间片比第i级队列的时间片长1倍。每个队列先到先服务,优先调度第i级队列,只有第i级为空,才调度第i+1级。
这篇关于保研面试408复习 3——操作系统的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!