本申请属于嵌入式系统运行资源评估,具体涉及一种嵌入式系统运行资源评估方法。
背景技术:
1、在嵌入式多级任务系统中,低级任务的执行存在随时被高级任务打断的情况,计算系统运行时间时,不能很准确的计算各级任务的执行时间,这对统计系统负荷的准确性存在较大影响。
2、目前针对多级任务系统的运行时间计算,多采用直接计算最后一级任务运行时间的方式,来评估整个多任务系统的时间余量。该方案没有考虑在多任务系统中,最后一级任务多次被高级任务打断的情况,计算出的运行时间不准确,且该方案不能根据用户需求灵活计算多级任务中任意几级任务的运行时间总和。
技术实现思路
1、发明目的:本申请提出一种嵌入式多任务系统运行资源计算方法,多级任务系统中各级任务运行时间的准确计算,并灵活计算任意几级任务的运行时间总和,提高系统运行资源评估的准确性和灵活性。
2、本申请提供了一种嵌入式系统运行资源评估方法,所述方法包括:
3、向高级任务和低级任务增加状态标签和时间标签;
4、若所述高级任务打断所述低级任务,基于所述低级任务的时间标签确定所述低级任务的执行时间;
5、将所述低级任务的执行时间确定为所述高级任务和低级任务的总执行时间。
6、优选地,所述低级任务包括第一低级任务和第二低级任务,所述第二低级任务的执行优先级小于所述第一低级任务的执行优先级。
7、优选地,所述若所述高级任务打断所述低级任务,基于所述低级任务的时间标签确定所述低级任务的第一执行时间之前,还包括:
8、基于所述第一低级任务的状态标签,确定所述高级任务打断所述第一低级任务。
9、优选地,所述基于所述第二低级任务的状态标签,确定所述高级任务打断所述第一低级任务,包括:
10、若所述第一低级任务的状态标签为有效,确定所述高级任务打断所述第一低级任务。
11、优选地,所述方法还包括:
12、若所述第一低级任务的状态标签为无效,确定所述高级任务没有打断所述第一低级任务;
13、基于所述高级任务的时间标签确定所述高级任务的执行时间,基于所述第一低级任务的时间标签确定所述第一低级任务的执行时间,基于所述第二低级任务的时间标签确定所述第二低级任务的执行时间;
14、将所述高级任务的执行时间、所述第一低级任务的执行时间和所述第二低级任务的执行时间之和,确定为所述高级任务、第一低级任务和第二低级任务的总执行时间。
15、优选地,所述低级任务的执行优先级小于所述高级任务的执行优先级。
16、优选地,所述状态标签的无效表征为0,所述状态标签的有效表征为1。
17、优选地,开始执行任务时将所述状态标签置为1,任务执行结束后将所述状态标签置为0。
18、本申请的有益技术效果是:
19、本发明用纯软件计算的方式,通过给多级任务系统中各级任务执行前锁存开始执行时时间标签和正在执行有效标签,执行完成后锁存结束执行时间标签和正在执行无效标签,计算该任务的执行时间。并根据判断比该任务更低级的任务执行标签是否有效,来判断该任务的执行是否是打断了低级任务,若该任务的执行没有打断低级任务,将当前任务的执行时间计入该级任务的执行时间总和。
20、根据用户需求,可人为控制只算该系统中某几级任务的执行时间总和。该方法与传统方法相比能更准确地计算多级中断任务系统中各级任务的实行时间,并根据用户需求,灵活可控地计算多级任务中任意几级任务的执行时间总和,提高了系统运行时间计算的准确性和灵活性。
1.一种嵌入式系统运行资源评估方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述低级任务包括第一低级任务和第二低级任务,所述第二低级任务的执行优先级小于所述第一低级任务的执行优先级。
3.根据权利要求2所述的方法,其特征在于,所述若所述高级任务打断所述低级任务,基于所述低级任务的时间标签确定所述低级任务的第一执行时间之前,还包括:
4.根据权利要求3所述的方法,其特征在于,所述基于所述第二低级任务的状态标签,确定所述高级任务打断所述第一低级任务,包括:
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
6.根据权利要求1所述的方法,其特征在于,所述低级任务的执行优先级小于所述高级任务的执行优先级。
7.根据权利要求5所述的方法,其特征在于,所述状态标签的无效表征为0,所述状态标签的有效表征为1。
8.根据权利要求7所述的方法,其特征在于,开始执行任务时将所述状态标签置为1,任务执行结束后将所述状态标签置为0。