操作系统思维导图

欠下的总是要还的,对操作系统的学习!
持续更新:

操作系统

操作系统引论

进程的描述与控制

前趋图和程序执行

  • 前趋图

    • 程序执行的先后顺序图
  • 程序顺序执行

  • 程序并发执行

进程的描述

  • 进程的定义和特征

    • 进程实体(进程映像)

      • 程序段
      • 相关数据段
      • PCB
    • 进程的特征

      • 动态性
      • 并发性
      • 独立性
      • 异步性
  • 进程的基本状态及转换

    • 三种状态

      • 就绪

      • 执行

      • 阻塞

        • 静止阻塞
        • 活动阻塞
    • 引入

      • 创建
      • 激活
  • 挂起操作和进程状态的转换

    • 挂起

    • 终止

      • 操作系统善后
      • PCB清零
  • 进程管理中的数据结构

    • 数据结构分类

      • 内存

        • 内存表
      • 设备

        • 设备表
      • 文件

        • 文件表
      • 进程

        • 进程1....n

          • 进程实体及资源
    • PCB作用

      • 作为独立运行基本单位的标志
      • 能实现间断性运行方式
      • 提供进程管理所需要的信息
      • 提供进程调度所需要的信息
      • 实现与其他进程的同步与通信
    • PCB中的信息

      • 进程标识符

        • 外部标识符
        • 内部标识符
      • 处理机状态

        • 处理及寄存器中的内容组成

          • 通用寄存器

            • 用户寄存器
          • 指令计数器

          • 程序状态字

          • 用户栈指针

      • 进程调度信息

        • 进程状态

        • 进程的优先级

        • 进程调度所需的其他信息

        • 事件

          • 阻塞原因
    • PCB的组织方式

      • 线性方式
      • 链接方式
      • 索引方式

进程控制

  • 操作系统内核

    • OS内核两大功能

      • 支撑功能

        • 中断处理
        • 时钟管理
        • 原语操作
      • 资源管理功能

        • 进程管理
        • 存储器管理
        • 设备管理
  • 进程的创建

    • 申请空白PCB
    • 为新进程分配其运行所需的资源
    • 初始化进程控制块
    • 如果进程就绪队列能够接纳新进程,就将新进程插入就绪队列
  • 进程的终止

    • 终止原因

      • 正常结束
      • 异常结束
    • 终止过程

      • 根据被终止的进程标识符,检索PCB,读取进程状态
      • 若处于执行态,立即终止执行,并置调度标志为真,用于指示该进程被终止后应重新调度
      • 若该进程还有子孙进程,也予以终止
      • 将被终止进程所拥有的全部资源或者归还父进程,或系统
      • 将被终止的进程,移出其所在队列或列表,等待其他程序收集信息
  • 进程的阻塞与唤醒

    • 阻塞原因

      • 资源亲求失败
      • 等待某种操作的完成
      • 新数据尚未到达
      • 等待新任务的到达
    • 阻塞过程

      • 自身过程(调用block)
      • 将PCB插入阻塞队列
    • 唤醒步骤

      • 1、其他进程调用wakeup
      • 2、从阻塞队列移出
      • 3、将状态修改为就绪
      • 4、将PCB插入就绪队列
  • 进程的挂起与激活

    • 挂起

      • 1、调用suspend源语

      • 2、检查状态:

        • 处于就绪->改为静止就绪
        • 活动阻塞->静止阻塞
      • PCB移至某指定内存区域

    • 激活

      • 1、调用active

      • 2、从外存调入内存

      • 3、检查状态

        • 静止就绪->活动就绪
        • 静止阻塞->活动阻塞

进程同步

  • 进程同步的基本概念

    • 两种制约关系

      • 间接相互制约
      • 直接相互制约
    • 临界资源

    • 临界区

    • 同步机制应遵守的规则

      • 空闲让进
      • 忙则等待
      • 有限等待
      • 让权等待
  • 硬件同步机制

    • 关中断

      • 在进入锁测试前关闭中断

        • 缺点

          • 1、滥用关中断权力可能导致严重后果
          • 2、时间过长会影响系统效率
          • 3、不适用于多CPU
    • Test-and-Set实现互斥

    • Swap

  • 信号量机制

    • 1、整型信号量
    • 2、记录型信号量
    • 3、AND型信号量
    • 4、信号量集
  • 信号量的应用

    • 实现进程互斥
    • 实现前趋关系
  • 管程机制

    • 资源管理程序

经典进程的同步问题

  • 生产者消费者问题
  • 哲学家进餐问题
  • 读者-写者问题

