




已阅读5页,还剩8页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
操作系统实验报告(2)实验主题:过程调度算法实验环境: c实验目的:编程仿真实现了一些常见的过程调度算法,通过在一些组的过程中使用不同的调度算法来计算过程的平均旋转时间和平均旋转时间,并比较各种算法的性能优劣实验内容:编程实现以下算法1 .先提供服务算法2 .短进程优先算法3 .时片轮换调度算法。设计分析:流程图:1 .先提供服务算法初始化PCB并输入进程信息开始每个进程按先到先得的顺序进入就绪队列准备就绪队列?结束开车运行进程所需的CPU时间取消该进程2 .短进程优先算法3 .时间片轮换调度算法实验代码:1 .先提供服务算法#include#define n 20typedef struct装模作样int id; /进程名int atime; /进程到达时间int runtime; /进程执行时间FCS;void main ()装模作样int amount,I,j,diao,huan;fcs fn;请输入cout 进程数:amountfor(i=0; ifi.id;cinfi.atime;cinfi.runtime;以下称为for(i=0; ifj 1.atime )diao=fj.atime;fj.atime=fj 1.atime;fj 1.atime=diao;huan=fj.id;fj.id=fj 1.id;fj 1.id=huan;以下称为以下称为以下称为for(i=0; I#define n 5#define num 5#define max 65535typedef struct pro int PRO_ID;int arrive_time;int sum_time;int flag;pro; /整数排序int bubble(int temp )装模作样int i,j,tem=0;for(i=1; itempj 1 ) tem=tempj;tempj=tempj 1;tempj 1=tem;lastX=0;以下称为以下称为if(lastX=1) break;以下称为return temp0;以下称为/进程排序Pro bubble(Pro p )装模作样int i,j;Pro temp=0;Pro snum;for(i=0; isj 1.sum_time )装模作样temp=sj;sj=sj 1;sj 1=temp;lastX=0;以下称为以下称为if(lastX=1) break;以下称为return s0;以下称为void SPF(int p )装模作样if(n0 )装模作样int i、j、k、l、tc=0;Pro seqn;Pro temp_seqn;printf (短进程优先调度算法SPFn );printf (请依次输入五个进程的进程编号、到达时间和运行时间n );printf (成员变量由逗号分隔,进程之间由换行符分隔n ;for(i=0; I#include#include#include#include#define MaxNum 100typedef struct pcb /程序控制块的定义装模作样char NameMaxNum; /进程名int arrivetime; /到达时间int runtime; /运行时间int wholetime; /固定运行时间int FinishTime; /完成时间双重权重时间; /运行时间双重weightwholetime; /有权运行时间char state; /运转后状态结构PCB *下一步;PCB;/全局变量int N; /实际进程数双精度wt; /转向时间之和双核武器; /有权旋转时间之和双速度wt; /平均运行时间双速度wwt; /平均债权周转时间typedef struct /定义队列、封装头节点和指针分别指向队列头和队列头。装模作样PCB *front、*rear;queue;queue *init() /进程队列为空装模作样queue *head;head=(queue * ) malloc (sizeof (queue ) )head-front=NULL;头读=空值;return head;以下称为int empty(queue *head) /确保队列为空装模作样return (头部前端? 0:1;以下称为queue *append(queue *head,char cMaxNum,int,int,char s) /进程队列将入队并在以后插入装模作样PCB *p;p=(PCB *)malloc(sizeof(PCB ) );strcpy(p-Name,c )p-arrivetime=a;p-runtime=r;p-wholetime=r;p-state=s;/p-finishintime=0;/p-WeightTime=0;/p-WeightWholeTime=0;p-next=NULL;if(empty(head ) )头前部=头读取器=p;else装模作样读后退=p;头读=p;以下称为return head;以下称为queue *creat(queue *head) /创建进程队列装模作样char cMaxNum;char s=R;int a、r、I;printf (请输入一些进程:n ) :scanf(%d”,n );for(i=1; i=N; I )装模作样printf(%d”个进程的进程名:n,I )getchar ();gets(c )printf (请输入进程%d的到达时间:n ,I )scanf(%d”,a );printf (请输入进程%d的服务时间:n ,I )scanf(%d”,r );head=append (头,c,a,r,s )以下称为return head;以下称为void print(queue *head) /输入创建的进程队列装模作样PCB *p;p=头前端;if! p )printf (时间片轮换调度队列为空! n );while(p )装模作样printf ( name=% sstarrivetime=te=% dstate=% c ,p-Name,p-arrivetime,p-runtime,p-state );printf(n );p=p-next;以下称为以下称为/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *实现时间片轮换法的调度算法* * * * * * * * * * * * * * * * * * * * * * * * * * * * * *void RR(queue *head,int q )装模作样int=头部前端阵列时间,lt=头部读取阵列时间;头前运行时间前运行时间;elset=t q;/*进程队列必须为空,才能进行调度*/while (! empty(head ) )装模作样PCB *p1、*p2;printf(n执行时间进程后的状态 n );/*第一种情况:当前运行时间小于最后一个进程到达时间*/while(tfront;printf(-%s ,t,p1-Name );p 1运行时间=p 1运行时间- q;/1 .执行时间小于0,删除小组开头if(p1-runtime=0)装模作样p1-状态=c;printf(%cn”,p 1状态);p1-完成时间=t;P1-weighttime=P1-finish time-P1-arrive time;P1-weightwholetime=P1-weighttime/P1-whole time;SumWT=p1-WeightTime;SumWWT=p1-WeightWh
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年绿色环保行业废弃物资源化利用技术研究报告
- 2025中国东航东航股份空保管理部校园招聘笔试题库历年考点版附带答案详解版
- 2025年船舶制造行业智能船舶技术发展研究报告
- 2025年精神卫生学病例分析与干预策略模拟试题答案及解析
- 2025年康复医学病后功能锻炼方案设计模拟考试答案及解析
- 2025年电竞产业行业赛事运营与全球拓展研究报告
- 2025年航运行业智能航运技术发展现状分析报告
- 2025年飞行器行业无人机技术应用前景研究报告
- 2025年互联网行业社交电商发展前景研究报告
- 2025年家电维修行业家电维修服务市场前景研究报告
- 【自考复习资料】05175税收筹划(重点知识汇总)
- 高校教师职业道德概论练习试题
- 体育馆行业音视频系统建设与应用解决方案
- GB/T 19494.2-2023煤炭机械化采样第2部分:煤样的制备
- 2023年【汽车驾驶员(技师)】考试题及汽车驾驶员(技师)试题答案
- 证监会行业分类结构与代码
- 安全仪表系统SIS课件
- Φ1397套管开窗侧钻操作规程
- 《寻梦环游记(2017)》完整中英文对照剧本
- RB/T 089-2022绿色供应链管理体系要求及使用指南
- 某某集团年度经营计划编制指引
评论
0/150
提交评论