[发明专利]一种嵌入式系统的代码生成方法无效
申请号: | 200910100614.6 | 申请日: | 2009-07-10 |
公开(公告)号: | CN101604241A | 公开(公告)日: | 2009-12-16 |
发明(设计)人: | 吴国华;李松坡;郑秋华;张祯 | 申请(专利权)人: | 杭州电子科技大学 |
主分类号: | G06F9/44 | 分类号: | G06F9/44 |
代理公司: | 杭州求是专利事务所有限公司 | 代理人: | 杜 军 |
地址: | 310018浙江省*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 嵌入式 系统 代码 生成 方法 | ||
技术领域
本发明属于计算机技术领域,特别是涉及了一种嵌入式系统的代码生成方法。
背景技术
在实时嵌入式系统(Real-time Embedded System,RtEM)中,单片机处理器能力的提高和应用程序功能的复杂化、精确化,迫使应用程序划分为多个重要性不同的任务,在各任务间优化地分配CPU时间和系统资源,同时还要保证实时性。靠用户自己编写一个实现上述功能的内核一般是不现实的,而这种需求又是普遍的。在这种形势之下,由专业人员编写、满足大多数用户需要的高性能RtEM内核就是一种必然结果了。此外,单片机系统软件开发日趋工程化,产品进入市场时间不断缩短,也迫使管理人员寻找一种有利于程序继承性、标准化、多人并行开发的管理方式。从长远的意义上来讲,RtEM的推广能够带来嵌入式软件工业更有效、更专业化的分工,减少社会重复劳动、提高劳动生产率。代码生成就是RtEMPlatform代码生成器通过整合一些输入文件产生一个或多个输出文件。
发明内容
本发明的目的就是提供一种嵌入式系统的代码生成方法,通过代码生成引擎将读取的工程中的文本或模型自动生成规范的计算机能理解的代码,从而解决现有技术手工编写代码费时费力并且效率不高的问题。
本发明方法的具体步骤是:
步骤(1).读取PIM文档并配置PIM文档;
步骤(2).调用对应代码模板,并对对应代码模板进行解析;
步骤(3).生成目标平台的源代码。
步骤(1)中的PIM文档采用XML格式的文件保存应用模型信息,PIM文档用来存储数据、携带数据和交换数据,并且能够从多种不兼容类型的数据存储方式中分离数据。用户需要修改程序时,首先读取PIM文档内容,然后根据需求修改PIM文档内容,并将修改后的PIM文档作为输入;代码生成引擎读取修改后的PIM文档,并根据需求配置PIM文档,重新生成源代码。
步骤(2)中调用对应代码模板产生一个或多个输出文件,是输出的不可变的部分;对对应代码模板的解析是通过定义模板描述文件和模板标签库,调用模板引擎解析执行,实现代码框架、数据和流程的分离,并且能够支持不同模板之间的嵌套。解析时由特殊的模板标签进行引入,通过标记“$”进行参数替换的判断,借助PIM文档中的数据来完成解析。
步骤(3)利用步骤(1)中读取的指定配置文件,根据代码生成的配置文件和步骤(2)中调用的对应代码模板、解析得来的数据信息,在引擎中进行保存,然后对模板文档中的标记及变量进行匹配及替换,从而产生不受问题范围限制的源代码输出。
本发明提供的自动代码生成方法与生成的源代码没有任何关系,问题描述的过程从自动代码生成系统完全转移到模板,自动代码生成系统成为一个快速、以生成为目的的引擎,具有能够完成融合实例数据文件和模板数据文件基本任务的功能。其主要优点是:(1)可以生成不受问题范围限制的代码;(2)模板的表示类似于程序代码或者是脚本;(3)实例数据可以从代码生成器中清晰地分离出来。
本发明的模板与UML工具中涉及的模板有所不同,在代码生成开发过程中,模板一般是由经验丰富的编程人员设置的,所以质量比一般的程序员编写的代码质量要高。尽管模板一般是由经验丰富的编程人员设置的,但是只要知道如何设置模板,任何人均可设置模板,当然,一般人设置的模板在生成代码的质量上可能无法跟经验丰富的编程人员所设置的模板相比。UML模板有编程语言上的限制和结构类型上的限制,但在本发明中,模板跟特定的语言和结构类型没有关系。就是说,用户可以根据自己的需要和爱好任意设定模板内容。
本发明提供的代码生成方法,提高了开发效率和节约了开发时间,降低了开发成本,同时提高了调用模板的灵活度。
具体实施方式
一种嵌入式系统的代码生成方法的具体步骤是:
步骤(1).读取PIM文档并配置PIM文档;
步骤(2).调用对应代码模板,并对对应代码模板进行解析;
步骤(3).生成目标平台的源代码。
步骤(1)中的PIM文档采用XML格式的文件保存应用模型信息,PIM文档用来存储数据、携带数据和交换数据,并且能够从多种不兼容类型的数据存储方式中分离数据。用户需要修改程序时,首先读取PIM文档内容,然后根据需求修改PIM文档内容,并将修改后的PIM文档作为输入;代码生成引擎读取修改后的PIM文档,并根据需求配置PIM文档,重新生成PIM文档对应XML的DOM树。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州电子科技大学,未经杭州电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200910100614.6/2.html,转载请声明来源钻瓜专利网。