一种分析嵌入式设备实时性的方法

文档序号:6460825阅读:87来源:国知局
专利名称:一种分析嵌入式设备实时性的方法
技术领域
本发明涉及用于嵌入式设备的实时性分析技术领域,具体涉及的是, 一种分析嵌入式设备实时性的方法。
背景技术
内嵌于嵌入式设备中的软件程序在运行过程中,必须满足严格的实时 性要求,某些业务必须在指定时间内开始,并且要在指定时间内完成并给 出响应,否则就不能满足用户的需求。通常分析嵌入式设备实时性的方法是在软件发起一项业务.申请后, 设置一个"开始定时器,,和一个"完成定时器",如果开始定时器超时后, 业务仍然未开始,则认为不满足实时性要求;如果完成定时器超时后,业 务仍然未完成,也认为不满足实时性要求。这种分析方法的缺点是每项 业务都要自行设置定时器,设计的工作量很大,流程复杂,占用的资源也很大。可见,现有技术中存在一定的问题,需要开拓新的方法对嵌入式设 备的实时性进行分析。发明内容本发明的目的在于提供一种分析嵌入式设备实时性的方法,其可以自 动分析哪些业务没有满足实时性要求,并自动上报到网管系统。为了实现上述目的,本发明提供了 一种分析嵌入式设备实时性的方法, 该方法包括目的进程分析过程,其包括以下步骤A、在嵌入式设备中设置一时钟中断,记录系统的工作时间;B、高层应用软件层发起一项业务时,控制进程给目的进程发送一条消白 c、底层操作系统软件层读取当前时钟中断记录的时钟数,并根据目的进程接收到的消息,分析业务运4于是否满足实时性需求。其中,在所述步骤B中,当所述消息中记录有发送消息时刻、以及 用于表明业务在发送消息后多长时间内开始的开始时间时,所述步骤C按 照以下过程分析业务运行的实时性当所述目的进程开始运行所述消息时,底层操作系统软件层用读取的 当前时钟数减去所述目的进程中当前消息记录的发送消息时刻,如果计算 结果大于该消息中记录的开始时间,则认定业务开始时间不满足实时性需 求。其中,在所述步骤B中,当所述消息中记录有发送消息时刻,以及 用于表明业务在发送消息后多长时间内完成的完成时间时,所述步骤C按 照以下过程分析业务运行的实时性当所述目的进程运行完毕所述消息时,底层操作系统软件层用读取的 当前时钟数减去所述目的进程中当前消息记录的发送消息时刻,如果计算 结果大于该消息中记录的完成时间,则认定业务完成时间不满足实时性需 求。其中,所述方法还包括与所述目的进程分析过程并行运行的监控任 务,其包括以下步骤Al、读取当前时钟中断记录的时钟数; A2、检查所有业务的当前进程;A3、根据所述目的进程接收到的消息,分析业务运行是否满足实时性 需求。其中,在所述步骤B中,当所述消息中记录有发送消息时刻、以及 完成时间时,所述步骤A3按照以下过程分析业务运行的实时性将读取的当前时钟数减去所述目的进程中当前消息记录的发送消息时 刻,如果计算结果大于该消息中记录的完成时间,测认定业务完成时间不 满足实时性需求。其中,所述开始时间和完成时间的字段初始值由高层应用软件层在调 用操作系统提供的发送消息的接口函数时,根据需求来填入。其中,所述发送消息时刻的字段初始值由底层操作系统软件层读取当 前时钟中断记录的时钟数,并自动填入。其中,所述步骤A中,所述时钟中断的精度与业务要求的时钟精度相同。其中,所述步骤A中还包括以下步骤在嵌入式设备中设置一内存区, 用于记录不满足实时性需求的业务信息。并且,所述步骤C中,当认定业 务不满足实时性需求时,将当前进程处理的消息的相关信息记录到所述内 存区中存储,并修改消息中用于记录时间的字段。其中,当内存区写满数据时,判断网管系统是否已经接入嵌入式系统;如果是,则将内存区中的内容上报给网管系统,并清空内存区,然后 从内存区的首地址开始记录信息;如果否,则自动从内存区的首地址开始记录信息,覆盖内存区中原有 的记录。本发明所提供的一种分析嵌入式设备实时性的方法,当业务不满足时 实行需求时,可以自动记录,而不需要人工处理,并且可以将记录的结果 上报给网管系统进行分析;还通过设立监控任务,保证了在系统运行的特 殊情况,仍能完成实时性分析的任务。


