题目二:处理机调度—实时调度算法EDF和RMS

上传人:工**** 文档编号:563782630 上传时间:2024-01-17 格式:DOCX 页数:18 大小:999.15KB
返回 下载 相关 举报
题目二:处理机调度—实时调度算法EDF和RMS_第1页
第1页 / 共18页
题目二:处理机调度—实时调度算法EDF和RMS_第2页
第2页 / 共18页
题目二:处理机调度—实时调度算法EDF和RMS_第3页
第3页 / 共18页
题目二:处理机调度—实时调度算法EDF和RMS_第4页
第4页 / 共18页
题目二:处理机调度—实时调度算法EDF和RMS_第5页
第5页 / 共18页
点击查看更多>>
资源描述

《题目二:处理机调度—实时调度算法EDF和RMS》由会员分享,可在线阅读,更多相关《题目二:处理机调度—实时调度算法EDF和RMS(18页珍藏版)》请在金锄头文库上搜索。

1、目录一设计目的2二设计容2三设计准备2四设计过程3五设计结果并分析12六系统的结构,原理框图和模块等的详细说明14七用户使用说明书和参考资料15八设计体会16一设计目的深入理解处理机调度算法,了解硬实时概念,掌握最早截止期优 先调度算法。EDF(Earliest Deadline First)和速率单调调度算法 RMS (Ra te Mono to nic Scheduling )的可调度条件,并能在可调度情 况下给出具体调度结果。二. 设计容在Linux环境中采用用户级线程模拟实现EDF和RMS两种实时调 度算法。给定一组实时任务,按照EDF算法和RMS算法分别判断是否 可调度。在可调度的情

2、况下,创建一组用户级线程,分别代表各个实 时任务,并按算法所确定的调度次序安排各个线程运行,运行时在终 端上画出其Gantt图。为避免图形绘制冲淡算法,Gantt图可用字符 表示。三. 设计准备(理论、技术)1. EDF算法和RMS算法的可调度条件及调度原则。(1) EDF为可抢占式调度算法,其调度条件为:sum (ci/ti)W1(2) RMS算法为不可抢先调度算法,其调度条件为:sum (ci/ti)Wn (exp (in (2) /n) T)2. 在linux环境中创建用户级线程的函数。(1)创建用户级线程的库函数为:Int pthread_creat (pthread_t *THREA

3、D,Pthread_attr_t *ATTR,Void * (*START_ROUTINE)(void*).Void *ARG)pthread_creat (tid, NULL, func, arg);其中第一个参数是pthread_t型的指针,用于保存线程id;第二个 参数是pthread_attr_t的指针,用于说明要创建的线程的属性,NULL 表示使用缺省参数;第三个参数指明了线程的入口,是一个只有一个 (void *)参数的函数;第四个参数是传给线程入口函数的参数。四. 设计过程(设计思想、代码实现)(1) 实时任务用task数据结构描述,设计四个函数:Select_proc ()用于

4、实现调度算法,被选中任务执行proc (), 在没有可执行任务时执行idle (),主函数main ()初始化相关数据, 创建实时任务并对任务进行调度。(2) 为模拟调度算法,给每个线程设置一个等待锁,暂不执行的任 务等待在相应的锁变量上。主线程按调度算法唤醒一个子线程,被选 中线程执行一个时间单位,然后将控制权交给主线程判断是否需要重 新调度。(3) 实验代码下次执行lock等pt hread_mu tex_lock(& main_wait); pthread_mutex_init(& idle_wait , NULL);pthread_mutex_lock(& idle_wait);下次执

5、行 lock 等待printf(Please input number of real time task:n); int c;scanf(%d,& t ask_num);/任务数tasks=(task *)malloc(task_num *sizeof(task);whil e(c=ge tchar()! = n& c!二EOF);清屏int i;for(i=0 ; itask_num ; i+)pthread_mutex_init(& proc_waiti , NULL);pthread_mutex_lock(& proc_waiti); for(i=0;ir) /综合EDF和RMS算法任

6、务不可可调度的情况不可调度终端td,followedand Ttid,followed13:0fi 访容则13;0S L谊客id,followed by Ci. and Tift guest-FqQ ?lxlwb-vl rt u akm ach Ine:-guest-FqQ2lMlwb-vIrtual-nachtne:S ./threadPlease input nimtiE of real tine task:期,则重新分配处理器,即剥夺。最早截止期优先调度结果(EDF算法)Gantt图albla2bla3b2a4b2a5 01020304555607090100速度单调调度于1973年提出

7、,面向周期性实时任务,属于非剥 夺式调度的畴。速率单调调度将任务的周期作为调度参数,其发生频 率越高。则调度级别越高。速率单调调度结果(RMS算法)Gantt图alblcla2b2a3 a4b3c202060160220240300320360460七.用户使用说明书和参考资料参考文献:左万历,周长林,彭涛编著计算机操作系统教程徐英慧,马忠梅,王磊,王琳编著ARM9嵌入式系统设计一-基于S3C2410与Linux (第三版)唐晓军,晓红,肖鹏编著 Linux系统及编程基础八.设计体会初步了解了 EDF和RMS处理机调度算法,EDF为可抢占式调度, 同时为动态调度,是指在程序运行过程中按照优先级调度。RMS为不 可抢占式调度,同时为静态调度,即在调度之前就按照某种原则确定 好了调度优先级。同时对线程的运行原理有了一定的认识,对运用虚 拟机编译程序有了一定的掌握,使得对今后的操作系统的学习和操作 奠定了一定的基础。操作系统课程设计总结教师评语成绩:指导教师:

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号