欢迎来到天天文库
浏览记录
ID:27717101
大小:279.50 KB
页数:4页
时间:2018-12-05
《嵌入式开发-提高嵌入式软件质量的途径》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、IC与元器件IC&Componen嵌入式系统清华大学曾鸣提高嵌入式软件质量的途径ImprovementofEmbeddedSoftwareQualities摘要:本文针对当前嵌入式软件开发中新的问题、新的需求,提出了提开发文档的编写高嵌入式软件质量的一些思路和具体方法,同时还对并行版本系由于嵌入式开发的特殊性,这统(CVS)做了简单的介绍。里所说的开发文档并不一定要像一关键词:嵌入式软件;嵌入式操作系统;CVS般的软件工程管理中那样各个环节面面俱到。但是,适当程度的开发引言但是,无论采用何种“风格”,文档还是十分必要的,它们和程序
2、现实的需求使得嵌入式软件的都是要求保证同一个作者、同一个中的注释结合起来,才能够确保程开发任务更加艰巨:很多时候,不开发队伍的源代码的一致性,根本序的可维护性。再是MCU上一个简单的前/后台程的目的还是要增加源程序的可读OpenSource的软件项目开发,序,而是需要包括通讯协议、图像性,使得源程序易于维护。有不少很好的传统习惯,可以在嵌显示、文件系统和若干特定功能模关于何谓好的书写风格,有各入式开发中加以借鉴,例如,一个块的复杂程序。种观点,也已有很多专门的文章论软件项目最低限度维护下列文档是与此同时,对于嵌入式软件在述了,这里
3、不做赘述,总体上编程很有必要的:开发周期、软件质量方面的要求却需要注意的有:¥README:整个项目结构、功丝毫没有降低——工程、科研使用¥文件头的信息(此程序的功能的说明;的嵌入式系统需要较高的可靠性,能、版本等);¥INSTALL:配置、编译该软件即便是消费产品,由于嵌入式软件¥函数前的说明信息(原型、功程序的说明;相对不太容易进行升级、补丁,也能、说明等);¥FILES:本项目所包含的源文是需要在尽量短的时间内、尽量完¥简洁而又清晰的程序注释;件tree及说明;美地完成开发的。¥易于阅读的缩进规则;¥HISTORY:本项目的
4、软件开针对这样的情况,本文将试图探讨一下提高嵌入软件质量的一些具体思路和方法。源程序代码的规范化源程序代码的“规范化”是一个相对抽象的概念—在嵌入式软件开发中C语言用得很多,而C语言本身就是以语法灵活、格式自由著称的—因此,很多时候会使用源码“风格”这样的说法。¥规范且含义清晰的变量、函数名称;¥有助于程序阅读的宏定义(如True和False)。例如mC/OS-II作者的C语言源代码就保持了一致的书写风格,并在他的书后专门撰写了一个附录,详细介绍了代码风格的规约,建议mC/OS-II的开发者们使用;与之相应的,mC/OS-II的整
5、个程序就结构清晰,代码十分干净、易于阅读。发的历史记录。此外,如果一个嵌入式软件项目自成模块,且面对最终用户的话,另外编写一份较详细、全面的项目报告是有必要的,最好还有一份步骤清晰的用户手册(Step-by-step)。硬件相关代码的分层设计嵌入式软件开发的特点是与硬件密切相关,而嵌入式的硬件平台2005.3107www.eepw.com.cnIC与元器件IC&Components又千差万别,通常每一个嵌入式项的具体源代码被独立出来,应用到对独立,任务之间的调度、硬件资目的软件开发,都需要从底层到顶不同的系统中时,只需根据项目提源
6、的管理都由操作系统来负责,开层全部编写一遍,即便是同一个公供的驱动模板,编写一个简单的C发者只用关心任务本身的功能和任司、同一个实验室,代码共享的程程序文件,提供初始化以太网接口务之间的简单关系。度都十分有限。这就导致了重复开和收、发以太网包的函数接口就可采用了嵌入式操作系统,一个发,非常浪费人力、物力。以了。工程产品、一台科研仪器,如果更在早期,这个问题还不算严重,不仅如此,lwIP项目中,对于换了系统硬件,只要在新硬件上构例如一个串口通讯的模块,或许每顶层也进行了封装,即“操作系统建好操作系统、驱动,上层实际功个项目都需要编写
7、,但工作量总还封装层”—lwIP可以用RawAPI直能的源程序就都可以保留复用了。不算太大。但是,如引言中所述,近接在嵌入式软件中调用,也可以通来嵌入式技术的发展迅速,当项目过“操作系统封装层”与各种操作借鉴软件工程的思想、方法开发所要面对的不再是简单的串系统集成在一起—同样只需要编写软件工程是当前的一个热点,口,而是诸如USB、以太网这样复一个C程序文件,将操作系统提供这里说借鉴,并不是要研究很多相杂的通讯协议,或是音频合成、图的信号量、消息队列、存储管理等关的理论、概念,而是在嵌入式软像处理这样的庞大算法时,就需要功能封装成l
8、wIP所要求的函数形件开发的工程实际中,直接使用一考虑改进嵌入软件开发的方式了。式,就可以了。些软件工程方面的成果就可以了,将软件进行分层进行开发,并正因为具有这样的特性,lwIP例如已经成熟的思想方法、便捷的不是什么新的想法,我们所熟知的Wind
此文档下载收益归作者所有