嵌入式计算机硬件抽象层与操作系统接口研究_1

上传人:bin****86 文档编号:60468954 上传时间:2018-11-16 格式:DOCX 页数:7 大小:18.59KB
返回 下载 相关 举报
嵌入式计算机硬件抽象层与操作系统接口研究_1_第1页
第1页 / 共7页
嵌入式计算机硬件抽象层与操作系统接口研究_1_第2页
第2页 / 共7页
嵌入式计算机硬件抽象层与操作系统接口研究_1_第3页
第3页 / 共7页
嵌入式计算机硬件抽象层与操作系统接口研究_1_第4页
第4页 / 共7页
嵌入式计算机硬件抽象层与操作系统接口研究_1_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《嵌入式计算机硬件抽象层与操作系统接口研究_1》由会员分享,可在线阅读,更多相关《嵌入式计算机硬件抽象层与操作系统接口研究_1(7页珍藏版)》请在金锄头文库上搜索。

1、从本学科出发,应着重选对国民经济具有一定实用价值和理论意义的课题。课题具有先进性,便于研究生提出新见解,特别是博士生必须有创新性的成果嵌入式计算机硬件抽象层与操作系统接口研究随着软件在嵌入式计算机设计中的比重越来越大,为了减少开发成本,软件的可重用性设计就成为嵌入式计算机领域研究的重要问题。特别是应用于安全关键领域的软件,需要投入大量的时间和精力对新开发或移植后的软件进行验证和确认。在软件架构设计阶段进行可重用设计,可大大减少验证和确认工作量,从而降低开发成本,缩短开发周期。根据摩尔定律,相同面积硅片上的晶体管封装数量每18个月左右就会增加一倍,而成本却成比例递减。在这一规律驱动下,新器件不断

2、出现、旧器件不断停产,计算机硬件更新的速度很快,但使用嵌入式计算机的系统或设备的生命周期往往很长。在系统或设备漫长的服役期中,如果嵌入式计算机中的器件因故障等原因需要更换,常面临元器件的停产、断档,只能用其它相同或相似功能的器件来替换联盟,替换后的验证和确认往往代价较大。如何保证让原来经过验证的软件可以不加修改地在新的硬件平台上顺利运行是我们面临的新问题。随着嵌入式实时操作系统地广泛使用,通过设计硬件抽象层,建立硬件抽象层与操作系统的接口,可以分离硬件和软件,从而较好地解决上述问题。1 软件结构模型硬件抽象层封装了底层硬件的详细信息,为上层软件提供对低级资源的抽象访问。硬件抽象层不仅从逻辑上与

3、操作系统进行分离,而且从空间上进行分离,硬件抽象层、操作系统能够独立编译,分别生成不同的映像。这种结构的好处是:在CPU的体系不发生改变,而仅仅外围芯片和硬件接口更改的情况下,操作系统和应用程序映像不需要重新生成。但这种分离结构使硬件抽象层、操作系统和应用映像间无法直接进行接口互访,需要通过一定的机制完成映像间的接口互访。软件结构模型如图1所示。硬件抽象层的结构及功能在上述软件结构模型下硬件抽象层的体系结构如图2所示,其功能如下:负责完成系统的引导和相关数据结构的初始化,并且启动用户配置的启动映像。映像管理。为了有效的对映像实施管理,硬件抽象层包含了一个映像管理模块用于完成映像的管理,管理映像

4、的固化、擦除和加载。映像管理模块直接使用设备驱动完成对存储设备的访问。硬件抽象层的核心是所有体系结构芯片和设备相关的驱动程序,这些驱动将利用配置的方式提供给操作系统映像使用,当更换硬件平台时,只要更换合适的硬件抽象层就可以了。硬件抽象层包含一个目标机调试代理模块。这个调试代理模块可以完成基于硬件抽象层的软件的加载和调试。调试代理会使用设备驱动提供的功能完成与主机端的通信,并调用映像管理模块的函数进行映像相关操作。硬件抽象层与操作系统接口的定义硬件抽象层与操作系统接口向操作系统提供了一组标准服务来保证操作系统的硬件无关性,并作为操作系统访问硬件的桥梁。本文硬件抽象层与操作系统接口的定义主要参考了

5、NATOSTANAG4626。根据功能的不同硬件抽象层与操作系统接口可以分为以下7组,如表1所示。隔离机制的尝试目前国内自主版权的操作系统中还没有完全满足图1所示的软件模型的操作系统,该模型是一个理想模型,本文选用嵌入式系统中广泛使用的VxWorks操作系统开展硬件抽象层与操作系统隔离机制的研究。将硬件抽象层与操作系统接口函数加入VxWorks操作系统,改造后的软件结构如图3所示,操作系统内核Wind对硬件的操作只能通过放在操作系统层的函数库来选择合适的接口函数,然后通过调用该函数来访问硬件抽象层中经过改造的BSP函数,从而实现了隔离机制。验证与测试硬件抽象层与操作系统接口的引入将原来VxWo

