软件设计师:操作系统知识
操作系统层次

进程管理
顺序执行

真题标记


并发执行



例题

进程三态模型

- 运行:CPU+资源
 - 就绪:有资源无CPU
 - 阻塞(等待):无资源无CPU(等待某一事件发生)
 
同步与互斥

信号量机制与PV操作

S>0 可用资源数 S<0 阻塞队列里进程数

- P:申请一个资源 S=S-1
 - V:释放一个资源 S=S+1
 

PV操作实现进程间同步和互斥

互斥信号量初值 S=1

单缓冲区信号量初值 S1=1 S2=0

多缓冲区信号量初值 S=1 S1=n S2=0
死锁

- 
只要满足
m >= n*(k-1)+1那就不会发生死锁 - 
m为资源数量,n为进程数量,k为每个进程需要的资源数量
 
进程获得足够资源运行后,便可以释放资源给其它进程使用
进程资源图

箭头指向P是分配资源,指向R是申请资源
P运行完成后会释放资源,若释放资源后均能运行,则可以化简,不存在死锁

例题

死锁的处理

死锁避免算法:银行家算法

线程

线程可与同属一个进程的其它线程共享进程所拥有的全部资源,无法共享其它线程的资源(进程共享、线程不共享)
局部性原理

谁最近被访问了或者修改了那它就大概率还会被访问或修改,所以不能被淘汰,优先淘汰的是最近没有被访问或者修改的
不在内存的不能被淘汰,优先跳汰在内存且最近没被修改/访问的


存储管理
分页存储管理

其物理地址是3C20H(页号转换为物理块号)
段页式存储管理

段号是31-24+1=8,页号(最大允许)是23-12+1=12,页内地址是11-0+1=12,也就分别是28,212,212
缓冲区
单缓冲区

记公式:(T+M)*n+C
双缓冲区

记公式:T*n+M+C
磁盘调度算法
先来先服务

按顺序访问
最短寻道时间优先

每次查找最近的地址来访问
扫描算法或电梯调度算法

离哪头近就朝哪头访问,全访问完后朝另一头访问
循环扫描算法或单向扫描算法

沿磁头移动方向访问到头,再返回到磁头,重新访问
旋转调度算法

单个读取时间 = 旋转周期/物理块(扇区)数量
X=处理完位置到下一个记录起始位置所需时间
- 
顺序处理:(单个读取时间+单个处理时间+X)*(物理块数量-1) + (单个读取时间+单个处理时间)
 - 
优化处理(磁头在哪就处理哪个扇区):(单个读取时间+单个处理时间)*物理块数量
 
例题

顺序处理:(3+3+24)*(9-1)+(3+3)=246ms
优化处理:(3+3)*9=54ms

文件管理
多级索引结构

例题

有512/3=170个索引块
一级索引:170*512
二级索引:170*170*512

有1024/4=256个索引块
5+256*2+256*256=66053

有11024/3=341个索引块
二级索引:341*341*1KB

有1024/4=256个索引块
文件目录



目录结构


主要考察绝对路径和相对路径
位示图


                
            
        
浙公网安备 33010602011771号