第1章 计算机系统概述
1.3操作系统运行环境
1.3.1 指令分类
1、非特权指令——用户态(目态)
2、特权指令——核心态(管态、内核态)
1.3.2 用户态和核心态的切换
1、中断
2、异常
3、系统调用
第2章 进程与线程
2.1 进程和线程的概念
2.1.1 进程的概念
1、进程是程序的一次执行过程。
2、进程主要由程序段、相关数据段、PCB构成。
3、进程的特征:动态性、并发性、独立性、异步性。
2.1.2 进程和线程的区别
进程是系统进行资源分配和调度的基本单位。
线程是程序执行的最小单位。
2.1.3 五态模型
2.2 处理机调度
2.2.1 调度的概念
1、为什么要进行处理机调度?
进程的数量一般大于处理机的数量,想要计算机高效工作,就需要按照策略执行进程。
2、什么是处理机调度?
按照合适的策略有序的执行进程,以达到计算机高效工作的目的。
2.2.3 评价调度算法的指标
1、CPU利用率
CPU的利用率 = CPU有效工作时间 /(CPU有效工作时间 + CPU空闲等待时间)
2、系统吞吐率
单位时间内CPU完成作业的数量。
3、周转时间
周转时间:指从作业提交到作业完成所经历的时间
(作业等待时间 + 在就绪队列中排队 + 处理机上运行 + IO操作)
带权周转时间 = 作业周转时间 / 作业实际运行的时间
4、等待时间
5、响应时间
指从用户提交请求到系统首次产生响应所用的时间。
2.2.4 调度算法
1、先来先服务(FCFS)调度算法
- 算法简单、但效率低
- 对长作业有利,但对短作业不利
- 有利于CPU繁忙型作业,不利于I/O繁忙型作业
2、短作业优先算法(SJF)调度算法
- 平均等待时间、平均周转时间最少
- 对长作业不利,会导致长作业长期不被调度(“饥饿”现象)
- 无法及时处理紧迫性作业
3、优先级调度算法
分为静态优先级和动态优先级。
优先级参照:
- 系统进程 > 用户进程
- 交互型进程 > 非交互型进程
- I/O进程 > 计算型进程
4、高响应比优先调度算法
响应比 = (等待时间 + 要求服务时间)/ 要求服务时间
优点:克服了“饥饿”现象
5、时间片轮转算法
注:一般先考虑非抢占式