CN106354555A - 一种操作***进程调度算法 - Google Patents
一种操作***进程调度算法 Download PDFInfo
- Publication number
- CN106354555A CN106354555A CN201610723435.8A CN201610723435A CN106354555A CN 106354555 A CN106354555 A CN 106354555A CN 201610723435 A CN201610723435 A CN 201610723435A CN 106354555 A CN106354555 A CN 106354555A
- Authority
- CN
- China
- Prior art keywords
- scheduling
- dispatch
- dispatching
- algorithm
- determines whether
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 230000026676 system process Effects 0.000 title claims abstract description 9
- 238000004364 calculation method Methods 0.000 title claims abstract description 8
- 238000000034 method Methods 0.000 claims abstract description 104
- 241001522296 Erithacus rubecula Species 0.000 claims description 3
- 239000002699 waste material Substances 0.000 abstract description 4
- 230000007547 defect Effects 0.000 abstract description 3
- 230000010354 integration Effects 0.000 abstract 1
- 238000005516 engineering process Methods 0.000 description 2
- 238000007519 figuring Methods 0.000 description 1
- 235000003642 hunger Nutrition 0.000 description 1
- 230000007306 turnover Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明涉及一种操作***进程调度算法,属于操作***技术领域。本发明的技术方案是提供一种操作***进程调度算法,通过综合5种进程调度算法,克服每种进程调度算法应用中的缺陷,提高进程调度程序进行进程调度的合理性,避免***资源的浪费。
Description
技术领域
本发明涉及一种操作***进程调度算法,属于操作***技术领域。
背景技术
在多道程序操作***中,进程调度程序按照一定的算法,动态地把CPU分配给处于就绪队列中的某一个进程,使之执行。
当前,被广泛应用的进程调度算法有先来先服务,短作业优先,时间片轮转,优先级调度,最短剩余时间等算法,然而,先来先服务进程调度算法会导致操作***的平均周转时间的增加;短作业优先进程调度算法和最短剩余时间进程调度算法难以预测进程的执行时间,导致长进程饥饿现象的产生;时间片轮转进程调度算法的时间片长短划分的不够合理,以及优先级调度进程调度算法的优先级数给定的不够合理,都会致使***调度时***开销的增加。
在多道程序操作***中应用单一的进程调度算法,致使进程调度程序不能针对每一种情况进行合理的进程调度,导致***资源的浪费。
发明内容
本发明要解决的技术问题是提供一种操作***进程调度算法,通过综合5种进程调度算法,克服每种进程调度算法应用中的缺陷,提高进程调度程序进行进程调度的合理性,避免***资源的浪费。
本发明是通过如下技术方案来实现的:
一种操作***进程调度算法,所述方法具体步骤包括:
步骤101.令i=1,i为就绪队列进程的序号;
步骤102.读取就绪队列第i个进程Ti;
步骤103.判断进程调度阈值Cim是否大于等于3,Cim表示就绪队列第i个进程Ti的调度阈值Cm, 调度阈值Cm为一个进程分别根据先来先服务、短作业优先、时间片轮转、优先级调度、最短剩余时间五种算法判断是否调度该进程至运行状态的结果的总和,
若Cim≥3,则调度第i个进程Ti至运行状态,若Cim<3,则进行下一步的判断;
步骤104.判断i是否小于n,n表示就绪队列中进程的个数,若i小于n,则i加1,并返回步骤102,否则调度第1个进程T1至运行状态;
步骤105.重复步骤102~步骤104。
进一步地,所述的调度阈值Cm的具体计算步骤包括:
步骤201.读取待调度的进程;
步骤202.应用先来先服务算法判定是否调度该进程,若调度该进程,则C1=1,否则C1=0;
步骤203.应用短作业优先算法判定是否调度该进程,若调度该进程,则C2=1,否则C2=0;
步骤204.应用时间片轮转算法判定是否调度该进程,若调度该进程,则C3=1,否则C3=0;
步骤205.应用优先级调度算法判定是否调度该进程,若调度该进程,则C4=1,否则C4=0;
步骤206.应用最短剩余时间算法判定是否调度该进程,若调度该进程,则C5=1,否则C5=0;
步骤207.计算调度阈值Cm,计算公式为Cm=C1+C2+C3+C4+C5。
本发明具有以下有益效果:
本发明通过综合5种进程调度算法,克服每种进程调度算法应用中的缺陷,提高进程调度程序进行进程调度的合理性,避免***资源的浪费。
附图说明
图1为进程调度算法流程示意图;
图2为调度阈值Cm的计算流程。
具体实施方式
下面结合附图和实施例,对本发明作进一步说明,但本发明的内容并不限于所述范围。
实施例1:如图1、图2所示,一种操作***进程调度算法,所述方法具体步骤包括:
步骤101.令i=1,i为就绪队列进程的序号;
步骤102.读取就绪队列第i个进程Ti;
步骤103.判断进程调度阈值Cim是否大于等于3,Cim表示就绪队列第i个进程Ti的调度阈值Cm, 调度阈值Cm为一个进程分别根据先来先服务、短作业优先、时间片轮转、优先级调度、最短剩余时间五种算法判断是否调度该进程至运行状态的结果的总和,
若Cim≥3,则说明5种算法中至少有3种以上的算法认为应该调度该进程至运行状态,由此确定调度该该进程至运行状态,此时则调度第i个进程Ti至运行状态,若Cm<3,则说明多数算法认为不应该调度该进程至运行状态,因此,进行下一步的判断;
步骤104.判断i是否小于n,n表示就绪队列中进程的个数,若i小于n,则i加1,并返回步骤102,若否则说明该进程为就绪队列队尾进程,说明没有其他的进程需要排序了,此时调度第1个进程T1至运行状态;
步骤105.重复步骤102~步骤104。
进一步地,所述的调度阈值Cm的具体计算步骤包括:
步骤201.读取待调度的进程;
步骤202.应用先来先服务算法判定是否调度该进程,若调度该进程,则C1=1,否则C1=0;
步骤203.应用短作业优先算法判定是否调度该进程,若调度该进程,则C2=1,否则C2=0;
步骤204.应用时间片轮转算法判定是否调度该进程,若调度该进程,则C3=1,否则C3=0;
步骤205.应用优先级调度算法判定是否调度该进程,若调度该进程,则C4=1,否则C4=0;
步骤206.应用最短剩余时间算法判定是否调度该进程,若调度该进程,则C5=1,否则C5=0;
步骤207.计算调度阈值Cm,计算公式为Cm=C1+C2+C3+C4+C5。
以上结合附图对本发明的具体实施方式作了详细说明,但是本发明并不限于上述实施方式,在本领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下作出各种变化。
Claims (2)
1.一种操作***进程调度算法,其特征在于:所述方法具体步骤包括:
步骤101.令i=1,i为就绪队列进程的序号;
步骤102.读取就绪队列第i个进程Ti;
步骤103.判断进程调度阈值Cim是否大于等于3,Cim表示就绪队列第i个进程Ti的调度阈值Cm, 调度阈值Cm为一个进程分别根据先来先服务、短作业优先、时间片轮转、优先级调度、最短剩余时间五种算法判断是否调度该进程至运行状态的结果的总和,
若Cim≥3,则调度第i个进程Ti至运行状态,若Cim<3,则进行下一步的判断;
步骤104.判断i是否小于n,n表示就绪队列中进程的个数,若i小于n,则i加1,并返回步骤102,否则调度第1个进程T1至运行状态;
步骤105.重复步骤102~步骤104。
2.根据权利要求1所述的操作***进程调度算法,其特征在于:所述的调度阈值Cm的具体计算步骤包括:
步骤201.读取待调度的进程;
步骤202.应用先来先服务算法判定是否调度该进程,若调度该进程,则C1=1,否则C1=0;
步骤203.应用短作业优先算法判定是否调度该进程,若调度该进程,则C2=1,否则C2=0;
步骤204.应用时间片轮转算法判定是否调度该进程,若调度该进程,则C3=1,否则C3=0;
步骤205.应用优先级调度算法判定是否调度该进程,若调度该进程,则C4=1,否则C4=0;
步骤206.应用最短剩余时间算法判定是否调度该进程,若调度该进程,则C5=1,否则C5=0;
步骤207.计算调度阈值Cm,计算公式为Cm=C1+C2+C3+C4+C5。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610723435.8A CN106354555B (zh) | 2016-08-26 | 2016-08-26 | 一种操作***进程调度算法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610723435.8A CN106354555B (zh) | 2016-08-26 | 2016-08-26 | 一种操作***进程调度算法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106354555A true CN106354555A (zh) | 2017-01-25 |
CN106354555B CN106354555B (zh) | 2019-07-05 |
Family
ID=57856109
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610723435.8A Active CN106354555B (zh) | 2016-08-26 | 2016-08-26 | 一种操作***进程调度算法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106354555B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106874129A (zh) * | 2017-02-04 | 2017-06-20 | 北京信息科技大学 | 一种操作***进程调度顺序确定方法及控制方法 |
CN107832154A (zh) * | 2017-11-14 | 2018-03-23 | 浙江亿邦通信科技股份有限公司 | 一种多进程处理方法、处理装置及应用 |
CN109799805A (zh) * | 2019-01-17 | 2019-05-24 | 湖南大学 | 一种可靠性感知的高性能汽车电子调度算法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101246437A (zh) * | 2008-01-28 | 2008-08-20 | 中兴通讯股份有限公司 | 一种嵌入式实时***进程均衡调度方法 |
CN101290668A (zh) * | 2008-06-16 | 2008-10-22 | ***通信集团湖北有限公司 | 一种分时作业动态调度方法和装置 |
CN101339521A (zh) * | 2008-07-28 | 2009-01-07 | 华中科技大学 | 一种任务优先级动态调度算法 |
CN102063336A (zh) * | 2011-01-12 | 2011-05-18 | 国网电力科学研究院 | 一种分布式计算多应用功能异步并发调度方法 |
US20130346436A1 (en) * | 2012-06-22 | 2013-12-26 | Sap Ag | Simulation Techniques for Predicting In-Memory Database Systems Performance |
-
2016
- 2016-08-26 CN CN201610723435.8A patent/CN106354555B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101246437A (zh) * | 2008-01-28 | 2008-08-20 | 中兴通讯股份有限公司 | 一种嵌入式实时***进程均衡调度方法 |
CN101290668A (zh) * | 2008-06-16 | 2008-10-22 | ***通信集团湖北有限公司 | 一种分时作业动态调度方法和装置 |
CN101339521A (zh) * | 2008-07-28 | 2009-01-07 | 华中科技大学 | 一种任务优先级动态调度算法 |
CN102063336A (zh) * | 2011-01-12 | 2011-05-18 | 国网电力科学研究院 | 一种分布式计算多应用功能异步并发调度方法 |
US20130346436A1 (en) * | 2012-06-22 | 2013-12-26 | Sap Ag | Simulation Techniques for Predicting In-Memory Database Systems Performance |
Non-Patent Citations (1)
Title |
---|
丛龙水: "动态优先级作业调度算法与实现", 《计算机工程与应用》 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106874129A (zh) * | 2017-02-04 | 2017-06-20 | 北京信息科技大学 | 一种操作***进程调度顺序确定方法及控制方法 |
CN106874129B (zh) * | 2017-02-04 | 2020-01-10 | 北京信息科技大学 | 一种操作***进程调度顺序确定方法及控制方法 |
CN107832154A (zh) * | 2017-11-14 | 2018-03-23 | 浙江亿邦通信科技股份有限公司 | 一种多进程处理方法、处理装置及应用 |
CN107832154B (zh) * | 2017-11-14 | 2020-07-17 | 浙江亿邦通信科技有限公司 | 一种多进程处理方法、处理装置及应用 |
CN109799805A (zh) * | 2019-01-17 | 2019-05-24 | 湖南大学 | 一种可靠性感知的高性能汽车电子调度算法 |
Also Published As
Publication number | Publication date |
---|---|
CN106354555B (zh) | 2019-07-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106445675B (zh) | 一种b2b平台分布式应用调度与资源分配方法 | |
CN104021044A (zh) | 一种作业调度方法及装置 | |
CN106354555A (zh) | 一种操作***进程调度算法 | |
CN107728466B (zh) | 一种适用于数控***固定优先级可靠性感知能耗优化方法 | |
CN102523153B (zh) | 虚拟化环境下的负载均衡方法 | |
CN109491775B (zh) | 一种用于边缘计算环境下的任务处理与调度方法 | |
CN103455375B (zh) | Hadoop云平台下基于负载监控的混合调度方法 | |
CN112162835A (zh) | 一种异构云环境下实时任务的调度优化方法 | |
CN109582436A (zh) | 基于容器集群平台的细粒度抢占式资源调度***及方法 | |
CN103677959B (zh) | 一种基于组播的虚拟机集群迁移方法及*** | |
CN103049314A (zh) | 一种开放式***实时调度方法 | |
CN109739332A (zh) | 一种多任务通用能耗优化方法 | |
CN102184124B (zh) | 任务调度方法及*** | |
CN107678843B (zh) | 一种采用多级反馈队列的进程调度方法 | |
CN108874517B (zh) | 固定优先级待机备用***利用率划分能耗优化方法 | |
EP3399412A1 (en) | Method and apparatus for scheduling tasks to a cyclic schedule | |
CN109656716B (zh) | 一种Slurm作业调度方法及*** | |
CN111143210A (zh) | 一种测试任务调度方法和*** | |
CN106293007B (zh) | 一种支持非抢占实时任务集的节能调度方法 | |
CN104360965A (zh) | 一种cfq调度方法 | |
CN114866430A (zh) | 边缘计算的算力预测方法、算力编排方法及*** | |
CN103777995A (zh) | 虚拟化环境下基于群调度的同步优化调度***和调度方法 | |
CN104317653B (zh) | 加速短作业处理的调度方法和装置 | |
CN108268310B (zh) | 一种确定最小调度粒度的方法及装置 | |
CN107301085B (zh) | 一种基于队列的云平台任务分配方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |