【delphi开源代码栏目提醒】:本文主要为网学会员提供“面向对象的嵌入式软件IDE的架构与设计 - 期刊论文”,希望对需要面向对象的嵌入式软件IDE的架构与设计 - 期刊论文网友有所帮助,学习一下!
中国自动化学会第二十五届青年学术年会论文集 面向对象的嵌入式软件IDE的架构与设计1 张小琪 王培进 1 (烟台大学 计算机科学与技术学院,山东,烟台 264005) (E-mail: wpjytu.edu.cn zxq163.com) 摘 要:嵌入式硬件发展日新月异,使得软件的比重逐渐加大,针对目前嵌入式软件开发工具 的不足,本文提出利用面向对象的技术来设计一种嵌入式软件 IDE使设计人员利用可重用的组 件模块,搭建符合硬件要求的软件系统,大大提高开发效率和软件质量。
关键词:面向对象,嵌入式软件 IDE 交叉编译 内核移植 Object-Oriented Design and Implementation of Embedded System IDE Software ZHANG Xiao-Qi WANG Pei-Jin School of Computer Science and TechnologyYantai University Yantai 264005 China (E-mail: wpjytu.edu.cn zxq163.com) Abstract The rapid development of embedded hardware makes the proportion of software design increase gradually. This paper proposed one method of designing embedded software IDE based on object oriented technology because of the shortcomings of current IDE .Software designers can use these reusable components modules to infrastructure software system which meets the hardware system. This greatly improves the efficiency and quality of the development of software. Key words Object-Oriented Embedded software IDE Cross Compile Kernel Porting 机系统 1 。
1 引言 微处理器的高度集成化, 操作系统的引 进以及人们对嵌入式系统应用要求的提高, 随着芯片、软件、网络等技术的发展, 导致嵌入式系统开发中软件设计的难度空嵌入式已经被广泛应用于科学研究、工程设 前复杂,集成开发环境IDE也就随之出现。
计、军事技术以及文艺商业等领域,人们已 但目前, 大多数嵌入式开发商仍然在沿用低经进入了后PC时代,嵌入式系统正在以各种 效率的工具和方法。
设备软件开发人员必须不同的形式改变着人们的生产,生活方式。
面对诸多方面的困难,来自软件架构、操作它是以应用为中心,以计算机技术为基础, 系统和中间件等多个层次的复杂性困扰着软硬件可剪裁,符合应用系统对功能、可靠 他们。
同时,由于缺乏集成化的开发环境,性、成本、体积、功耗严格要求的专用计算 开发人员常常必须混合使用来自不同提供1 烟台市科技攻关资助项目2007148 Supported by Yantai science and technology Department 2007148 收稿日期 2010-05-12 收修改稿日期 2010-07-01 Received Date 2010-05-12 in revised form Date 2010-07-01 99 中国自动化学会第二十五届青年学术年会论文集商的开发工具, 由此带来的复杂性也不可忽 本文围绕针对移植有 Linux 操作系统的嵌入视。
可见,在设备软件开发领域,仅仅由于 式开发流程进行讨论。
开发工具和开发方法的一致性和整合性的 典型的基于嵌入式Linux操作系统的嵌问题, 就给整个产业的发展造成了非常大的 入式软件开发流程如下 1 :障碍。
理想的状态是,设备软件开发人员不 1 获取硬件系统的信息: 如选取的微应该再去担心操作系统、 功能集成和软件平 处理器体系,Flash 型号、网卡型号及其他台问题, 而是将主要精力放在产品的差别化 外设的信息等;和竞争优势方面。
但实际情况是,设备软件 2 建立交叉编译工具: 一般的 GCC开发人大部分精力花在了工具、 方法和集成 工具都是针对 X86 体系的, 为了能够生产目性方面。
标板执行的代码必须建立交叉编译工具; 嵌入式软件采用的各种开发工具很多 3 开发 Bootloader:建立启动系统的都来自不同的提供商, 也很少考虑相互之间 主引导程序;的兼容性,效率自然不是很高。
开发人员发 4 移植 Linux 内核:如基于 Linux2.6现,他们的工作就像是每设计一部车的时候 内核移植;都要从重新设计轮胎开始, 基本上没有办法 5 开发一个根文件系统:如 rootfs 的从已有的设计方案中重复利用原有的设计 制作;成果和知识产权。
嵌入式软件在概念上主要 6 开 发 特 定 硬 件 的 驱 动 程 序 : 如局限于操作系统和开发工具。
而且,许多制 LCD,Keypad 等;造商都采用自己开发的专有操作系统和开 7 开发上层的应用程序:如 QT GUI发平台,通用性就更差。
开发。
面向对象技术是当前实现软件模块化, 对于开发过程的各个环节, 有的提供了提高软件复用性最优的方法, 现在成为计算 辅助的开发工具, 有的需要完全依赖经验手机领域中的一种主流技术, 本文提出利用面 工从底层开发, 嵌入式软件开发依然停留在向对象的技术来设计一种嵌入式软件 IDE, 手工作坊式的方式,很难做到工程化管理。
对嵌入式软件开发中的各个对象的类进行 本文所设计的 IDE 将涵盖整个开发的各个分析与设计,架构一个通用的开发模型,根 重要环节,力求最大程度上降低开发难度,据硬件配置自动产生基本的系统软件方案。
在集成化开发环境里完成主要工作。
只需要系统中的每个对象类的属性及其操作设置,自动搭建交叉编译环境,降低操作 3 IDE面向对象的分析与设计系统裁减和移植的难度, 产生驱动程序的基 对于运行嵌入式 Linux 操作系统的系本框架。
开发人员只需要配置好各个模块的 统,根据其开发流程,利用面向对象技术分基本信息,将更多精力集中在系统的应用 析设计出 6 个基本的大类,如图 1、2、3 所上。
示,并给出对象之间的协作关系图。
这几个2 嵌入式软件的开发流程 大类贯穿了嵌入式软件开发的重要环节。
与常见的 PC 和服务器软件不同,嵌入式软件主要是对设备内部各部分的运行进行协调,并不与设备使用者发生直接接触。
PC 和服务器软件的运行环境是标准化的,而嵌入式软件的运行环境随电子设备的不同而改变,必须针对不同的电子产品进行专门的设计、开发和优化。
由于嵌入式 Linux 图 1 嵌入式软件 IDE 基本类操作系统在嵌入式开发中占据了主流,因此 Fig.1 Basic classes of embedded software IDE 100 中国自动化学会第二十五届青年学术年会论文集 硬件系统信息类,承载了硬件系统的描 理器的工作频率设置,采用何种启动方式,述信息,比如选取何种体系的微处理器,处 是 NandFlash还是 NorFlash 或者 EPROM 图 2 基本类详细信息 Fig.2 Details of basic classes 101 中国自动化学会第二十五届青年学术年会论文集 图 3 基本对象的协作图 Fig.3 Collaboration diagram of basic objects等,用户通过设定这些参数,其他对象将获 修改的只是个别对象的内部数据和操作,整 2-3 取其中的信息进行配置。
体架构不受任何影响 。
嵌入式开发需要交叉编译,Linux 环境下一般就是采用开源 Gcc 系列进行配置, 环 4 系统的具体实现境搭建类管理交叉编译链的源代码, 根据体 目前可视化的面向编程语言种类比较系架构的信息自动生成运行脚本, 在制定目 多,从对面向对象技术的支持程度上来说,录下生成完整的交叉编译链, 这是嵌入式开发的基础。
工程管理类, 集成开发环境的主要目的就是同一组织文档,省却人工管理,自动编译运行源码,其中包含了文件操作,组织好源代码之间的关系,利用 make 技术进行编译,牵扯到大量全局环境
上一篇:
测量程序设计
下一篇:
天亮之后