批处理系统的调度算法

本文介绍了批处理系统中常见的调度算法,包括先来先服务、最短作业优先、最短剩余时间优先及最高响应比优先等,并分析了各自的优缺点。此外还探讨了衡量调度算法效果的关键指标。

占用CPU的方式有两种:抢占式和非抢占式

在批处理系统中,常用的调度算法有以下:

先来先服务(FCFS):按照进程就绪的先后顺序执行,非抢占,优点:简单,易于实现,但当短进程排在长进程后面时,短进程长时间得不到相应,影响用户体验;

最短作业优先(SJF):就绪队列里具有最短完成时间的进程优先执行,针对FCFS策略的弊端而提出的一种调度算法,非抢占式。在所有进程同时可运行时,可以得到最短平均周转时         间,但会导致长进程‘几饿’现象(队列里短进程较多时);

最短剩余时间优先(SRTN):当一个新就绪的进程比当前正在运行的进程具有更短的完成时间时,系统抢占当前进程。

最高响应比优先(HRRN):综合算法,首先计算每个进程的相应比R,之后,选择R最高的进程执行。

          R=周转时间/处理时间 =(等待时间+处理时间)/处理时间 =1+等待时间/处理时间   

          此方法既保证了处理时间较短的进程优先执行,又能让等待时间较长的进程优先执行


常用的调度算法的衡量指标有:

吞吐量: 每单位时间完成的进程数目

周转时间:进程从提出请求到运行完成的时间

响应时间:从提出请求到第一次响应的时间

CPU利用率:CPU有效工作的时间比例

等待时间:进程在就绪队列的等待时间


1. 课程设计的目的 操作系统课程的一个非常重要的环节是培养计算机专业学生的系统程序设计能力。通过操作系统课程设计,可以培养程序设计的方法和技巧,提高编制清晰、合理、可读性好的系统程序的能力,加深对操作系统课程的理解。使我们更好地掌握操作系统的基本概念、基本原理、及基本功能,具有分析实际操作系统、设计、构造和开发现代操作系统的基本能力。 本次课程设计要求用高级语言编写和调试一个单道批处理系统的作业调度的模拟程序,了解作业调度操作系统中的作用,以加深对作业调度算法的理解 2. 课程设计的开发语言 C语言 3. 功能描述 在批处理系统中,作业进入系统后,是先驻留在外存上的,因此需要有作业调度的过程,以便将它们分批装入内存。作业调度用于决定把外存上处于后备队列中的哪些作业调入内存,并为他们创建进程、分配必要的资源,然后,再将新创建的进程排在就绪队列上,准备执行。 应将哪些作业从外存调入内存,取决于所采用的调度算法。最简单的是先来先服务调度算法,这是指讲最早进度外存的作业最先调入内存;较常用的一种是短作业优先电镀算法,这是将外存上最短的作业最先调入内存;此外,还有基于响应比高者优先的调度算法,根据作业的响应时间和要求运行时间可计算出响应比。 4. 方案论证 4.1概要设计 根据功能描述,单道批处理程序作业调度的模拟程序要求实现如下功能:建立作业、选择作业、运行作业、计算作业周转时间和带权周转时间,以及这组作业的平均周转时间和带权平均周转时间、显示运行结果,退出程序。各模块的功能介绍如下: (1)建立作业:输入作业数,建立一组作业,并对所建立的这组作业进行初始化,用以模拟作业调度。初始化的内容包括作业名,作业要求运行的时间。 (2)选择作业:程序通过先来先服务调度算法、短作业优先调度算法和高响应比优先调度算法对建立的一组作业进行选择,决定把哪个作业从外存调入内存中。 (3)运行作业:根据初始化中设置的作业要求运行时间来模拟作业的运行。 (4)计算:计算作业周转时间和带权周转时间,以及这组作业的平均周转时间和带权平均周转时间。 (5)显示结果:将计算所得的结果输出。 (6)退出程序:当实验结束,不再需要模拟作业调度的时候,用来退出程序。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值