CN109857406B - 卫星嵌入式软件批处理***和方法 - Google Patents

卫星嵌入式软件批处理***和方法 Download PDF

Info

Publication number
CN109857406B
CN109857406B CN201910116071.0A CN201910116071A CN109857406B CN 109857406 B CN109857406 B CN 109857406B CN 201910116071 A CN201910116071 A CN 201910116071A CN 109857406 B CN109857406 B CN 109857406B
Authority
CN
China
Prior art keywords
software
batch
application software
project
compiling
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201910116071.0A
Other languages
English (en)
Other versions
CN109857406A (zh
Inventor
贺俊旺
王宏斌
朱野
周大看
王本金
梁旭文
刘会杰
程睿
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Engineering Center for Microsatellites
Original Assignee
Shanghai Engineering Center for Microsatellites
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Engineering Center for Microsatellites filed Critical Shanghai Engineering Center for Microsatellites
Priority to CN201910116071.0A priority Critical patent/CN109857406B/zh
Publication of CN109857406A publication Critical patent/CN109857406A/zh
Application granted granted Critical
Publication of CN109857406B publication Critical patent/CN109857406B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Stored Programmes (AREA)

Abstract

本发明提供了一种卫星嵌入式软件批处理***,支持批处理编译应用软件工程、批处理配置编译参数、批处理更新依赖关系、批处理配置调试信息,并提供了批处理操作图形用户界面。卫星嵌入式软件批处理***包括应用软件工程,用于实现模块化功能;软件集成开发环境,被配置为批处理编译所述应用软件工程。进一步,还包括周期定时器,在每次定时器超时后,检测编译进度和启动下一个应用软件工程。本法发明还提供了一种卫星嵌入式软件批处理方法。本发明通过批处理功能极大提高了卫星嵌入式软件的编译和配置效率。

Description

卫星嵌入式软件批处理***和方法
技术领域
本发明涉及卫星领域,尤其是卫星嵌入式***。
背景技术
嵌入式技术是以应用为中心,以计算机技术为基础,并且软硬件可裁剪,适用于应用***对功能、可靠性、成本、体积、功耗有严格要求的专用计算机***技术。
嵌入式***(Embedded system),是一种完全嵌入受控器件内部,为特定应用而设计的专用计算机***。与个人计算机这样的通用计算机***不同,嵌入式***只执行特定的任务,从而设计人员能够裁剪不必要的软硬件和降低成本。
随着嵌入式***研发周期逐渐缩短和可靠性要求逐渐提高,嵌入式***必须模块化才能应对日益缩短的研发周期和逐步提高的可靠性要求。
在卫星嵌入式软件领域,对卫星软件功能进行模块化,对每个模块化的功能建立一个应用软件工程。
嵌入式软件工程包括一个***软件工程和多个应用软件工程,它们一起实现卫星嵌入式软件工程所需要的功能。
***集成开发环境(Tornado IDE)是实时操作***的集成开发环境,它提供了面向嵌入式***的开发和调试工具。
在配置和编译多个卫星应用软件工程时,研发人员需要使用Tornado IDE进行对各个应用软件工程进行配置和编译。研发人员每次只能对一个应用软件工程进行配置和编译,但是应用软件工程数量太多,逐个配置和编译的效率很低。
发明内容
本发明所解决的技术问题是提高批量应用软件工程配置和编译效率。
为解决上述技术问题,本发明提供一种卫星嵌入式软件批处理***,包括应用软件工程,用于实现模块化功能;软件集成开发环境,被配置为批处理编译所述应用软件工程。
进一步的,所述的卫星嵌入式软件批处理***还包括周期定时器,所述周期定时器循环周期计时;在启动批处理编译任务时,选择一个所述应用软件工程进行编译;在所述周期定时器超时后,如果所述被选择应用软件工程没有编译完成,则继续编译所述被选择应用软件工程;在所述周期定时器超时后,如果所述被选择应用软件工程已经编译完成,则选择一个未编译的所述应用软件工程进行编译。
进一步的,所述的卫星嵌入式软件批处理***还包括编译任务列表,所述卫星嵌入式软件批处理***按照被编译应用软件工程对应的编译任务列表来编译所述被编译应用软件工程。
进一步的,所述编译任务列表包括获取编译参数。
进一步的,所述编译任务列表还包括软件工程状态检查、模拟器检查、调试器检查、执行编译、返回编译结果。
进一步的,所述软件集成开发环境被配置为批处理设置所述编译参数。
进一步的,所述软件集成开发环境被配置为批处理更新所述应用软件工程对***软件工程的依赖关系。
进一步的,所述软件集成开发环境被配置为批处理设置所述应用软件工程的调试信息。
进一步的,所述软件集成开发环境包括批处理图形用户界面。
本发明还提供一种卫星嵌入式软件批处理方法,包括用软件集成开发环境批处理编译应用软件工程
综上所述,本法发明通过卫星嵌入式软件批处理***和方法能极大提高卫星嵌入式软件的编译和配置效率。
附图说明
下面结合附图对本发明的具体实施方式做进一步详细说明,其中:
图1是本发明的一种实施方式的***图;
图2是本发明的一种实施方式,其中包括周期定时器;
图3是批处理编译应用软件工程的图形界面;
图4是批处理更新应用软件工程依赖关系的图形界面。
具体实施方式
下面结合附图对本发明的具体实施方式做进一步详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变型和改进。这些都属于本发明的保护范围。
一、批处理编译应用软件工程
在***性嵌入式软件工程编译之前,要对应用嵌入式软件工程进行编译。由于应用嵌入式软件工程数量很多,因此逐一编译耗时费力。
在一个实施例中,如图1所示,本发明的卫星嵌入式软件批处理***,包括应用软
件工程11、12、13、14、15,用于实现模块化功能;软件集成开发环境2,被配置
为批处理编译21所述应用软件工程。
在一个实施例中,本发明通过***集成开发环境(Tornado IDE)的工作空间的项目句柄(Workspace::_projectHandles)遍历工作空间下的所有软件工程,并找出应用软件工程,然后进行编译。
在一个实施例中,如图2所示,所述的卫星嵌入式软件批处理***还包括周期定时器,所述周期定时器循环周期计时,在启动批处理编译任务51时,选择一个所述应用软件工程进行编译;
在所述周期定时器超时52后,如果所述被选择应用软件工程没有编译完成,则继续编译所述被选择应用软件工程53;
在所述周期定时器超时52后,如果所述被选择应用软件工程已经编译完成,则选择一个未编译的所述应用软件工程进行编译54;
在所述周期定时器超时52后,如果所述应用软件工程都已经编译完成,则停止所述批处理编译任务。
使用周期定时器是实现批处理编译的一种方式。所述***按照周期来检查被选择的应用软件工程是否编译完成,如果编译完成,则选择下一个应用软件工程继续编译,从而逐个完成所有应用软件工程的编译。
应当指出,也可以采用其它方式实现批处理编译,例如利用编译完成消息触发所述***去选择下一个应用软件工程。
在一个实施例中,所述嵌入式软件批处理***还包括编译任务列表,所述卫星嵌入式软件批处理***按照被编译应用软件工程对应的编译任务列表来编译所述被编译应用软件工程。
在一个实施例中,所述编译任务列表包括获取编译参数。
在一个实施例中,所述编译任务列表还包括软件工程状态检查、模拟器检查、调试器检查、执行编译、返回编译结果。
在进行编译之前,软件人员对每一个应用软件工程定义一个对应的编译任务列表。所述编译任务列表指定在编译其对应的应用软件工程时必须执行的编译任务,软件集成开发环境在批处理过程中,执行到一个被编译的应用软件工程时,就按照其对应的编译任务列表来逐个执行编译任务。
二、批处理配置编译参数
在一个实施例中,如图1所示,所述软件集成开发环境2被配置为批处理设置所述编译参数22。
所述编译参数包括但不限于设置目标文件类型、静态链接库、可加载的目标文件、头文件的路径等。
例如,编译参数包括编译后的目标文件类型。在传统嵌入式软件开发过程中,开发人员每次仅能为一个应用软件工程设置一个目标文件类型。通过批处理配置编译参数功能,可以一次将所有应用软件工程的编译参数都配置完毕。从而在编译的时候能够按照所述编译参数批处理编译应用型软件工程。
三、批处理更新依赖关系
在一个实施例中,所述软件集成开发环境2被配置为批处理更新所述应用软件工程对***软件工程的依赖关系23。
由于嵌入式软件进行了模块化,每个应用软件工程对应一个模块化功能。一个模块化功能必须依赖和调用***软件工程中的***层、管理层和服务层的功能,因此应用软件工程依赖于***软件工程。
当***软件工程变化时,应用软件工程中的文件需要相应更新对***软件工程的引用和接口参数,也称之为设置依赖关系。
在一个实施例中,所述依赖关系通过编写文件来描述,在Tornado IDE中,编写文件为Makefile。
当存在大量应用软件工程时,设置依赖关系的操作就会比较复杂。人工一个一个去配置的效率低下而且容易出错。因此需要批处理更新依赖关系,以提高效率。
四、批处理设置调试信息
在一个实施例中,所述软件集成开发环境2被配置为批处理设置所述应用软件工程的调试信息24。
在一个实施例中,所述调试信息24包括:是否包含调试信息、优化等级。
所述是否包含调试信息用于指示在编译时是否包括调试信息。
所述优化等级用于平衡优化的程度,优化等级越高,则代码执行效率越高,但是优化时间更长,代码更不易故障定位。相反,如果代码优化等级越低,则执行效率越低,但是优化时间越短,也越容易故障定位。
在嵌入式软件开发过程中,开发人员需要频繁设置调试信息。通过批处理配置调试信息,从而研发人员可以通过一次操作配置所有软件工程的调试信息。
五、提供批处理图形用户界面
在一个实施例中,所述软件集成开发环境2包括批处理图形用户界面25。
在一个实施例中,如图3所示,提供批处理编译应用软件工程按钮(build allvxapp project),用户可以一键启动批处理编译。
在一个实施例中,如图4所示,提供批处理更新依赖关系按钮(updatedependencies for all projects),用户可以一键启动更新批处理更新依赖关系。
以上详细描述了本发明的较佳具体实施例。应当理解,在本发明的教导下,本领域的普通技术人员可以对本发明做出诸多修改和变化。因此,凡本技术领域中技术人员依本发明的构思在现有技术的基础上通过逻辑分析、推理或者有限的实验可以得到的技术方案,皆应在由权利要求书所确定的保护范围内。

Claims (8)

1.一种卫星嵌入式软件批处理***,其特征在于,包括
应用软件工程,用于实现模块化功能;
软件集成开发环境,被配置为批处理编译所述应用软件工程;以及
周期定时器,其被配置为执行下列动作:
所述周期定时器循环周期计时,其中按照周期来检查被选择的应用软件工程是否编译完成,如果编译完成,则选择下一个应用软件工程继续编译;
在启动批处理编译任务时,选择一个所述应用软件工程进行编译;
在所述周期定时器超时后,如果所述被选择应用软件工程没有编译完成,则继续编译所述被选择应用软件工程;
在所述周期定时器超时后,如果所述被选择应用软件工程已经编译完成,则选择一个未编译的所述应用软件工程进行编译。
2.根据权利要求1所述的卫星嵌入式软件批处理***,其特征在于,还包括编译任务列表,所述卫星嵌入式软件批处理***按照被编译应用软件工程对应的编译任务列表来编译所述被编译应用软件工程。
3.根据权利要求2所述的卫星嵌入式软件批处理***,其特征在于,所述编译任务列表包括获取编译参数。
4.根据权利要求3所述的卫星嵌入式软件批处理***,其特征在于,所述编译任务列表还包括软件工程状态检查、模拟器检查、调试器检查、执行编译、返回编译结果。
5.根据权利要求3所述的卫星嵌入式软件批处理***,所述软件集成开发环境被配置为批处理设置所述编译参数。
6.根据权利要求1所述的卫星嵌入式软件批处理***,其特征在于,所述软件集成开发环境被配置为批处理更新所述应用软件工程对***软件工程的依赖关系。
7.根据权利要求1所述的卫星嵌入式软件批处理***,其特征在于,所述软件集成开发环境被配置为批处理设置所述应用软件工程的调试信息。
8.根据权利要求1至7任一所述的卫星嵌入式软件批处理***,其特征在于,所述软件集成开发环境包括批处理图形用户界面。
CN201910116071.0A 2019-02-15 2019-02-15 卫星嵌入式软件批处理***和方法 Active CN109857406B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910116071.0A CN109857406B (zh) 2019-02-15 2019-02-15 卫星嵌入式软件批处理***和方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910116071.0A CN109857406B (zh) 2019-02-15 2019-02-15 卫星嵌入式软件批处理***和方法

Publications (2)

Publication Number Publication Date
CN109857406A CN109857406A (zh) 2019-06-07
CN109857406B true CN109857406B (zh) 2022-07-12

Family

ID=66898017

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910116071.0A Active CN109857406B (zh) 2019-02-15 2019-02-15 卫星嵌入式软件批处理***和方法

Country Status (1)

Country Link
CN (1) CN109857406B (zh)

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8209662B2 (en) * 2006-12-04 2012-06-26 Microsoft Corporation Application retargeting
JP5815512B2 (ja) * 2010-05-14 2015-11-17 株式会社日立製作所 リソース管理方法、計算機システムおよびプログラム
CN101916203B (zh) * 2010-08-18 2012-12-26 优视科技有限公司 服务于移动通讯的终端软件平台的编译方法及***
CN101963915B (zh) * 2010-09-25 2016-06-15 中兴通讯股份有限公司 一种编译的构建方法及***
CN102043714B (zh) * 2010-12-10 2013-01-02 成电汽车电子产业园(昆山)有限公司 一种嵌入式软件自动测试***
CN103176774A (zh) * 2011-12-21 2013-06-26 ***通信集团广东有限公司 应用程序的编译方法、装置以及***
CN108563442A (zh) * 2018-02-28 2018-09-21 北京智行鸿远汽车有限公司 代码编译方法及装置

Also Published As

Publication number Publication date
CN109857406A (zh) 2019-06-07

Similar Documents

Publication Publication Date Title
CN100555218C (zh) 用于改善片上仿真***中高级语言的仿真速度的装置和方法
CN102402427B (zh) 一种Java应用程序的更新方法及装置
US9146713B2 (en) Tool composition for supporting openCL application software development for embedded system and method thereof
CN101859244A (zh) 多工具链工程构建方法及***
CN103180827A (zh) 游戏服务器中的任务文件执行装置以及方法
CN101650647A (zh) 一种efi平台的兼容方法
Ahmed et al. Cultivating software solutions development in the scientific academia
CN105740139A (zh) 一种基于虚拟环境的嵌入式软件调试方法
US20080127118A1 (en) Method and system for dynamic patching of software
US20080127061A1 (en) Method and system for editing code
CN109857406B (zh) 卫星嵌入式软件批处理***和方法
KR20110037140A (ko) 임베디드 소프트웨어 가상 개발 환경을 제공하는 시스템
Tan et al. Review on firmware
CN108399068B (zh) 函数程序持久化的方法、电子设备及存储介质
Pinto et al. Pegasus: performance engineering for software applications targeting hpc systems
Boydens et al. Test-driven development of embedded software
CN109144849A (zh) 一种嵌入式软件调测方法
CN117813586A (zh) 对具有未保存的源代码更改的正在运行的应用进行热重载
US7761845B1 (en) Method for parameterizing a user module
Parizek et al. Assume-guarantee verification of software components in sofa 2 framework
Wigand et al. Model-driven scheduling of real-time tasks for robotics systems
Diepenbeck et al. Towards automatic scenario generation from coverage information
Melone et al. Verifying functionality and performance of HPC applications with continuous integration
JPWO2015136607A1 (ja) ソフトウェア開発支援システム、ソフトウェア開発支援方法およびソフトウェア開発支援プログラム
CN108984164B (zh) 一种基于imcl模型的异构式多平台代码生成***

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant