Linux操作系统的嵌入式领域面临新挑战

http://tech.ddvip.com   2007年03月12日    社区交流

本文详细介绍Linux操作系统的嵌入式领域面临新挑战

  这项研究使用了先进的程序流分析方法来确定操作系统中所有的关键操作(即那些“禁止插入中断”的代码)区域的位置和结构。研究人员还利用了周期精确的模型来测定选定代码区域的被执行次数。但是研究结果并不让人感到振奋。因为用于禁止和允许中断的指令所需的源操作数在执行时才能确定,所以研究人员不能用静态分析的方法得到关键操作的执行情况。还有一些其他的程序流问题,比如关键操作序列的嵌套出现等等,也阻碍了研究的进展。最终据研究人员估测,大概只有一半数目的“禁止插入中断”的关键操作区域能够被确定,而另一半大约有600个区域会对中断响应时间产生未知的影响。

  

  研究人员评估了他们能够确定的那些关键操作区域的执行时间。这些区域的执行情况非常复杂,有很多已经不是以简单的顺序结构执行了,少数几个区域甚至包含了三个嵌套的循环,而且还有一些关键操作区域的循环次数是不定的。在研究人员提供的报告中,可以看到一个具有嵌套循环的关键操作区域的执行周期数的估测为26729。试想在一个主频为100MHz的微处理器上,仅仅是这样一个区域就要消耗大约250微秒的时间。相信没有任何一个实时操作系统的开发商会愿意公开这个量级上的中断延迟。

  线程响应时间

  线程响应时间是指从产生中断请求到由该中断服务程序唤起的线程中的第一条指令被执行之间的这段时间。和中断延迟一样,线程响应时间也是衡量系统实时性能的一个重要因素。嵌入式应用的设计者往往用线程实现程序所需的一些功能,比如设备操作代码,因为这样做便于进行调试而且会减少那些在执行过程中禁止插入中断的代码数量,有助于减少最坏情况下的中断延迟时间。

作者:gaoliang    责编:豆豆技术应用

正在加载评论...