Skip to content

操作系统概述

  • 三个重要作用:
    • 管理运行的程序、分配各种软硬件资源
    • 提供友善的人机界面
    • 为应用程序的开发运行提供了一个高效平台
  • 四个特征:并发性、共享性、虚拟性和不确定性(异步性)
  • 操作系统功能
    • 进程管理
    • 文件管理
    • 存储管理
    • 设备管理
    • 作业管理
  • 操作系统分类
    • 批处理操作系统
    • 分时操作系统
    • 实时操作系统
    • 网络操作系统
    • 分布式操作系统
    • 微机操作系统
  • 嵌入式操作系统特点
    • 微型化
    • 可定制
    • 实时性
    • 可靠性
    • 易移植性
  • 嵌入式 OS 初始化过程:片级初始化 —> 板级初始化 —> 系统初始化

进程的组成和状态

  • 进程的组成:进程控制块 PCB(唯一标识)、程序(描述进程做什么)、数据(存放执行时所需数据)
  • 进程状态:三态图

前趋图

  • 用于表示:任务间的并行、任务间的先后顺序

前趋图

进程资源图

进程资源图

  • 表示进程和资源之间的分配和请求关系
  • P 代表进程,R 代表资源。R 指向 P 表示 R 已经有资源分配给了 P,P 指向 R 表示 P 还需要一个 R 资源才可以执行
  • 阻塞节点:某进程请求的资源已经全部分配完毕,该进程被阻塞无法继续,如 P2
  • 非阻塞节点:某进程请求的资源还有剩余,可以分配给该进程继续运行,如 P1 和 P3
  • 当所有进程都是阻塞节点时,即陷入死锁状态

进程同步和互斥

  • 临界资源:各进程间需要以互斥方式进行访问的资源
  • 临界区:进程中对临界资源进行操作的那段程序
  • 互斥:某资源在某一时间只能由一个任务单独使用
  • 同步:多个任务可以并发执行,只不过速度上有差异,在一定情况下停下等待
  • 互斥信号量:对临界资源采用互斥访问,使用互斥信号量后其他进程无法访问,初值是 1
  • 同步信号量:对共享资源的访问控制,初值一般是共享资源的数量
  • 信号量操作
    • P 操作:申请资源,S = S - 1,若 S < 0,则该进程进入阻塞状态,进入阻塞队列
    • V 操作:释放资源,S = S + 1,若 S <= 0,则从阻塞状态唤醒一个进程,将其插入就绪队列
  • 生产者消费者问题

仓库信号量

进程调度

  • 指当有更高优先级的进程到来时如何分配 CPU,分为可剥夺和不可剥夺
  • 在某些操作系统中,一个作业从提交到完成需要经历三级调度
    • 高级调度,决定处于输入池的哪个后备作业可以调入主系统做好运行的准备,只需要一次
    • 中级调度,决定处于交换区中的哪个就绪进程可以调入内存,以便参与 CPU 竞争
    • 低级调度,决定处于内存中的哪个就绪进程可以占用 CPU
  • 调度算法
    • 先来先服务 FCFS
    • 时间片轮转
    • 优先级调度
    • 多级反馈调度:时间片轮转和优先级调度结合,设置多个不同优先级的就绪队列,不同优先级分配不同的时间片长度。==存疑==
  • 死锁产生的必备条件
    • ==互斥==:资源互斥
    • ==不可抢占==:系统不能剥夺进程资源
    • ==占用且等待==:每个进程占用资源并等待其他资源
    • ==循环等待==:进程资源图是一个环路
  • 解决死锁:打破四大条件
    • 死锁预防:采用某种策略限制并发进程对资源的请求,破坏四个条件之一
    • 死锁避免:银行家算法,提前计算一条不会死锁的资源分配方法才分配资源,否则不分配
    • 银行家算法真题
    • 死锁检测:允许死锁产生,但定时运行检测死锁的程序,发现则尝试解除
    • 死锁解除:如强制剥夺资源、撤销进程等
    • ==死锁资源计算==:n 个进程,每个进程都需要 R 个资源,则发生死锁的场景的最大可能资源数是 n*(R-1),不发生死锁的最小资源数为 n*(R-1)+1

线程

  • 进程有两个属性:可拥有资源的独立单位、可独立调度和分配的基本单位
  • 由于进程开销较大,进程数目不宜过多
  • 线程作为调度和分配的基本单位,进程作为独立分配资源的单位
  • 线程基本不拥有资源,只拥有一些必备资源(如 PC、一组寄存器和栈),与其他线程共享进程的全部资源

