先来先服务,短设置进程优先级调度,抢占式优先级调度算法题

&>&处理机调度算法代码(包括先来先服务,优先级调度,短作业优先,响应比高优先)
处理机调度算法代码(包括先来先服务,优先级调度,短作业优先,响应比高优先)
上传大小:7KB
处理及调度算法代码
/*实际进程个数*/
int fcfs();
/*先来先服务*/
/*优先级调度*/
int sjf();
/*短作业优先*/
int hrrn();
/*响应比高优先*/
int pinput(); /*进程参数输入*/
int poutput(); /*调度结果输出*/
综合评分:4(14位用户评分)
下载个数:
{%username%}回复{%com_username%}{%time%}\
/*点击出现回复框*/
$(".respond_btn").on("click", function (e) {
$(this).parents(".rightLi").children(".respond_box").show();
e.stopPropagation();
$(".cancel_res").on("click", function (e) {
$(this).parents(".res_b").siblings(".res_area").val("");
$(this).parents(".respond_box").hide();
e.stopPropagation();
/*删除评论*/
$(".del_comment_c").on("click", function (e) {
var id = $(e.target).attr("id");
$.getJSON('/index.php/comment/do_invalid/' + id,
function (data) {
if (data.succ == 1) {
$(e.target).parents(".conLi").remove();
alert(data.msg);
$(".res_btn").click(function (e) {
var parentWrap = $(this).parents(".respond_box"),
q = parentWrap.find(".form1").serializeArray(),
resStr = $.trim(parentWrap.find(".res_area_r").val());
console.log(q);
//var res_area_r = $.trim($(".res_area_r").val());
if (resStr == '') {
$(".res_text").css({color: "red"});
$.post("/index.php/comment/do_comment_reply/", q,
function (data) {
if (data.succ == 1) {
var $target,
evt = e || window.
$target = $(evt.target || evt.srcElement);
var $dd = $target.parents('dd');
var $wrapReply = $dd.find('.respond_box');
console.log($wrapReply);
//var mess = $(".res_area_r").val();
var mess = resS
var str = str.replace(/{%header%}/g, data.header)
.replace(/{%href%}/g, 'http://' + window.location.host + '/user/' + data.username)
.replace(/{%username%}/g, data.username)
.replace(/{%com_username%}/g, data.com_username)
.replace(/{%time%}/g, data.time)
.replace(/{%id%}/g, data.id)
.replace(/{%mess%}/g, mess);
$dd.after(str);
$(".respond_box").hide();
$(".res_area_r").val("");
$(".res_area").val("");
$wrapReply.hide();
alert(data.msg);
}, "json");
/*删除回复*/
$(".rightLi").on("click", '.del_comment_r', function (e) {
var id = $(e.target).attr("id");
$.getJSON('/index.php/comment/do_comment_del/' + id,
function (data) {
if (data.succ == 1) {
$(e.target).parent().parent().parent().parent().parent().remove();
$(e.target).parents('.res_list').remove()
alert(data.msg);
//填充回复
function KeyP(v) {
var parentWrap = $(v).parents(".respond_box");
parentWrap.find(".res_area_r").val($.trim(parentWrap.find(".res_area").val()));
评论共有4条
还不错,有用
很不错,对我很有用
代码确实显得复杂了些,不过或多或少还是给了一点思路
fanfangogo90
综合评分:
积分/C币:3
何以语人生
综合评分:
积分/C币:0
综合评分:
积分/C币:3
zhangshuwei625
综合评分:
积分/C币:3
综合评分:
积分/C币:3
jiangzhoufeng
综合评分:
积分/C币:3
heimaoyaobai123
综合评分:
积分/C币:3
综合评分:
积分/C币:3
综合评分:
积分/C币:3
综合评分:
积分/C币:3
VIP会员动态
CSDN下载频道资源及相关规则调整公告V11.10
下载频道用户反馈专区
下载频道积分规则调整V1710.18
spring mvc+mybatis+mysql+maven+bootstrap 整合实现增删查改简单实例.zip
资源所需积分/C币
当前拥有积分
当前拥有C币
输入下载码
为了良好体验,不建议使用迅雷下载
处理机调度算法代码(包括先来先服务,优先级调度,短作业优先,响应比高优先)
会员到期时间:
剩余下载个数:
剩余积分:0
为了良好体验,不建议使用迅雷下载
积分不足!
资源所需积分/C币
当前拥有积分
您可以选择
程序员的必选
绿色安全资源
资源所需积分/C币
当前拥有积分
当前拥有C币
(仅够下载10个资源)
为了良好体验,不建议使用迅雷下载
资源所需积分/C币
当前拥有积分
当前拥有C币
为了良好体验,不建议使用迅雷下载
资源所需积分/C币
当前拥有积分
当前拥有C币
您的积分不足,将扣除 10 C币
为了良好体验,不建议使用迅雷下载
你当前的下载分为234。
你还不是VIP会员
开通VIP会员权限,免积分下载
你下载资源过于频繁,请输入验证码
您因违反CSDN下载频道规则而被锁定帐户,如有疑问,请联络:!
若举报审核通过,可返还被扣除的积分
被举报人:
举报的资源分:
请选择类型
资源无法下载
资源无法使用
标题与实际内容不符
含有危害国家安全内容
含有反动色情等内容
含广告内容
版权问题,侵犯个人或公司的版权
*详细原因:
处理机调度算法代码(包括先来先服务,优先级调度,短作业优先,响应比高优先)4815人阅读
先来先服务算法(FCFS)
FCFS是最简单的调度算法,既可以用作作业调度,也可以用作进程调度
这种算法优先考虑系统中等待时间最长的作业(进程),而不管作业所需执行时间长短,
做法是从后备队列中选择几个最先进入该队列的作业,将它们调入内存,为它们分配资源和创建进程,然后放入就绪队列
进程调度中使用此算法时,每次都从就绪的进程队列中选择一个最先进入该队列的进程,为之分配处理机,使之投入运行,该进程会一直运行到完成或者因发生某事件而阻塞后,进程调度程序才会把处理机分配给其他进程
短作业优先算法(SJF)
由于在实际情况中短作业(进程)所占比例很大,为了让它们比长作业优先执行,就有了此算法
SJF顾名思义以作业长短来确定优先级,作业越短优先级越高,作业的长短用作业所需的运行时间来衡量,此算法一样也可以用做进程调度,它将从外存的作业后备队列中选择若干个估计运行时间最短的作业,优先将它们调入内存运行
#include&iostream&
#include&iomanip&
static const int MaxNum=100;
ArrivalTime[MaxNum];
ServiceTime[MaxNum];
FinishTime[MaxNum];
WholeTime[MaxNum];
WeightWholeTime[MaxNum];
double AverageWT,AverageWWT;
double WT , WWT;
//-------------------------------------------------------------------
//先来先服务调度算法
//------------------------------------------------------------------
void FCFS(int n)
cout&&"FCFS:"&&
进程ID"&&"
完成时间"&&"
周转时间"&&"
带权周转时间"&&
//完成时间计算
for(int i = 0 ; i & i++)
FinishTime[0] = ArrivalTime[0] + ServiceTime[0];
FinishTime[i] = FinishTime[i-1] + ServiceTime[i];
WholeTime[i] = FinishTime[i] - ArrivalTime[i];
WeightWholeTime[i] = (float)WholeTime[i]
/ (float)ServiceTime[i];
WT = WT + WholeTime[i];
WWT = WWT + WeightWholeTime[i];
cout&&"\t"&&setprecision(3)&&i+1&&"\t\t"&&setprecision(3)&&FinishTime[i]&&"\t\t"&&setprecision(3)&&WholeTime[i]&&"\t\t"&&setprecision(3)&&WeightWholeTime[i];
AverageWWT = WWT /
AverageWT = WT /
cout&&"平均周转时间为:
"&&setprecision(3)&&AverageWT&& //保留三位有效数字
cout&&"平均带权周转时间为:
"&&setprecision(3)&&AverageWWT;
//WT和WWT最后要置零,因为我单独把计算周转时间等作为一个函数
//如果不置零将导致后续引用该函数的出错
//---------------------------------------------------------------------------
//短作业(进程)优先调度算法
//-----------------------------------------------------------------------------
void SJF(int n)
cout&&"SJF:"&&
进程ID"&&"
完成时间"&&"
周转时间"&&"
带权周转时间"&&
int finish = 0;
int min,k;
int m[MaxNum] = {0};
//完成时间计算
/** FinishTime[0] = ArrivalTime[0] + ServiceTime[0];
finish = FinishTime[0];
WholeTime[0] = FinishTime[0] - ArrivalTime[0];
WeightWholeTime[0] = (float)WholeTime[0]
/ (float)ServiceTime[0];
WT = WT + WholeTime[0];
WWT = WWT + WeightWholeTime[0];
cout&&"\t"&&setprecision(3)&&1&&"\t\t"&&setprecision(3)&&FinishTime[0]&&"\t\t"&&setprecision(3)&&WholeTime[0]&&"\t\t"&&setprecision(3)&&WeightWholeTime[0];
for (int j = 0 ; j & j++)
min = 5000;
//将最小值设置的比较大,服务时间不可能能达到如此大
for (int i = 0 ; i & i++)
//找到最短服务时间
if(m[i]==0 && ServiceTime[i]&min&&ArrivalTime[i]&=finish)
min = ServiceTime[i];
FinishTime[k] = finish +
//计算该进程的完成时间
finish = FinishTime[k];
//标记该进程
for(int i = 0 ; i & i++)
WholeTime[i] = FinishTime[i] - ArrivalTime[i];
WeightWholeTime[i] = (float)WholeTime[i]
/ (float)ServiceTime[i];
WT = WT + WholeTime[i];
WWT = WWT + WeightWholeTime[i];
cout&&"\t"&&setprecision(3)&&i+1&&"\t\t"&&setprecision(3)&&FinishTime[i]&&"\t\t"&&setprecision(3)&&WholeTime[i]&&"\t\t"&&setprecision(3)&&WeightWholeTime[i];
AverageWWT = WWT /
AverageWT = WT /
cout&&"平均周转时间为:
"&&setprecision(3)&&AverageWT&& //保留三位有效数字
cout&&"平均带权周转时间为:
"&&setprecision(3)&&AverageWWT;
//WT和WWT最后要置零,因为我单独把计算周转时间等作为一个函数
//如果不置零将导致后续引用该函数的出错
int main()
cout&&"请输入进程的数量n:";
for(int i = 0 ; i & i++)
cout&&"请输入进程"&&i+1&&"的到达时间和服务时间,并以空格间隔:";
cin&&ArrivalTime[i];
cin&&ServiceTime[i];
微博:@追梦小猿
知乎:@追梦小猿先来先服务FCFS和短作业优先SJF进程调度算法_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
先来先服务FCFS和短作业优先SJF进程调度算法
阅读已结束,下载本文需要
想免费下载本文?
定制HR最喜欢的简历
下载文档到电脑,方便使用
还剩4页未读,继续阅读
定制HR最喜欢的简历
你可能喜欢【图文】第三章 进程调度习题_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
第三章 进程调度习题
登录百度文库,专享文档复制特权,财富值每天免费拿!
你可能喜欢豆丁微信公众号
君,已阅读到文档的结尾了呢~~
短作业优先调度算法 动态优先权调度算法 优先数调度算法 作业调度算法 hadoop作业调度算法 优先级调度算法 优先权调度算法 优先权调度算法原理 算法 流水作业调度 短进程优先算法
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
先来先服务和短作业优先调度算法
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='http://www.docin.com/DocinViewer-4.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口

我要回帖

更多关于 抢占式优先级调度算法 的文章

 

随机推荐