进程通信

  • 进程通信的类型

    • 管道通信系统

      • 需要提供的能力

        • 互斥
        • 同步
        • 确定对方存在
    • 消息传递系统

      • 直接通信方式
      • 间接通信方式
    • 共享存储器系统

      • 基于共享数据结构的通信方式
      • 基于共享存储区的通信方式
    • 客户机-服务器系统

      • 套接字

        • 1、基于文件型
        • 2、基于网络型
      • 远程过程调用

      • 远程方法调用

  • 消息传递通信的实现方式

    • 直接消息传递系统

      • 直接通信原语
      • 消息的格式
      • 进程的同步方式
      • 通信链路
    • 信箱

  • 直接消息传递系统实例

线程的基本概念

  • 线程的引入

    • 减少程序在并发执行时的时空开销
  • 线程与进程的比较

    • 进程的基本属性

      • 拥有资源的独立单位
      • 可独立调度和分配的基本单位
    • 线程

      • 作为调度和分配的基本单位
    • 比较dian

      • 调度基本单位
      • 并发性
      • 资源
      • 独立性
      • 系统开销
      • 支持多处理机
  • 线程的状态和线程控制块

    • 线程状态

      • 执行
      • 就绪
      • 阻塞
    • TCB

      • 线程标识符
      • 一组寄存器
      • 线程运行状态
      • 优先级
      • 线程转悠存储区
      • 信号屏蔽
      • 堆栈指针

线程的实现

  • 线程的实现方式

    • 内核支持线程KST
    • 用户级线程ULT
    • 组合方式
    • 多对多模型
  • 线程的实现

  • 线程的创建和终止

    • 线程的创建

处理机调度与死锁

处理机调度的层次和调度算法的目标

  • 处理机调度的层次

    • 高级调度

      • 对象是作业
    • 低级调度

      • 进程调度
      • 短程调度
      • 对象是进程
    • 中级调度

      • 内存调度
  • 处理机调度的目标

    • 资源利用率
    • 公平性
    • 平衡性
    • 策略强调执行
  • 批处理系统的目标

    • 平均周转时间短
    • 系统吞吐量高
    • 处理机利用率大
  • 分时系统的目标

    • 响应块
    • 均衡性
  • 实时系统的目标

    • 截至时间的保证
    • 可预测性

作业与作业调度

  • 批处理系统中的作业

    • 作业的定义

      • 比程序广泛
      • 程序和数据
      • 作业说明书
    • 作业步

    • 作业运行的三个阶段

      • 收容阶段
      • 运行阶段
      • 完成阶段
    • 作业的三个状态

      • 后备状态
      • 运行状态
      • 完成状态
  • 调度算法

    • 先来先服务

    • 短作业优先

    • 优先级调度算法

    • 高响应比优先调度算法

      • R=(等待时间+要求服务时间)/要求服务时间=响应时间/要求服务时间
    • 最早截至时间优先

    • 最低松弛度优先

      • 任务越紧,优先级越高
  • 调度算法的分类

    • 轮转调度算法
    • 优先级调度算法
    • 多队列调度算法
    • 多级反馈队列

死锁

  • 定义

    • 每个进程都在等待别人的条件
  • 产生死锁的必要条件

    • 互斥条件
    • 请求和保持条件
    • 不可抢占条件
    • 循环等待条件
  • 死锁处理

    • 预防

      • 破坏请求和保持条件

        • 第一种协议

          • 第开始运行就请求全部资源
        • 第二种协议

          • 获得初期运行的资源就开始运行
      • 破坏不可抢占条件

      • 破坏循坏等待条件

    • 避免死锁

      • 系统安全状态
      • 银行家算法
    • 检测死锁

    • 解除死锁

      • 抢占资源
      • 终止进程

存储器规则

存储器的层次

  • CPU寄存器
  • 主存
  • 赋存

程序的装入和链接

  • 程序的装入

    • 绝对装入
    • 可重定位
    • 动态运行的装入
  • 程序的链接

    • 静态链接
    • 装入时动态链接
    • 运行时动态链接
  • 连续分配存储的管理方式

    • 单一连续分配
    • 固定连续分配
    • 动态分区分配
  • 分区算法

    • 基于顺序搜索的动态分区分配算法

      • 首次适应算法
      • 循环首次适应算法
      • 最佳适应算法
      • 最坏适应算法
    • 基于索引搜索的动态分区分配算法

      • 快速适应算法
      • 伙伴系统
      • 哈希算法
    • 动态可重定位分区分配

      • 紧凑
      • 动态重定位
      • 动态重定位分区分配算法

对换

  • 类型

    • 整体对换
    • 页面(分段)对换
  • 对换空间的管理

分页存储的管理

虚拟存储器

输入输出系统

文件管理

磁盘存储器的管理

操作系统的接口

多处理机操作系统

多媒体操作系统

保护和安全

操作系统.png

你可能感兴趣的:(操作系统思维导图)