声明:本文内容是对zst账号所讲的往年常考知识点的汇总,若喜欢看视频学习可移步b站

题号:23~28  分值:6分

计算机系统层次结构图:

  • 系统软件:汇编程序、编译程序和Java解释器

一、进程管理

1、前趋图

考的频率较高

  • 有向无循环图
  • 程序顺序执行
  • 程序顺序执行时的主要特征:顺序性、封闭性和可再现性
  • 相关考点:PV操作,上P下V

2、前驱图

  • 程序并发执行
  • 程序并发执行时的主要特征:
    • 失去了程序的封闭性
    • 程序和机器的执行程序的活动不再一一对应
    • 并发程序间的相互制约性

3、进程的三态模型

进程 CPU 资源
运行
就绪 ×
阻塞(等待) × ×

4、进程的通信

4.1  同步

  • 相互合作
  • 是合作进程间的直接制约问题

4.2  互斥

  • 互斥
  • 是申请临界资源进程间的间接制约问题

5、PV操作

5.1  同步

  • 两个流程中的信号量是交叉的为同步

5.2  互斥

  • 信号量为1
  • 一个流程中信号量成对的为互斥

6、死锁

6.1  同类资源分配不当引起死锁

  • 引起死锁:当系统中有m个资源被n个进程共享,当每个进程都要求k个资源,m<nk时,即资源数小于进程所要求的总数时,可能会引起死锁
  • 满足m \geq n(k-1)+1时,可避免死锁

6.2  死锁的处理

所讲内容只针对软考,有其他策略,但不常考(鸵鸟策略-不理睬策略)

  • 避免策略:
    • 死锁预防:预先静态分配法、资源有序分配法(设法破坏死锁的四个必要条件)
    • 死锁避免:银行家算法(Dijkstra)
6.2.1  银行家算法
  • 在分配资源后加以检测,进入不安全状态,则不予分配
  • 安全状态:指系统按照某个顺序为每个进程分配所需资源,知道最大需求,使每个进程都可顺序完成
  • 判断是否安全的逻辑:
    • 计算每个进程的仍需以及分配资源后的可用资源(只考虑单个进程)
    • 依次给满足仍需资源的进程分配资源,得出分配资源的进程顺序
    • 若所有进程均分配完成则安全
  • 考点:什么执行顺序可保证系统状态是安全的

7、进程资源图

  • 先分配资源再申请资源
  • 考点:
    • 哪个进程是阻塞状态,哪个进程是非阻塞状态
      • 答题逻辑:分配好资源后,进程申请的资源不足使,进程进入阻塞状态(不考虑进程运行完释放的资源)
    • 进程资源图是否可以化解?是的话,化解的顺序是什么?
      • 答题逻辑:能否化解看可运行的进程,运行完后释放资源,其他进程可否满足资源申请,进而运行;
      • 可化解就是非死锁的

8、线程

8.1  属性

  • 可拥有资源的独立单位
  • 可独立调度和分配的基本单位
  • 线程可于同属一个进程的其他线程共享进程所拥有的全部资源

二、存储管理

  • 局部性原理:空间局部性、时间局部性
  • 页号的状态位、访问位和修改位都为0时,说明当前页号不在内存中,则不能淘汰,淘汰包含0的
  • 状态位含义:0表示不在内存,1表示在内存
  • 访问位含义:0表示未访问过,1表示访问过
  • 修改位含义:0表示未修改过,1表示修改过

1、分页存储管理

地址结构

  • 结构:页号+页内地址(2进制的位数)
  • 页面大小 = 2的页内地址次方
  • 页面变换(针对页面是4K大小的):
    • 将给出的逻辑地址(十六进制)对应到分页地址结构中的页号和页内地址(一位十六进制对应四位2进制)
    • 逻辑地址中对应的页号转为十进制,再根据给出的页号和物理块号对应关系找到物理块号
    • 物理块号和十六进制的页内地址拼接后得到物理地址
  • 页帧号也就是物理块号

2、段式存储管理

16年之后就没再考过了

地址结构

  • 结构:段号(s)+段内页号(p)+页内地址(w)
  • 考点:
    • 最多有多少个段
    • 每个段最大允许有多少个页
    • 页的大小(单位是K)

三、设备管理

主要是计算题

1、单缓冲区

  • n个作业的处理时间:n(T+M)+C
  • 其中T>C

2、双缓冲区

  • n个作业的处理时间:n*T+M+C
  • 其中T>C+M

3、磁盘调度算法

3.1  先来先服务(FCFS)

3.2  最短寻道时间优先(SSTF)

3.3  扫描算法(SCAN)或电梯调度算法

  • 先选择离磁头最近的请求的方向,直到这个方向没有请求访问再回头

3.4  循环扫描算法(CSCAN)单向扫描算法

  • 保持自里向外移动,直到没有请求访问,回头开始再自里向外

4、旋转调度算法

  • 旋转速度为Ams/周,处理记录的时间是Bms,计算处理n个记录的最长时间:
    • 计算每个记录的读取时间:A/n = C
    • 计算公式:(n-1)(A+C)+C+B
  • 对存储数据的排列顺序进行优化,处理n个记录的最少时间为:
    • n(B+C)

四、文件管理

1、多级索引结构

  • 直接索引:地址和块一一对应
  • 一级索引:一个地址占4B,一个磁盘索引块占1KB,共有256块
  • 二级索引:256*256块

2、目录结构

  • 相对路径:后续路径/文件名
  • 绝对路径:/当前文件/后续目录/文件名

3、位示图

  • 用二进制的一位来表示一个物理块的适用情况,n个物理块就有n位
  • 主要特点是位示图的大小由磁盘空间的大小决定
  • 计算机系统中字长有16位、32位和64位
  • 考点:物理块号在位示图的第几个字中表示

五、作业管理

其他

  • 在磁盘调度管理中通常先进行移臂调度,再进行旋转调度
Logo

openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构

更多推荐