进程模型与线程模型

进程模型与线程模型

进程模型

并发环境与并发程序

  • 并发环境
    一段时间间隔内,单处理器上有两个或两个以上的程序同时处于开始运行但尚未结束的状态并且次序不是事先确定的

  • 并发程序
    在并发环境中执行的程序

进程的定义

  • 定义:Process
    进程是具有独立功能的程序关于某个数据集合上的一次进行活动,是系统进行资源分配和调度的独立单位

    又称 任务(Task or Job)

    • 程序的一次执行过程
    • 是正在运行程序的抽象
    • 将一个CPU变幻成多个虚拟的CPU——对CPU的抽象
    • 系统资源以进程为单位分配,如内存、文件 、……
      每个具有独立的地址空间
    • 操作系统将CPU调度给需要的进程

进程控制块PCB

  • PCB:Process Control Block
    • 又称 进程描述符进程属性
    • 操作系统用于管理控制进程的一个专门数据结构
    • 记录进程的各种属性,描述进程的动态变化过程
  • PCB是系统感知进程存在的唯一标志

    进程与PCB是一一对应的

  • 进程表:所有进程的PCB集合

进程状态与状态转换

进程的三种基本状态

  • 进程的三种基本状态
    运行态、就绪态、等待态

  • 运行态(Running)
    占有CPU,并在CPU上运行

  • 就绪态(Ready)
    已经具备运行条件,但由于没有空闲CPU,而暂时不能运行

  • 等待态(Waiting/Blocked) (其他说法:阻塞态、封锁态、睡眠态)
    因等待某一事件而暂时不能运行

三状态模型及状态转换

三状态模型及状态转换

  • ① 就绪->运行
    调度程序选择一个新的进程运行

  • ② 运行->就绪

    • 运行进程用完了时间片
    • 一个高优先级进程进入就绪状态,抢占正在运行的进程
  • ③ 运行->等待
    当一个进程等待某个事件发生时

    • 请求OS服务
    • 对资源的访问尚不能进行
    • 等待I/O结果
    • 等待另一个进程提供信息
    • ……
  • ④ 等待->就绪
    所等待的事件发生了

五状态进程模型

五状态进程模型

七状态模型

七状态模型

进程队列

  • 操作系统为每一类进程建立一个或多个队列
  • 队列元素为PCB
  • 伴随进程状态的改变,其PCB从一个队列进入另一个 队列

进程队列

  • 多个等待队列等待的事件不同
  • 就绪队列也可以多个
  • 单CPU情况下,运行队列中只有一个进程

五状态进程模型的队列模型

五状态进程模型的队列模型


参考资料:Coursera公开课:操作系统原理(Operating Systems)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值