【操作系统】进程的运行机制

进程的状态

  • 创建(New)
  • 就绪(Ready)
  • 执行(Running)
  • 阻塞(Blocked)
  • 终止(Terminated)

在这里插入图片描述

原语

操作系统通过原语来对进程进行有效的管理,包括创建进程、撤销已有的进程、挂起、阻塞和唤醒、进程切换等多种操作。

原语的概念

由若干条指令组成,完成特定的功能,是一种原子操作

原语的特点

  • 原子操作,要么全做,要么全不做,执行过程不会被中断
  • 在管态/系统态/内核态下执行,常驻内存
  • 是内核三大支撑功能(中断处理/时钟管理/原语操作)之一;

进程控制相关原语

  • 创建原语:create
  • 阻塞原语:block
  • 唤醒原语:wakeup
  • 撤销原语:destory

下图用一个例子对原语进行进程控制进行说明:

在这里插入图片描述

挂起与激活

为了方便系统和用户观察和分析进程,在进程控制中提供了挂起原语和激活原语。

  • 挂起原语:suspend
    • 静止就绪:放外存,不调度
    • 静止阻塞:等待事件
  • 激活原语:active
    • 活动就绪:等待调度
    • 活动阻塞:等待唤醒

在这里插入图片描述

进程的调度

根据一定的算法和原则将处理机资源进行重新分配的过程。

  • 前提:作业/进程数远远大于处理机数;
  • 目的:提高资源利用率,减少处理机空闲时间;
  • 调度程序:一方面要满足特定系统用户的需求(快速相应),另一方面要考虑系统整体效率(系统平均周转时间)和调度算法本身的开销;

调度的层次

  • 高级调度/作业调度
    • 把后备作业调入内存
    • 只调入一次,调出一次
  • 中级调度/内存调度
    • 将进程调至外存,条件合适再调入内存
    • 在内、外存对换区进行进程对换
  • 低级调度/进程调度
    • 从就绪队列选取进程分配给处理机
    • 最基本的调度,频率非常高(相当于一个时间片完成)

在这里插入图片描述

调度方式

  • 剥夺式/抢占式调度

    • 立即停止当前进程
    • 分配处理机给另一个进程
    • 原则:优先权/短进程优先/时间片原则
  • 非剥夺/非抢占式调度

    • 若有进程请求执行
    • 等待直到当前进程完成或者阻塞
    • 缺点:适用于批处理系统,不适用于分时/实时系统

调度时机

  • 进程运行完毕
  • 进程时间片用完
  • 进程要求I/O操作
  • 执行某种原语操作
  • 高优先级进程申请运行(抢占式调度)

调度过程

  • 保存镜像:记录进程现场信息
  • 调度算法:确定分配处理机的原则
  • 进程切换:分配处理机给其他进程
  • 处理机回收:从进程收回处理机
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Honey Ro

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值