6、rks操作系统的功能分为两部分,一部分是接口之上与硬件无关的通用操作系统,另一部分是接口之下的硬件抽象层软件。将原来操作系统直接访问硬件资源变成为通过硬件抽象层与操作系统接口来访问,软件结构如此革命性的变化,其功能的有效性以及这种改变对系统实时性的影响将是验证与测试面临的主要问题。由于篇幅所限,功能测试的方法及过程略去,重点介绍性能测试。评价嵌入式实时系统的性能指标多用特定操作的执行时间表示。执行时间的测量通常有两种方法:软件方法和硬件方法。其中软件方法是在被测试的软件两端添加时标,软件执行完成后读取记录的时标进行计算;硬件方法通常是使用示波器等测量工具测量指定的测试点,通过读取软件执行过程中

7、产生的硬件信号波形来计算执行时间。软件方法比较简单,但时间精度不高;硬件方法与之相反,它有着测量工具所能达到的最高测量精度,但测量过程往往比较复杂。根据本文对操作系统改造的影响范围,我们将主要测量系统初始化时间、中断响应时间和异常响应时间,通过这三个时间指标来分析添加硬件抽象层与操作系统接口后对系统性能产生的影响。其中系统初始化时间测量对精度要求不高,使用软件方法,其他两项指标的测量使用硬件方法。 系统初始化时间的测量系统初始化时间是指从系统上电开始到启动函数usrRoot作为系统的根任务之间所用的时间。本文使用VxWorks中自带的时标读取函数vxTimeBaseGet来测量。函数vxTim

8、eBaseGet可获取系统执行中的tick数,tick的频率为系统时钟频率的1/4。本文所选用的测试平台系统时钟为32MHz,因此tick的频率为8MHz。除去系统调用时压栈、出栈的过程,使用函数vxTimeBaseGet测量的时间精度可以达到微秒级,满足系统初始化时间测量的需求。测量使用的主要代码如下:UINT3high,low;UINT3high1,low1;UINT3high2,low2;vxTimeBaseSet;/*计数清零*/vxTimeBaseGet;/*获取开始时间*/ /*系统初始化代码*/vxTimeBaseGet;/*获取结束时间*/high=high2-high1;lo

9、w=low2-low1;5.中断响应时间的测量中断响应时间是指从中断产生到系统获知中断,并开始执行中断服务程序的第一条指令所持续的时间。中断响应时间是系统实时性的重要指标,采用硬件方法对其进行测量,测量所选用的示波器精度可达纳秒级,确保测量精度满足需求。在开始测量前,首先在中断处理程序的开始处添加一条语句,其作用是将硬件平台中的一位离散量从0置为1,作为进入中断处理程序的标志。然后示波器的通道A连接硬件平台的中断请求信号INQ,通道B连接离散量信号DIO,当中断产生时将触发示波器进行记录,截取示波器通道A和通道B的波形,进行测量和计算。图4为硬件方法测试示意图。使用上述测试方法完成系统初始化时

10、间、中断响应时间和异常响应时间的测量,测试结果如表2所示。由上表可知添加硬件抽象层与操作系统接口后,系统的初始化时间、中断响应时间和异常响应时间与添加前的系统相比都有一定程度的增加,这是因为改造后的系统多了一层硬件抽象层与操作系统接口的函数调用,但这些时间指标仍保持与原来相同的量级。本文使用的测试环境处理器为PowerPC603E,如果选用性能更强的处理器,由于使用硬件抽象层与操作系统接口带来的性能损失将可以得到进一步缩小。测试结果表明本文研究的硬件抽象层与操作系统接口达到了设计的期望。结语目前国内针对硬件抽象层的研究刚刚起步,尚未形成相关标准。本文充分考虑嵌入式计算机的特点和要求,对硬件进行抽象,制定了相关接口,从而实现操作系统和硬件的隔离。通过对VxWorks操作系统的改造,验证了隔离机制,为嵌入式计算机硬件抽象层与操作系统接口的研究提供了一些可以借鉴的经验。课题份量和难易程度要恰当,博士生能在二年内作出结果,硕士生能在一年内作出结果,特别是对实验条件等要有恰当的估计。

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

当前位置:首页 > 办公文档 > 总结/报告

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