第二章 操作系统
进程管理-进程的状态
三态模型和五态模型
前趋图
主要理解任务并行和先后关系。
进程的同步与互斥
互斥:同一时刻只允许一个人操作。
同步:是指在互斥的基础上(大多数情况),通过其它机制实现访问者对资源的有序访问。
PV操作
由上图可知P操作时-1操作,V操作时+1操作。也可以理解为P是释放,V是执行
分析:
1、首先收银员进程是需要被阻塞的,也就是需要被执行的,有付款动作才能执行,因此a1是执行付款动作,也就是V(Sx),x是多少不重要
2、b1就是收钱,就是P(Sx)操作,到这里可以确定选项A,V(S1)、P(S2)
3、随后b2可当作找钱,有找钱才能收钱,所以b2也是V操作,a2就是P操作
PV操作-前趋图
注意关键点,信号量初值为0,P是-1操作,V是+1
起始操作一般时V操作
死锁问题
所有系统都在等待A释放资源,但是A又等待其他释放资源,故形成死锁。
计算避免产生死锁最小资源数:先给每个进程分配(最大资源-1),再加1个就会完成这个进程随后释放资源。
k * (n-1)+1
银行家算法
计算步骤:
1、最大可用资源数(9 8 5)-已分配资源之和(7 7 5) :(现有资源量)2 1 0
2、最大需求量(2 2 1)-已分配资源量(2 1 1):0 1 0(需要小于2 1 0才行)
3、随后现有资源量(2 1 0)+已分配资源量(2 1 1)=剩余资源量(4 2 1)
4、随后计算下一轮
存储管理-分区存储
首次适应法:按照空闲块的顺序依次分配
最佳适应法:将空闲块从小到大排序,依次分配(缺点:会产生很小的碎片空间,不利于后续使用)
最差适应法:将空闲块从大到小排序,依次分配
循环首次适应法:按照作业顺序,选择下一次空闲块依次分配
页式存储组织
1、将程序与内存划分为相同大小的块,以页为单位调入内存
2、每个页大小相同
3、物理块号又称页帧号
4、逻辑地址 = 页号 + 页内地址
5、物理地址 = 页帧号 + 页内地址
6、段表中存储着页号和块号
计算步骤:
(1)
1、每个页大小为4K,换算为字节为212,表示12位
2、16进制的5A29H中,一个16进制位标识4个二进制,所以A29表示了页内地址,而5表示页号
3、根据表格页号和页帧号对应关系得出,页帧号为6,6A29H
(2)
1、状态位表示正在内存中,刚刚被访问过的访问位为1,刚刚被修改过的修改位为1
2、再内存中,且刚刚被访问过的不能被淘汰,所以选择B
段式存储组织
1、段表中存储着段号、段长和基址
2、段长可不相等
段页式存储组织
快表
页面置换算法
FIFO 先进先出
先进入的先出去
LRU 最近最少使用
最近最少被访问的先出去
魔法练习题
计算步骤:
1、首先需要知晓,题中页式存储是在内存中操作,题中说明系统中没有使用快表,表示没有使用cache高速缓存(表示页号不在这里,还是需要去内存读取),在根据问题和图,表示swap、A和B在0-5的页内地址都有分布,页号有6个,加上页内地址6个一共12次
2、【指令只产生一次缺页中断】,操作数产生两次缺页中断
文件管理-索引文件结构
计算步骤:
(1)
1、直接索引只有5个,逻辑号5的位置是6,所以在一级间接索引上,一级索引的第一个位置为58
2、因为每个索引占用4字节,题中磁盘索引块大小为1KB,1KB/4B=256个,表示一级索引有256个,排一下刚好是下一个一级索引的第一位,5+256=261,如图187
(2)
显而易见是二级索引
文件和树形目录结构
空闲存储空间管理
计算步骤:
(1)
4195号物理块是从0开始标号的,所以是第4096个,4196/32就是131.125,位于第132
(2)
要占用该位置必然是置1,4192是第0个位置,4195就是第3个位置
设备管理-数据传输控制方式
主要是指内存和外设之间的数据的传输控制问题
1、程序控制方式,程序查询方式,也是cpu介入最多的方式,外设处于一种非常被动的状态
2、程序中断方式,在第一种基础上增加了主动性,程序完成了相应操作后,程序会发一个中断
3、DMA方式,直接存取控制方式,外设和内存之间的数据交换过中,cpu只要在开头的时候做好控制,剩下的交给DMA控制器就行。
4、通道
5、输入输出处理机