论文部分内容阅读
随着计算技术应用领域的不断扩大和网络技术的快速发展,普适计算、泛在计算等计算模式成为研究热点。适应这一发展趋势,未来的嵌入式操作系统将向小型化、一体化、个性化方向发展,以满足网络化、智能化应用的需要。嵌入式系统具有平台异构、应用多样、需求严格、资源受限等特点。用于嵌入式系统中的嵌入式操作系统需要在满足平台资源限制和应用需求严格的前提下,提高对平台异构性、应用多样性的静态适应能力,提高对外界条件变化的动态适应能力。
以嵌入式操作系统结构的适应性为切入点,本文对嵌入式操作系统柔性结构构造做了研究,并进一步研究了在柔性结构操作系统中支持软件复用的方法、技术。本文的创新点主要有:
(一)提出了一种支持柔性结构嵌入式操作系统构造的框架
提高操作系统适应性的关键在于提高其结构的灵活性,以便于对系统的软、硬件资源管理策略进行定制、更改,增强目标系统的可配置能力和可演化能力。本文提出的框架由一个精炼核心、若干操作系统功能构件和用户应用构件、及动态生成的构件间连接成分构成。核心中包含硬件抽象层和构件运行服务。硬件抽象层为其上运行的各类构件提供硬件平台抽象访问接口。框架的特点主要体现在:(1)可生成柔性结构的嵌入式操作系统——开发时系统结构可灵活配置;运行时结构可动态演化;(2)框架设计吸收了近年来发展的小核心思想;(3)应用了构件化软件开发技术,支持二进制级系统软件构件的黑盒复用。
(二)设计并实现了一种支持构件接口间多种连接方式的轻量级构件服务为支持目标嵌入式操作系统的动态演化,需要对运行时的系统功能构件及各构件间的关系进行管理和维护。本文所设计实现的构件运行服务位于框架的核心中,负责运行构件管理及构件的动态加载/卸载,为构件间动态建立连接成分,并对构件交互实施保护。构件运行服务的主要特点有:(1)支持构件间多种交互方式,能够根据构件接口的实际需要生成连接成分;(2)所生成的连接子开销较小且可控,必要时可做到零开销,能够满足嵌入式系统小型化、低开销的需求;(3)纯软件技术实现的构件间保护机制,适用于无硬件保护机制的嵌入式平台。
(三)提出了一种从已有软件系统中提取可复用成分,将所提取成分制作成二进制构件并在新的框架中复用的方法
已有软件系统中通常存在较多有复用价值的软件成分,这些软件成分经过精心设计、严格测试后,在实际产品中被长期使用,有较高的再利用价值。在小核心系统中,构建应用程序与操作系统功能构件时,开发人员需要自行实现较多功能成分。本文进一步研究了复用已有软件系统中有价值成分的方法和技术。方法的要点主要有:(1)在相关文档和领域知识的支持下,基于二进制文件间交叉引用关系分析,从已有系统中辨识、提取软件成分;(2)对所提取的二进制软件成分进行改造并重新封装,增强构件接口语法表述,分离接口与实现,附加运行时安全检查代码并增加签名。
(四)基于框架设计,实现了一个柔性结构的嵌入式操作系统(TICK)
基于所提出的框架设计,本文工作中开发了一个柔性结构的嵌入式操作系统原型,并对所实现的系统原型做了全面的测试和分析。在实现过程中,对硬件抽象技术和系统构件自身的柔性构造亦作了深入研究。所实现的原型系统具有如下特点:(1)包含一个完全的硬件抽象层,对启动服务和运行服务作明确区分,为设备访问提供低层驱动;(2)包含支持多种策略并存的调度器和内存管理器。原型系统的成功实现表明了框架的可行性,测试与分析结果进一步说明通过动态构造连接子方式实现的柔性结构中,额外开销可控且保持在可接受范围之内。