操作系统进程及其调度

进程概念

  • 行为规则为程序,程序在cpu执行的活动称为进程。
  • 进程是独立可调度的活动。
  • 进程是 可并发、独立功能的程序关于某数据集合的一次执行过程。
  • 进程是操作系统资源分配和调度的基本单位。

进程特征

  • 动态
  • 独立
  • 并发
  • 异步
  • 结构性

进程与程序区别

  • 动态、静态
  • 程序长期保存、进程有生命周期
  • 进程是独立运行基本单位、程序为静态文本
  • 进程程序无一一调度关系
  • 程序是指令有序集合、进程有几段组成

进程与线程区别

进程线程
资源拥有者、调度基本单位进程的运行线
  • 用户级线程:库来支持,CPU不可是被
  • 内核级线程
  • 混合方式

进程状态

三态

  • 运行:等待事件就到阻塞状态、超时到就绪状态。
  • 就绪:调度出运行状态。
  • 阻塞:等待事件完成转为就绪状态

五态

  • 新建
  • 终止

进程控制块PCB

在这里插入图片描述

目标

  • 避免死锁
  • 避免饥饿
  • 公平
  • 吞吐量

概念

非抢占式

进程主动放弃CPU

抢占式调度

强迫运行进程让出cpu

周转时间

t=完成时间-提交时间
ts(提交时间)
tc(完成时间)
意义:进程在系统中停留时间长短。

平均周转时间

t=(t1+t2+…)/n
意义:越短,意味着进程在系统中停留越短,说明系统吞吐量大,资源利用率高。

带权周转时间

w=t / tr
tr:进程运行时间
t:周转时间
意义:相对停留时间

典型调度算法

先来先服务fcfs

描述

看先后挑选作业

特点

  • 容易
  • 只考虑等候时间,不考虑运行时间长短。
  • 非抢占式
  • 不利于短作业

短作业优先调度(SJF)

描述

考虑运行时

特点

  • 忽视等待时间
  • 容易出现饥饿现象
  • 非抢占式

非抢占/抢占式式优先级调度算法

描述

确定静态优先数:
基于进程所需资源多少、运行时间长短和进程类型。
确定动态优先数:
基于CPU时长、I/O操作等待消耗。

进程运行完,挑选下一个最高优先级。

响应比高者优点

描述

响应时间和运行时间比值。
响应时间=等待时间+运行时间。

特点

  • 有利于短作业。
  • 有利于等候时间长的作业。

时间片轮转调度(RR)

描述

先进先出原则排队。时间片运行完后加入队尾。

特点

  • 公平
  • 交互性
  • 时间片太大->fcfs
  • 抢占式

多级队列调度

描述

  • 各个队列优先级不同
  • 同队列用自己的调度算法
  • 队列间用优先级调度

最短剩余时间优先算法(srtf)

描述

sjf算法改为抢占式调度算法。
如果新作业需要CPU时间比当前执行作业少,强行赶走当前执行作业。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值