网络操作系统 实验6 处理机调度-实时调度

网络操作系统 实验6 处理机调度-实时调度

ID:5541821

大小:245.50 KB

页数:8页

时间:2017-12-17

网络操作系统 实验6 处理机调度-实时调度_第1页
网络操作系统 实验6 处理机调度-实时调度_第2页
网络操作系统 实验6 处理机调度-实时调度_第3页
网络操作系统 实验6 处理机调度-实时调度_第4页
网络操作系统 实验6 处理机调度-实时调度_第5页
资源描述:

《网络操作系统 实验6 处理机调度-实时调度》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、集美大学计算机工程学院实验报告课程名称:操作系统班级:实验成绩:指导教师:姓名:实验项目名称:处理机调度-实时调度学号:上机实践日期:实验项目编号:实验六组号:上机实践时间:学时一、目的(本次实验所涉及并要求掌握的知识点)深入了解处理及调度算法,了解硬实时概念,掌握周期性实时任务调度算法EDF和RMS的可调度条件,并能在可调度情况下给出具体调度结果二、实验内容与设计思想(设计思路、主要数据结构、主要代码结构、主要代码段分析、电路图)实验内容:实时任务用task数据结构描述,涉及四个函数:select_proc()用于实现调度算法,被选中任务执行proc(),在

2、没有可执行任务时执行idle(),主函数main()初始化相关数据,创建实时任务并对任务进行调度。为模拟调度算法,给每个线程设置一个等待锁,暂不运行的任务等待在相应的锁变量上。主线程按照调度算法唤醒一个子线程,被选中线程执行一个时间单位,然后将控制权交给主线程以判断是否需要重新调度。三、实验使用环境(本次实验所使用的平台和相关软件)Linux虚拟机vi编辑器四、实验步骤和调试过程(实验步骤、测试数据设计、测试结果分析)******************************实验代码*************************************#

3、include"math.h"#include"sched.h"#include"pthread.h"#include"stdlib.h"#include"semaphore.h"#include"stdio.h"typedefstruct{//实时任务描述chartask_id;intcall_num;//任务发生次数intci;//任务处理时间intti;//任务发生周期intci_left;intti_left;intflag;//任务是否活跃,0否,2是intarg;//参数pthread_tth;//任务对应线程}task;voidproc(int*

4、args);void*idle();intselect_proc();inttask_num=0;intidle_num=0;intalg;//所选算法,1forEDF,2forRMSintcurr_proc=-1;intdemo_time=100;//演示时间task*tasks;pthread_mutex_tproc_wait[100];pthread_mutex_tmain_wait,idle_wait;floatsum=0;pthread_tidle_proc;intmain(intargc,char**argv){pthread_mutex_init

5、(&main_wait,NULL);pthread_mutex_lock(&main_wait);//下次执行lock等待pthread_mutex_init(&idle_wait,NULL);pthread_mutex_lock(&idle_wait);//下次执行lock等待printf("Pleaseinputnumberofrealtimetask:");intc;scanf("%d",&task_num);//任务数tasks=(task*)malloc(task_num*sizeof(task));while((c=getchar())!='

6、n'&&c!=EOF);//清屏inti;for(i=0;i

7、i;tasks[i].ti_left=tasks[i].ti;tasks[i].flag=2;tasks[i].arg=i;tasks[i].call_num=1;sum=sum+(float)tasks[i].ci/(float)tasks[i].ti;while((c=getchar())!=''&&c!=EOF);//清屏}printf("Pleaseinputalgorithm,1forEDF,2forRMS:");scanf("%d",&alg);printf("Pleaseinputdemotime:");scanf("%d",&demo_ti

8、me);doubler=1;//EDF

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。