一、磁盘结构
二、磁盘调度算法
1.先来先服务算法
1—4---2—3---1—5
2.最短寻道时间优先算法
4—5---3—2---1—1(4后面可以是3,因为4距离5或者3都是相等的,我们假设为5)
3.扫描算法(电梯算法):磁头每次只往一个方向移动、到达一个方向需要服务的尽头再反方向移动
4—3---2—1---1—5
4.循环扫描算法:只往一个方向读取(假设方向从1到5)
4—5---1—1---2—3(磁头直接从5跳到1继续往里进行扫描)
三、缓存替换时机
因为cpu与主存(也就是内存)的速度不匹配,需要到高速缓存拿数据,提高cpu的利用率,若缓存里没有cpu所需要数据就得从主存里替换新数据到缓存里了。
四、替换策略(虚拟内存置换也是用这几个算法)
1.先进先出算法
**·**把高速缓存看做是一个先进先出的队列
**·**优先替换最先进入队列的字块
{1,2,3,4,5,6,7,8}若想将新数据9放进缓存,我们就淘汰1,缓存里变成{2,3,4,5,6,7,8,9}
2.最不经常使用算法(LFU)全写:Least Frequently Used
**·**优先淘汰最不经常使用的字块
**·**需要额外的空间记录字块的使用频率
3.最近最少使用算法(LRU)全写:Least Recently Used
**·**优先淘汰一段时间内没有使用的字块
**·**有多种方法实现,一般使用双向链表
**·**把当前访问节点至于链表的前面,淘汰就淘汰链表末尾的节点就行
五、进程调度算法
进程调度是指计算机通过决策决定哪个就绪进程可以获得CPU使用权:保留旧进程的运行信息,请出旧进程;选择新进程准备运行环境并分配CPU
进程调度分为非抢占式和抢占式
非抢占式:处理器一旦分配给某个进程,就让该进程一直使用下去;调度进程不以任何原因抢占正在被使用的处理器;直到进程完成工作或因为IO阻塞才让出处理器
抢占式:允许程序以一定的策略暂停当前运行的进程;保存好旧进程的上下文信息,分配处理器给新进程
调度算法
1.先来先服务:在就绪队列选择队头进程进行调度
2.短作业优先:在就绪队列选择估计运行时间最短的进程
3.高优先权优先:进程附带优先权,调度优先权高的进程
4.时间片轮转:按先来先服务原则排列就绪进程,每次按头部取出调度分配一个时间片,时间片结束就取下一个调度。