前驱图和程序执行

  • 程序顺序执行时的特征
    • 顺序性
    • 封闭性
    • 可再现性
  • 程序并发执行时的特征
    • 间断性
    • 失去封闭性
    • 不可再现性

进程的描述

  • 进程定义:进程是程序的执行过程,是系统进行资源分配和调度的一个独立单位
  • 进程的特征
    • 动态性
    • 并发性
    • 独立性
    • 异步性
  • 进程的3种基本状态
    • 就绪状态
    • 执行状态
    • 阻塞状态
  • 进程3种基本状态间的转换

进程状态转换

  • 创建状态与终止状态

创建状态与终止状态

  • 挂起操作和进程状态的转换

    • 挂起操作的引入

      • 终端用户的需要
      • 父进程的需要
      • 负荷调节的需要
      • OS的需要
    • 引入挂起操作后3个基本状态间的转换

      • 活动就绪$\Longrightarrow$静止就绪
      • 活动阻塞$\Longrightarrow$静止阻塞
      • 静止就绪$\Longrightarrow$活动就绪
      • 静止阻塞$\Longrightarrow$活动阻塞

      引入挂起操作

  • 引入挂起操作后进程5个基本状态间的转换

    • NULL$\Longrightarrow$创建
    • 创建$\Longrightarrow$活动就绪
    • 创建$\Longrightarrow$静止就绪
    • 执行$\Longrightarrow$终止

    引入挂起操作

    • PCB的作用
      • 作为独立运行基本单位的标志
      • 实现间断性运行方式
      • 提供进程管理所需要的信息
      • 提供进程调度所需要的信息
      • 实现与其他进程的同步与通信
    • PCB中的信息
      • 进程标识符
        • 外部标识符
        • 内部标识符
      • 处理机状态
      • 进程调度信息
      • 进程控制信息
    • PCB组织方式
      • 线性方式
      • 链接方式
      • 索引方式

进程控制

  • 进程的创建
    • 进程的层次结构:父进程、子进程、孙进程
  • 进程图
  • 引起进程创建的事件
    • 用户登录
    • 作业调度
    • 提供服务
    • 应用请求
  • 引起进程终止的事件
    • 正常结束
    • 异常结束
    • 外界干预
  • 引起进程阻塞与唤醒的事件
    • 向系统请求共享资源失败
    • 等待某种操作的完成
    • 新数据尚未到达
    • 等待新任务的到达

进程通信

  • 进程通信的类型
    • 共享存储器系统
      • 基于共享数据结构的通信方式
      • 基于共享存储区的通信方式
    • 管道通信系统(管道机制提供的能力)
      • 互斥
      • 同步
      • 确定对方是否存在
    • 消息传递系统
      • 直接通信方式
      • 间接通信方式
    • 客户机——服务器系统(实现方法)
      • 套接字(分类)
        • 基于文件型
        • 基于网络型
      • 远程过程调用和远程方法调用
  • 消息传递通信的实现方式
    • 直接通信(直接消息传递系统)
      • 直接通信原语
        • 对称寻址方式
        • 非对称寻址方式
      • 消息的格式
      • 进程的同步方式
        • 发送进程阻塞,接收进程阻塞
        • 发送进程不阻塞,接收进程阻塞
        • 发送进程和接收进程均不阻塞
      • 通信链路
        • 单向通信链路
        • 双向通信链路
    • 间接通信(信箱通信)
      • 信箱的结构
        • 信箱头
        • 信箱体
      • 信箱通信原语
        • 信箱的创建和撤销
        • 消息的发送和接收
      • 信箱的类型
        • 私用信箱
        • 公用信箱
        • 共享信箱

线程的概念

  • 线程——调度和分派的基本单位
  • 线程与进程的比较
    • 线程又称轻型进程
    • 传统进程又称重型进程
  • 线程执行的3个状态
    • 执行状态
    • 就绪状态
    • 阻塞状态
  • 多线程OS中的进程属性
    • 进程是一个可拥有资源的基本单位
    • 多个线程可并发执行
    • 进程已不是可执行的实体

线程的实现

  • 线程的实现方式
    • 内核支持线程KST
    • 用户级线程ULT
  • 两种线程的组合方式
    • 多对一模型
    • 一对一模型
    • 多对多模型
  • ULT实现中间系统
    • 运行时系统
    • 核心线程