调度算法
概念
- 提交时间(到达时间)
- 开始时间
- 运行时间(服务时间、需运行时间)
- 周转时间 = 完成时间-提交时间
- 完成时间 = 开始时间+运行时间
- 平均周转时间:周转时间/进程数
- 带权周转时间:周转时间/运行时间
- 平均带权周转时间:带权周转时间/进程数
甘特图:横轴时间,纵轴项目
先来先服务
按 提交时间 顺序 开始
开始时间 为 上一个的完成时间
短进程优先 / 短作业优先 (SJF)
已经提交的进程里,运行时间短的优先
时间片轮转
给定时间片时长
已提交的进程 轮流执行
刚提交的放在Ready队列最前(立马执行),然后按队列轮流执行
优先权
一般数字越大,优先级越高
在已提交的进程里,优先级高的先执行
存储管理
逻辑地址 物理地址 逻辑页号
物理块大小 = 页大小
页和物理块的大小是一致的,所以 页内地址=块内地址
页式存储管理
页号 = (int)(逻辑地址/页大小)
偏移 = 逻辑地址 mod 页大小
页号 映射 物理块号的地址映射
物理地址 = 块号 * 块大小 + 偏移
页号超出作业的表内,会发生 地址越界
分页虚拟存储管理系统的 缺页次数、缺页中断率
存储块中选一个替换
重复跳过
最佳 置换算法 OPT
替换右边没有的。
有多个页是右边没有的,任意选一个替换。
有多个页是右边有的,替换整表最右边的一个。
先进先出 页面置换算法 FIFO
轮流替换,重复的不计
最近久未使用 页面置换算法 LRU
最近久未使用的一个替换
选择题
进程状态:等待、就绪、执行
阻塞 == 等待
进程状态至少有三态,也有五态模型
建立进程:建立进程控制块
CPU 原语是硬件处理器能够直接执行的机器指令。
原语对进程 管理和控制
进程:动态
程序:静态
临界资源:共享资源
临界区:访问临界资源的那段程序
死锁
预防死锁 必须保留互斥条件
死锁产生的条件:
- 互斥条件
临界资源是独占资源,进程应互斥且排他的使用这些资源。 - 占有和等待条件(请求与保持)
进程在请求资源得不到满足而等待时,不释放已占有资源。 - 不剥夺条件(不可抢占)
已获资源只能由进程自愿释放,不允许被其他进程剥夺。 - 循环等待条件(环路条件)
等待资源的环路,有序的分配资源策略可以解决
死锁只有在这四个条件同时满足时出现。
内存/存储 管理
页式管理、段式管理和段页式管理
页式管理:
优点:没有外碎片,每个内碎片不超过页的大小。
缺点:增加了机器成本和系统开销。
段式管理:
优点:方便编程、保护、共享。有利于动态链接
缺点:会产生碎片,不方便管理。
逻辑地址一部分表示段号,其余表示每个段的长度
段页式管理:
不存在碎片问题
可变分区分配算法:
从空闲块列表中查找最小的足够大的空闲块并将其分配给进程。
首次适应汸: 按地址递增排序
减少碎片化问题,但需要更多的计算资源。
合并空闲区
固定分区存储管理
设置上下限寄存器
重定位:逻辑地址 -> 物理地址
虚拟存储器最大实际容量= min (计算机地址,内存+辅存)
请页式存储管理:
缺页中断属于程序中断,发生缺页中断继续执行被中断的指令
页的大小与缺页率成反比
虚拟存储器(虚拟地址)
理论基础:局部性原理
硬件
缓冲
空间换时间
通道
I/O 专用处理机
文件系统
文件属性+管理软件+文件系统接?
位示图
是利用二进制的一位来表示磁盘中的一个盘块的使用情况。
填空
临界区是个准则:
空闲让进 (忙则等待、有限等待、让权等待)