计算机应用 | 古代文学 | 市场营销 | 生命科学 | 交通物流 | 财务管理 | 历史学 | 毕业 | 哲学 | 政治 | 财税 | 经济 | 金融 | 审计 | 法学 | 护理学 | 国际经济与贸易
计算机软件 | 新闻传播 | 电子商务 | 土木工程 | 临床医学 | 旅游管理 | 建筑学 | 文学 | 化学 | 数学 | 物理 | 地理 | 理工 | 生命 | 文化 | 企业管理 | 电子信息工程
计算机网络 | 语言文学 | 信息安全 | 工程力学 | 工商管理 | 经济管理 | 计算机 | 机电 | 材料 | 医学 | 药学 | 会计 | 硕士 | 法律 | MBA
现当代文学 | 英美文学 | 通讯工程 | 网络工程 | 行政管理 | 公共管理 | 自动化 | 艺术 | 音乐 | 舞蹈 | 美术 | 本科 | 教育 | 英语 |

一种基于比特表的实时多任务新调度算法(2)

2017-08-26 06:31
导读:表1 实时性要求和各任务运行时间表 序 号任 务优先级实时性要求/ms每次运行时间/msA数据采集时钟级51B端口检测时钟级102.5C键盘扫描时钟级151D图像处理时


表1 实时性要求和各任务运行时间表

序 号任 务优先级实时性要求/ms每次运行时间/msA数据采集时钟级51B端口检测时钟级102.5C键盘扫描时钟级151D图像处理时钟级305E打印数据基本级无实时要求200

1 比特表的改进算法

这种改进算法的关系在于把各任务划分为若干时间片,然后再根据实时性要求填入比特表中。根据比特表的设计方法,时隙间隔定为5ms,总时隙数为LCM(10/5,20/5,30/5)=6。把各中断级和时钟级任务运行时间的最大公约数定为时间片。即有如下计算公式:

T=GCD{Ti}

T为时间片,Ti为时钟级和中断级任务实时性要求,GCD(Greatest Common Divisor)求最大公约数,LCM(Lowest Common Multiple)求最小公倍数。

本例中的时间片T=GCD{0.5,1,2.5,1,5}=0.5ms。(假设时钟中断处理时间为0.5ms)。

时间片的分配,必须遵循以下原则:

①满足实时性要求;

②确保每一个时隙中所有分配的任务都必须完全运行;

③均衡考虑CPU对各任务的运行,优先考虑时钟级任务和中断级任务。

按上述原则,中断级任务分1个时间片,时钟级1分配2个时间片,时钟级2分配3个时间片,时钟级3分配1个时间片,时钟级4分配2个时间片,而将每个时隙剩余的时间分配给基本级任务。这样,即使是在系统最繁忙的时候也有一个时间片分配给基本级任务,从而弥补了比特表算法的不足。

综上所述,设计图1所示的比特表。

此比特表的时隙任务安排完全满足实时性要求。A任务每时隙运行1次,每时隙运行2个时间片。A任务每5ms运行1次。B任务每10ms运行1次,C任务每20ms运行1次

上一篇:谈建筑施工中的混凝土裂缝控制 下一篇:没有了