进程调度:一个例子区分响应时间、周转时间和等待时间

2024-01-16 21:38

本文主要是介绍进程调度:一个例子区分响应时间、周转时间和等待时间,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

参考链接

arrival time:the time when a process enters into the ready state and is ready for its execution.(进程进入就绪态的时刻)
burst time: the total time taken by the process for its execution on the CPU(进程在CPU上执行花费的时间,不包括I/O时间)

响应时间(Response time):Response time is the time spent when the process is in the ready state and gets the CPU for the first time. (自进程就绪至进程第一次获得CPU响应的时间)

Response time = Time at which the process gets the CPU for the first time - Arrival time

周转时间(turnarouad time):Turnaround time is the total amount of time spent by the process from coming in the ready state for the first time to its completion.(进程从第一次进入就绪状态到完成所花费的总时间。)

Turnaround time = Exit time - Arrival time

等待时间(Waiting time):Waiting time is the total time spent by the process in the ready state waiting for CPU.(进程处于就绪状态等待CPU所花费的总时间)

Waiting time = Turnaround time - Burst time

例题:

Suppose round robin scheduler(时间片轮转调度算法) is used and the quantum is 2. Given the below 4 processes:
在这里插入图片描述
甘特图:
调度方式
补充一下就绪队列时刻表:(就绪队列队首的进程即为当前要运行的进程
在这里插入图片描述
:时刻2 :此时p1完成一个时间片,p2到来,先将新进程(p2)插入到就绪队列尾部,再将经过一个时间片后未执行完毕的p1插入到就绪队列尾部。

响应时间(Response time) : (第一次响应 - 到达时间)
P1: 0 - 0 = 0
P2: 2 - 2 = 0
P3: 6 - 3 = 3
P4: 12 - 9 = 3

周转时间(turnarouad time): (结束时刻 - 到达时间)
P1: 14 - 0 = 14
P2: 10 - 2 = 8
P3: 8 - 3 = 5
P4: 13 - 9 = 4

等待时间(Waiting time):(周转时间 - 运行时间)
P1: 14 - 7 = 7
P2: 8 - 4 = 4
P3: 5 - 2 = 3
P4: 4 - 1 = 3

扩展:

带权周转时间 = 周转时间/运行时间

这篇关于进程调度:一个例子区分响应时间、周转时间和等待时间的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/613975

相关文章

Linux下进程的CPU配置与线程绑定过程

《Linux下进程的CPU配置与线程绑定过程》本文介绍Linux系统中基于进程和线程的CPU配置方法,通过taskset命令和pthread库调整亲和力,将进程/线程绑定到特定CPU核心以优化资源分配... 目录1 基于进程的CPU配置1.1 对CPU亲和力的配置1.2 绑定进程到指定CPU核上运行2 基于

Javaee多线程之进程和线程之间的区别和联系(最新整理)

《Javaee多线程之进程和线程之间的区别和联系(最新整理)》进程是资源分配单位,线程是调度执行单位,共享资源更高效,创建线程五种方式:继承Thread、Runnable接口、匿名类、lambda,r... 目录进程和线程进程线程进程和线程的区别创建线程的五种写法继承Thread,重写run实现Runnab

go中的时间处理过程

《go中的时间处理过程》:本文主要介绍go中的时间处理过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1 获取当前时间2 获取当前时间戳3 获取当前时间的字符串格式4 相互转化4.1 时间戳转时间字符串 (int64 > string)4.2 时间字符串转时间

怎样通过分析GC日志来定位Java进程的内存问题

《怎样通过分析GC日志来定位Java进程的内存问题》:本文主要介绍怎样通过分析GC日志来定位Java进程的内存问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、GC 日志基础配置1. 启用详细 GC 日志2. 不同收集器的日志格式二、关键指标与分析维度1.

Java进程异常故障定位及排查过程

《Java进程异常故障定位及排查过程》:本文主要介绍Java进程异常故障定位及排查过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、故障发现与初步判断1. 监控系统告警2. 日志初步分析二、核心排查工具与步骤1. 进程状态检查2. CPU 飙升问题3. 内存

Golang如何对cron进行二次封装实现指定时间执行定时任务

《Golang如何对cron进行二次封装实现指定时间执行定时任务》:本文主要介绍Golang如何对cron进行二次封装实现指定时间执行定时任务问题,具有很好的参考价值,希望对大家有所帮助,如有错误... 目录背景cron库下载代码示例【1】结构体定义【2】定时任务开启【3】使用示例【4】控制台输出总结背景

C++ 函数 strftime 和时间格式示例详解

《C++函数strftime和时间格式示例详解》strftime是C/C++标准库中用于格式化日期和时间的函数,定义在ctime头文件中,它将tm结构体中的时间信息转换为指定格式的字符串,是处理... 目录C++ 函数 strftipythonme 详解一、函数原型二、功能描述三、格式字符串说明四、返回值五

从基础到进阶详解Pandas时间数据处理指南

《从基础到进阶详解Pandas时间数据处理指南》Pandas构建了完整的时间数据处理生态,核心由四个基础类构成,Timestamp,DatetimeIndex,Period和Timedelta,下面我... 目录1. 时间数据类型与基础操作1.1 核心时间对象体系1.2 时间数据生成技巧2. 时间索引与数据

Windows的CMD窗口如何查看并杀死nginx进程

《Windows的CMD窗口如何查看并杀死nginx进程》:本文主要介绍Windows的CMD窗口如何查看并杀死nginx进程问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录Windows的CMD窗口查看并杀死nginx进程开启nginx查看nginx进程停止nginx服务

Java进程CPU使用率过高排查步骤详细讲解

《Java进程CPU使用率过高排查步骤详细讲解》:本文主要介绍Java进程CPU使用率过高排查的相关资料,针对Java进程CPU使用率高的问题,我们可以遵循以下步骤进行排查和优化,文中通过代码介绍... 目录前言一、初步定位问题1.1 确认进程状态1.2 确定Java进程ID1.3 快速生成线程堆栈二、分析