欢迎来到魔幻小生的博客

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

操作系统层次

image

进程管理

顺序执行

image

真题标记

image

image

并发执行

image

image

image

例题

image

进程三态模型

image

  • 运行:CPU+资源
  • 就绪:有资源无CPU
  • 阻塞(等待):无资源无CPU(等待某一事件发生)

同步与互斥

image

信号量机制与PV操作

image

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

image

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

image

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

image

互斥信号量初值 S=1

image

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

image

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

死锁

image

  • 只要满足 m >= n*(k-1)+1 那就不会发生死锁

  • m为资源数量,n为进程数量,k为每个进程需要的资源数量

进程获得足够资源运行后,便可以释放资源给其它进程使用

进程资源图

image

箭头指向P是分配资源,指向R是申请资源

P运行完成后会释放资源,若释放资源后均能运行,则可以化简,不存在死锁

image

例题

image

死锁的处理

image

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

image

线程

image

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

局部性原理

image

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

不在内存的不能被淘汰,优先跳汰在内存且最近没被修改/访问的

image

image

存储管理

分页存储管理

image

其物理地址是3C20H(页号转换为物理块号)

段页式存储管理

image

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

缓冲区

单缓冲区

image

记公式:(T+M)*n+C

双缓冲区

image

记公式:T*n+M+C

磁盘调度算法

先来先服务

image

按顺序访问

最短寻道时间优先

image

每次查找最近的地址来访问

扫描算法或电梯调度算法

image

离哪头近就朝哪头访问,全访问完后朝另一头访问

循环扫描算法或单向扫描算法

image

沿磁头移动方向访问到头,再返回到磁头,重新访问

旋转调度算法

image

单个读取时间 = 旋转周期/物理块(扇区)数量

X=处理完位置到下一个记录起始位置所需时间

  • 顺序处理:(单个读取时间+单个处理时间+X)*(物理块数量-1) + (单个读取时间+单个处理时间)

  • 优化处理(磁头在哪就处理哪个扇区):(单个读取时间+单个处理时间)*物理块数量

例题

image

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

image

文件管理

多级索引结构

image

例题

image

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

image

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

image

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

image

1024/4=256个索引块

文件目录

image

image

image

目录结构

image

image

主要考察绝对路径和相对路径

位示图

image

posted @ 2024-05-05 00:54  魔幻小生  阅读(26)  评论(0编辑  收藏  举报