图1为本发明分析嵌入式设备实时性的流程图。
具体实施方式
以下结合附图详细说明本发明的技术方案。本发明所应用的嵌入式设备上运行的软件包括底层操作系统软件层和 高层应用软件层两个部分,下面将结合图1,说明本发明的方法是如何实现实时性自动分析的,其包括以下步骤步骤200,本发明需要让嵌入式设备提供一个时钟中断,该时钟中断的 精度应当满足业务的需求,并与业务要求的时钟精度相同。例如业务要 求时钟精度为100毫秒,那么这个时钟中断的精度也应是100毫秒,即1 秒有IO个时钟中断。步骤201,当高层应用软件层发起一项业务时,控制进程给目的进程 (即,执行处理这项业务的进程)发送一条消息,并在该消息体中记录有 发送消息时刻、开始时间、完成时间,以及该消息的记录标志。'这里的"发送消息时刻"记录是表征该业务发起时的消息发送时刻, 其字段初始值由底层操作系统软件层读取当前时钟中断记录的时钟数,并 自动填入。而这里的"开始时间"用于表明业务在发送消息后多长时间内 开始,"完成时间"用于表明业务在发送消息后多长时间内完成,这两个 时间字段的初始值是预先设定的,具体可以由高层应用软件层在调用操作 系统提供的发送消息的接口函数时,根据需求来填入。"开始时间,,和"完 成时间"字段记录的可以是具体的时钟中断数,例如,1秒有10个时钟中 断,当前时钟数为10000,某个业务要求在发起业务申请后,2秒内开始业 务,3秒内业务执行完毕,那么消息的开始时间"和"完成时间"字段分别 填入20和30,"发送消息时刻,,填入10000。其也可以记录表示"永久" 标志的字段。例如定义"永久,,字段为TIME—FOREVER,那么可以这样 定义#defme TIME—FOREVER Oxffffffff。当"开始时间,,和"完成时间,,被定义为"永久,,标志后,则表示该业务的处理不需要实时性要求,那么本发明的实时性分析流程将不予考虑。步骤202,目的进程收到上述消息,并开始运行该消息,表征业务开始。 步骤203,当目的进程开始运行上述消息时,底层操作系统软件层读取 当前时钟中断记录的时钟数,并用读取的当前时钟数减去目的进程中当前 消息记录的发送消息时刻,如果计算结果大于该消息中记录的开始时间, 则认定业务开始时间不满足实时性需求,否则,则认定业务开始'时间满足 实时性需求,并执行步骤204。根据上述步骤201中的例子,假如,此时时 钟数为10050,那么10050-10000=50,大于开始时间20,则证明开始时间 超过了实时性要求,应该进行记录。 步骤204,消息运^f亍完成。步骤205,当目的进程运行完毕所述消息时,底层操作系统软件层读取 当前时钟中断记录的时钟数,并用读取的当前时钟数减去目的进程中当前 消息记录的发送消息时刻,如果计算结果大于该消息中记录的完成时间, 认定业务完成时间不满足实时性需求,否则,则认定业务完成时间满足实 时性需求,并执行步驟206。根据上述步骤201中的例子,假如,此时时钟 数为10080,那么10080-10000=80,大于完成时间30,则证明完成时间超 过了实时性要求,应该进行记录。.步骤206,业务结束。当然,如果消息体中"开始时间"和"完成时间"字段记录的是"永 久,,标志,则在上述步骤203和205中,目的进程开始运行上述消息或运 行完毕时,需要对该消息体中"开始时间"或"完成时间"是否存在"永 久"标志进行一个判断,如果"开始时间"字段记录的是"永久"标志, 则上述步骤203中,则不予处理;如果"完成时间"字段记录的是"永久" 标志,则上述步骤205中,则不予处理。对于上述对实时性的分析,本发明还可以对分析结构进行自动记录, 这就需要在上述步骤200中要求嵌入式设备提供一内存区,用于记录不满足实时性需求的业务信息,例如使用100KB的内存区用于记录信息。那 么,在上述步骤203或205中,当认定业务开始时间或完成时间不满足实 时性需求时,将该消息的相关信息记录到所述内存区中存储。当内存区写 满数据时,判断网管系统是否已经接入嵌入式系统;如果是,则将内存区 中的内容上报给网管系统,并清空内存区,然后从内存区的首地址开始记 录新的信息;如果否,则自动从内存区的首地址开始记录新的信息,覆盖 内存区中原有的记录。为了避免内存区中重复记录信息,则需要在相关信息记录到内存区后 修改消息中用于记录相应时间的字段信息。比如,在上述步骤203时,当 认定业务开始时间不满足实时性需求时,在内存区中记录相关信息,并同 时将目的业务处理的当前消息中记录的开始时间字賴j殳置为永久标志。而, 当认定业务完成时间不满足实时性需求时,在内存区中记录相关信息,并 同时将目的业务处理的当前消息中记录的完成时间字賴:设置为永久标志。上述分析方法是目的进程分析过程,由每个各个业务的目的进程来完 成的,但是, 一旦系统出现死循环,当前进程无法运行时,则不能执行完 成消息的任务,也就是无法执行上述步骤205的过程,那么,这是就需要 由另一个任务来做实时性记录。所以,本发明还提供了一个与所述目的进 程分析过程并行运行的用于监控所有业务的监控任务,该监控任务的优先 级高于所有业务任务,可以由底层操作系统软件层来提供。监控任务每隔 一个监控周期运行一次,首先读取当前时钟中断记录的时钟数,并遍历所 有业务进程,检查所有业务的当前进程,如果各个业务的目的进程当前消 息的完成时间字段不是"永久",则将读取的当前时钟数减去目的进程中 当前消息体中记录的发送消息时刻,如果计算结果大于该消息体中记录的 完成时间,则认定业务完成时间不满足实时性需求,那么这时可以将相关 信息记录到上述步骤200所提供的内存区中,并将"完成时间"字段填入 ."永久"标志,避免重复记录;否则,则认定业务完成时间满足实时性需求。举个例子,假设上述监控任务每隔2秒运行一次。当监控任务运行时, 如果时钟数为10060,那么恰好此时目的进程还没有执行完消息,所以利用 10060-10000=60,该结果大于完成时间30,从而^E明完成时间超过了实时 性要求,记录到内存区里,并将"完成时间"字段填入"TIME_FOREVER" 标志。那么,当目的进程运行完消息时,执^f亍上述步骤205,发现"完成时 间"的字段为"永久,,,则不会继续记录,从而就避免了重复记录。本发明通过嵌入式设备提供的一个时钟中断,来实时分析嵌入式设备 的实时性,嵌入式设备上运行的软件层包含底层操作系统软件层和高层应 用软件层两个层次;并且,嵌入式设备采用消息驱动机制,当高层应用软 件层需要发起一项业务时,控制进程给处理这项业务的进程(以下称为目 的进程)发送一条消息,而本发明就可以将该消息中记录四个字段的内容, 即开始时间(Time To Start)、完成时间(Time To Finish)、发送消息时刻、 记录标志,通过比较业务开始时刻或完成时刻与该消息体中预设时间的大 小,来分析判断该业务的开始或完成是否不具有实时性要求。本发明还通过嵌入式设备提供的 一块内存区,自动记录不满足实时性 需求的业务信息,并自动上报给网管系统,为网管对各个业务的运行监控 提供了准确的依据。从上述技术方案可知,本发明主要可以用于分析嵌入式设备.中的哪些 业务和操作没有满足实时性要求,并能够自动记录并上报给网管,从而为设计者优化软件的执行效率提供依据。应当理解的是,上述各具体步骤的举例说明较为具体,并不能因此而 认为是对本发明的专利保护范围的限制,本发明的专利保护范围应以所附 权利要求为准。
权利要求
1、一种分析嵌入式设备实时性的方法,其特征在于,所述方法包括目的进程分析过程,其包括以下步骤A、在嵌入式设备中设置一时钟中断,记录系统的工作时间;B、高层应用软件层发起一项业务时,控制进程给目的进程发送一条消息;C、底层操作系统软件层读取当前时钟中断记录的时钟数,并根据目的进程接收到的消息,分析业务运行是否满足实时性需求。
2、 根据权利要求1所述的方法,其特征在于,在所述步骤B中,当所 述消息中记录有发送消息时刻、以及用于表明业务在发送消息后多长时 间内开始的开始时间时,所述步骤C按照以下过程分析业务运行的实时性当所述目的进程开始运行所述消息时,底层操作系统软件层用读取的 当前时钟数减去所述目的进程中当前消息记录的发送消息时刻,如果计算 .结果大于该消息中记录的开始时间,则认定业务开始时间不满足实时性需 求。
3、 根据权利要求1所述的方法,其特征在于,在所述步骤B中,当所 述消息中记录有发送消息时刻,以及用于表明业务在发送消息后多长时 间内完成的完成时间时,所述步骤C按照以下过程分析业务运行的实时性当所述目的进程运行完毕所述消息时,底层操作系统软件层用读取的 当前时钟数减去所述目的进程中当前消息记录的发送消息时刻,如果计算 结果大于该消息中记录的完成时间,则认定业务完成时间不满足实时性需 '求。
4、 根据权利要求1所述的方法,其特征在于,所述方法还包括与所 述目的进程分析过程并行运行的监控任务,其包括以下步骤Al、读取当前时钟中断记录的时钟数; A2、冲全查所有业务的当前进程;A3、才艮据所述目的进程接收到的消息,分析业务运行是否满足实时性 需求。
5、 根据权利要求4所述的方法,其特征在于,在所述步骤B中,当所 述消息中记录有发送消息时刻、以及完成时间时,所述步骤A3按照以下 过程分析业务运行的实时性将读取的当前时钟数减去所述目的进程中当前消息记录的发送消息时 刻,如果计算结果大于该消息中记录的完成时间,则认定业务完成时间不 满足实时性需求。
6、 根据权利要求2或3所述的方法,其特征在于,所述开始时间和完 成时间的字段初始值由高层应用软件层在调用操作系统提供的发送消息的 接口函数时,根据需求来填入。
7、 根据权利要求2或3所述的方法,其特征在于,所述发送消息时刻 的字段初始值由底层操作系统软件层读取当前时钟中断记录的时钟数,并 自动填入。
8、 根据权利要求1所述的方法,其特征在于,所述步骤A中,所述时 钟中断的精度与业务要求的时钟精度相同。
9、 根据权利要求1所述的方法,其特征在于,所述步骤A中还包括以 下步骤在嵌入式^殳备中设置一内存区;并且,所述步骤C中,当认定业 务不满足实时性需求时,将当前进程处理的消息的相关信息记录到所述内 存区中存储,并修改消息中用于记录时间的字段。
10、 根据权利要求9所述的方法,其特征在于,当内存区写满数据时,判断网管系统是否已经接入嵌入式系统;如果是,则将内存区中的内容上报给网管系统,并清空内存区,然后 从内存区的首地址开始记录信息;如果否,则自动从内存区的首地址开始记录信息,覆盖内存区中原有 的记录。
全文摘要
本发明公开了一种分析嵌入式设备实时性的方法,其可以自动分析哪些业务没有满足实时性要求,并自动上报到网管系统;其首先在嵌入式设备中设置一时钟中断,记录系统的工作时间;然后当高层应用软件层发起一项业务时,控制进程给目的进程发送一条消息;底层操作系统软件层读取当前时钟中断记录的时钟数,并根据目的进程接收到的消息,分析业务运行是否满足实时性需求。本发明主要可以用于分析嵌入式设备中的哪些业务和操作没有满足实时性要求。
文档编号G06F11/36GK101256531SQ200810066470
公开日2008年9月3日 申请日期2008年4月8日 优先权日2008年4月8日
发明者林晓翰 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1