分区存储管理

  • 即整存,将某进程运行所需的内存整体一起分配。三种分区方式
    • 固定分区,会产生内部碎片
    • 可变分区,会产生外部碎片
    • 可重定位分区,移动所有已经分配好的区域使其连续
  • 可变分区算法
    • 首次适应法,从头查找到第一个足够的空闲块
    • 最佳适应法,找到最小的足够的空闲块
    • 最差适应法,找到最大的足够的空闲块
    • 循环首次适应法,从头查找第一个足够的空闲块,若下次还需分配则找下一个,这样就不用每次都从头查找

分页存储管理

  • 逻辑页分为页号和页内地址,页号到物理块号需要查询页表才能得到对应的物理块号

页表翻译过程

  • 页面置换算法
    • 最优算法:OPT,理论上算法,淘汰未来最长时间不被访问的页面
    • 先进先出算法:FIFO,淘汰最先调入内存的页,可能产生更抖动
    • 最近最少使用算法:LRU,淘汰过去最少使用的页
    • 淘汰原则:优先淘汰最近未访问的,而后淘汰最近未修改的
  • 快表:一块小容量的相联存储器,按内容访问,速度快,一般存放当前访问最频繁的少数活动页面的页号,即页表的 cache

分段存储管理

  • 将进程空间分为一个个段,每段有段号和段内地址。每段物理大小不同,分段是根据逻辑整体分段。段表有段长和基址两个属性

段地址翻译

段页式存储管理

  • 对进程空间先分段后分页
    • 优点:空间浪费小、存储共享容易,存储保护容易、能动态链接
    • 缺点:复杂度和开销增加,需要的硬件和占用增加,执行速度下降

段页式管理

设备管理概述

  • 设备是计算机系统与外界交互的工具,负责计算机与外部的输入输出工作,通常成为外部设备(外设)
  • 分类
    • 按数据组织:块设备、字符设备
    • 按设备功能:输入、输出、存储、网络、供电
    • 按资源分配:独占、共享、虚拟
    • 按数据传输速率:低速、中速、高速
  • 设备管理:多个进程竞争使用设备时,按策略分配和管理各种设备。动态掌握并记录设备状态

I/O 软件

  • I/O 设备管理软件的层次图

I/O 设备管理软件的层次图

  • 与设备无关软件检查高速缓存中有无要读的数据块
  • 调用驱动程序,向 I/O 硬件发送请求
  • 磁盘操作完成时,硬件产生中断,转入中断处理
  • 中断处理唤醒用户进程取回从磁盘读取的信息

设备管理技术

  • SPOOLING(外围设备联机操作)技术,在外设上建立两个数据缓冲区,,分别称为输入井和输出井

文件管理概述

  • 文件是具有符号名、在逻辑上具有完整意义的一组相关信息项的集合
  • 信息项是构成文件内容的基本单位,包括文件体和文件说明
  • 文件管理系统,即操作系统中实现文件统一管理的一组软件和相关数据的集合,专门负责管理和存取文件信息的软件机构
  • 文件的逻辑结构可分为:有结构的记录式文件;无结构的流式文件
  • 文件的物理结构指文件在物理存储设备上的存放方法
    • 连续结构:逻辑上连续的文件信息依次存放在连续编号的物理块上
    • 链接结构:将逻辑上连续的文件信息存放在不连续的物理块,每个物理块设有指针指向下一块
    • 索引结构:将逻辑上连续的文件信息存放在不连续的物理块,索引表记录了文件信息所在的逻辑块号对应的物理块号
    • 多个物理块的索引表。在文件创建时由系统自动建立

索引文件结构

索引结构

  • 0-9 为直接索引,每个索引节点存放的是内润
  • 10 为一级间接索引,存放的为链接到直接物理盘块的地址
  • 多级索引节点指向次级索引节点

索引文件计算

文件目录

  • 文件控制块的有序集合称为文件目录

文件存储空间管理

  • 文件存取方法是指读/写文件存储器上一个物理块方法,分为顺序存取和随机存取
  • 管理方式
    • 空闲区表
    • 位示图:每一位对应一个物理块,0 和 1 表示存储和占用
    • 空闲块链
    • 成组链接法

如有转载或 CV 请标注本站原文地址