第二阶段是基于组件EMDBS 体系结构设计,在前面分析的基础上进行相应的硬件体系结构和软件体系结构的设计。硬件体系结构的设计采用组件技术的思想,设计和开发硬件的基础组件,或者有相应的工程师选择现成的硬组件。而软件体系结构的开发通过选择支持组件的嵌入式操作系统、确定系统级的扩展服务组件、确定应用级的领域通用组件和专用组件,同时确定各个组件之间的关系。
第三阶段是组件实现和组件集成。它首先明确组件的定义、组件的描述技术和规范、组件的裁剪,其次验证组件特性和生成相应的技术文档,让所有的组件通过标准端口在统一调度程序下实现交互,完成系统预定的功能,集成系统的所有组件(有些组件可以在组件库中提取,其余的组件由相应的开发小组完成),最后及时地把新开发的组件放入到组件库中以备将来使用。
第四阶段是测试和系统发布,测试包括集成测试和系统测试两部分。它把整个系统的组件、调试程序以及硬件的开发平台集成在一起,进行整体测试,最终形成产品进行发行使用。
4 基于组件的EMDBS 的设计
基于组件的嵌入式移动数据库系统将会使用大量组件,我们通过组件容器来搭建创建者和使用者之间的桥梁。并且在组件容器的上配置上组件*器,用来监测组件的添加、删除、修改和替换等操作,同时它会启用组件的规范验证机制来测试和验证状态发生变化的组件是否能够按照要求工作,胶合组件中的胶合代码信息也会被更新,系统还会通知其它与此组件相关联的组件,告诉它们发生的变化,以适应新的系统状态。
通过对嵌入式移动数据库系统和嵌入式移动数据库组件环境的分析和设计,我们设计了以组件容器为核心,由日志组件、事务处理组件、SQL 解析组件、访问控制组件和其他功能组件组成的嵌入式移动数据库系统。如图3 所示[2][5]。
通过图3 设计的嵌入式移动数据库系统,第一,方便用户掌握和学习,又方便为基于组件技术开发软件提供统一标准;第二,组件容器提供了一些扩展接口,方便第三方开发的组件的使用;第三,方便组件的更新、删除、替换等操作,如对某些组件不想要可以进行上面的操作;最后,为了系统的安全和节能起见,可以为系统增加新的功能,如增加“来电防火墙”组件,节能保护组件等。
5 基于组件的EMDBS 的实现
SkyEye 是一个开源软件项目,它是一个指令级的模拟器,可以模拟多种嵌入式开发板,能够支持多种CPU 指令集。在SkyEye 上运行的操作系统根本意识不到它是在一个模拟的环境中运行,开发人员还可以通过SkyEye 调试操作系统和系统软件。SkyEye 模拟器即可以运行于Linux 环境下,又可以在Windows 下进行模拟运行。限于文章篇幅原因,关于SkyEye模拟器Cywgin 和MingW 安装过程就省略不谈。