CN112114781A - 一种嵌入式软件系统 - Google Patents

一种嵌入式软件系统 Download PDF

Info

Publication number
CN112114781A
CN112114781A CN202010918055.6A CN202010918055A CN112114781A CN 112114781 A CN112114781 A CN 112114781A CN 202010918055 A CN202010918055 A CN 202010918055A CN 112114781 A CN112114781 A CN 112114781A
Authority
CN
China
Prior art keywords
data
layer
operating system
source code
data processing
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.)
Pending
Application number
CN202010918055.6A
Other languages
English (en)
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.)
Foshan Junde Zhenghai Machinery Technology Co ltd
Original Assignee
Foshan Junde Zhenghai Machinery Technology Co ltd
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 Foshan Junde Zhenghai Machinery Technology Co ltd filed Critical Foshan Junde Zhenghai Machinery Technology Co ltd
Priority to CN202010918055.6A priority Critical patent/CN112114781A/zh
Publication of CN112114781A publication Critical patent/CN112114781A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/31Programming languages or programming paradigms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种嵌入式软件系统,涉及软件开发技术领域。本发明包括至下而上依次连接的硬件层、基本实时内核层、操作系统服务层和用户应用层,硬件层,用于描述嵌入式系统的硬件资源情况;通信适配单元用于对操作系统服务层中的通信函数接口进一步封装,以获得统一的初始化、调用函数接口;操作系统服务层用于向用户提供各种系统服务;操作系统服务层的源码组件由用户根据需要进行添加,最终构成用户组件库;用户应用层用于部署客户编写的应用软件;应用软件调用服务层API,并以任务的形式挂接到操作系统上,由操作系统调度运行。本发明通过源码组装方式,提高更新效率,节约成本、便于阅读、调试和修改。

Description

一种嵌入式软件系统
技术领域
本发明属于软件开发技术领域,特别是涉及一种嵌入式软件系统。
背景技术
随着软件技术的发展,在对新的软件进行设计和实现的过程中,历史项目发挥的借鉴作用日益突出,软件重用技术显得尤为重要,目前在VxWorks等嵌入式实时操作系统下开发的软件,多由c语言等面向过程语言实现,具有较差的重用、扩展性能;在承担复杂任务时,软件的维护难度随任务复杂程度的上升而上升,以至于需求的些许更改都会给整个软件带来灾难性后果。
VxWorks:美国风河公司(WindRiver)开发的一种嵌入式实时操作系统,广泛应用于国防、航空航天、通信、消费电子、工业控制、汽车电子等领域。
Tornado:美国风河公司(WindRiver)开发的一套强大的图形化嵌入式集成开发环境,能够实现创建和管理工程、建立和管理宿主机与目标机之间通信以及运行、调试和监控VxWorks应用等功能。
XML:可扩展标记语言(英语:ExtensibleMarkupLanguage,简称:XML),是一种标记语言。标记指计算机所能理解的信息符号,通过此种标记,计算机之间可以处理XML所包含的各种信息等。
发明内容
本发明的目的在于提供一种嵌入式软件系统,通过至下而上依次连接的硬件层、基本实时内核层、操作系统服务层和用户应用层构建软件架构,利用源码组装方式,解决了现有的语言重复利用性能低、扩展性能差的问题。
为解决上述技术问题,本发明是通过以下技术方案实现的:
本发明为一种嵌入式软件系统,包括至下而上依次连接的硬件层、基本实时内核层、操作系统服务层和用户应用层,
所述硬件层,用于描述嵌入式系统的硬件资源情况;所述硬件层包括通信适配单元、收发数据管理单元和数据处理单元;所述通信适配单元用于对操作系统服务层中的通信函数接口进一步封装,以获得统一的初始化、调用函数接口;
所述基本实时内核层包括内核初始化模块、中断管理模块、调度模块和任务管理模块;
所述操作系统服务层用于向用户提供各种系统服务;所述操作系统服务层的源码组件由用户根据需要进行添加,最终构成用户组件库;
所述用户应用层用于部署客户编写的应用软件;所述应用软件调用服务层API,并以任务的形式挂接到操作系统上,由操作系统调度运行。
优选地,所述数据处理单元包括接收数据处理模块、数据存储模块、发送数据处理模块;其中,接收数据处理模块对从收发数据管理单元接收到的传感器数据、控制指令进行解析,将解析结果交由数据存储模块存储、并通知硬件层处理;数据存储模块对全局数据进行管理,记录、更新从接收数据处理模块采集到的数据及从硬件层接收的外部指令;发送数据处理模块提供组帧功能,根据需要将数据存储模块的数据、以及从硬件层接收的指令组成既定结构的帧,组帧结果交由基本实时内核层下发、上传。
优选地,所述收发数据管理单元用于对从通信适配单元收到的数据进一步封装,从通信适配单元获取数据组织成标准帧,并作初步校验,将校验合格的帧放入共享内存,通知数据处理单元的接收数据处理模块处理,周期性检查数据处理单元的发送数据处理模块是否存在发送数据需求,若有,将数据从共享内存中取出,按照需要的发送逻辑发送到通信适配单元。
优选地,所述源码组件包括代码体、数据体和声明体;所述代码体用于源码组件的实现,程序中为FUNx.c文件;所述代码体包括了功能模块的初始化函数和各种使用函数;所述数据体为组件与组件调用者共同使用的变量,程序中为FUNx_DEF.c文件;所述声明体用于源码组件对外部的使用声明,为组件中的数据体、各函数的声明以及自定义的数据结构,程序中为FUNx.H文件。
优选地,所述操作系统服务层包括进程通信、内存管理、文件系统、网络系统和设备驱动功能。
优选地,所述源码组件进行装配的具体步骤如下:
步骤S1:建立一个由开发工具管理的源代码库函数使用登记表;
步骤S2:除C语言的基本数据库外,功能函数一汇编语言或C语言的源代码的形式存储在源代码资源库中,通过数据库方式进行管理;
步骤S3:通过装配方式移植并生产该嵌入式操作系统的源代码。
优选地,所述软件系统初始化流程依次为:初始化系统配置、初始化通信接口邮箱消息队列、初始化协议、初始化时钟中断服务、初始化业务逻辑。
本发明具有以下有益效果:
(1)本发明通过从下而上依次连接的硬件层、基本实时内核层、操作系统服务层和用户应用层,实现修改、维护配置文件,同时增删、修改部分业务逻辑,实现项目的继承性,提高软件开发可靠性,应用软件开发人员可通过更新数据处理单元、业务逻辑单元迅速完成新旧项目升级,提高更新效率,节约成本。
(2)本发明通过源代码组件安装系统软件层次,从硬件层到应用层,分层次组所有织源代码组件,分别按照声明体、代码体和数据体,便于阅读、调试和修改,能够有效降低成本,提高效果。
当然,实施本发明的任一产品并不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明的一种嵌入式软件系统结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
请参阅图1所示,本发明为一种嵌入式软件系统,包括至下而上依次连接的硬件层、基本实时内核层、操作系统服务层和用户应用层,
硬件层,用于描述嵌入式系统的硬件资源情况;硬件层包括通信适配单元、收发数据管理单元和数据处理单元;通信适配单元用于对操作系统服务层中的通信函数接口进一步封装,以获得统一的初始化、调用函数接口;
基本实时内核层包括内核初始化模块、中断管理模块、调度模块和任务管理模块;
操作系统服务层用于向用户提供各种系统服务;操作系统服务层的源码组件由用户根据需要进行添加,最终构成用户组件库;
用户应用层用于部署客户编写的应用软件;应用软件调用服务层API,并以任务的形式挂接到操作系统上,由操作系统调度运行。
其中,数据处理单元包括接收数据处理模块、数据存储模块、发送数据处理模块;其中,接收数据处理模块对从收发数据管理单元接收到的传感器数据、控制指令进行解析,将解析结果交由数据存储模块存储、并通知硬件层处理;数据存储模块对全局数据进行管理,记录、更新从接收数据处理模块采集到的数据及从硬件层接收的外部指令;发送数据处理模块提供组帧功能,根据需要将数据存储模块的数据、以及从硬件层接收的指令组成既定结构的帧,组帧结果交由基本实时内核层下发、上传。
其中,收发数据管理单元用于对从通信适配单元收到的数据进一步封装,从通信适配单元获取数据组织成标准帧,并作初步校验,将校验合格的帧放入共享内存,通知数据处理单元的接收数据处理模块处理,周期性检查数据处理单元的发送数据处理模块是否存在发送数据需求,若有,将数据从共享内存中取出,按照需要的发送逻辑发送到通信适配单元。
其中,源码组件包括代码体、数据体和声明体;代码体用于源码组件的实现,程序中为FUNx.c文件;代码体包括了功能模块的初始化函数和各种使用函数;数据体为组件与组件调用者共同使用的变量,程序中为FUNx_DEF.c文件;声明体用于源码组件对外部的使用声明,为组件中的数据体、各函数的声明以及自定义的数据结构,程序中为FUNx.H文件。
其中,操作系统服务层包括进程通信、内存管理、文件系统、网络系统和设备驱动功能。
其中,源码组件进行装配的具体步骤如下:
步骤S1:建立一个由开发工具管理的源代码库函数使用登记表;
步骤S2:除C语言的基本数据库外,功能函数一汇编语言或C语言的源代码的形式存储在源代码资源库中,通过数据库方式进行管理;
步骤S3:通过装配方式移植并生产该嵌入式操作系统的源代码。
其中,软件系统初始化流程依次为:初始化系统配置、初始化通信接口邮箱消息队列、初始化协议、初始化时钟中断服务、初始化业务逻辑。
值得注意的是,上述系统实施例中,所包括的各个单元只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
另外,本领域普通技术人员可以理解实现上述各实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,相应的程序可以存储于一计算机可读取存储介质中。
以上公开的本发明优选实施例只是用于帮助阐述本发明。优选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本说明书的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本发明的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本发明。本发明仅受权利要求书及其全部范围和等效物的限制。

Claims (7)

1.一种嵌入式软件系统,包括至下而上依次连接的硬件层、基本实时内核层、操作系统服务层和用户应用层,其特征在于:
所述硬件层,用于描述嵌入式系统的硬件资源情况;所述硬件层包括通信适配单元、收发数据管理单元和数据处理单元;所述通信适配单元用于对操作系统服务层中的通信函数接口进一步封装,以获得统一的初始化、调用函数接口;
所述基本实时内核层包括内核初始化模块、中断管理模块、调度模块和任务管理模块;
所述操作系统服务层用于向用户提供各种系统服务;所述操作系统服务层的源码组件由用户根据需要进行添加,最终构成用户组件库;
所述用户应用层用于部署客户编写的应用软件;所述应用软件调用服务层API,并以任务的形式挂接到操作系统上,由操作系统调度运行。
2.根据权利要求1所述的一种嵌入式软件系统,其特征在于,所述数据处理单元包括接收数据处理模块、数据存储模块、发送数据处理模块;其中,接收数据处理模块对从收发数据管理单元接收到的传感器数据、控制指令进行解析,将解析结果交由数据存储模块存储、并通知硬件层处理;数据存储模块对全局数据进行管理,记录、更新从接收数据处理模块采集到的数据及从硬件层接收的外部指令;发送数据处理模块提供组帧功能,根据需要将数据存储模块的数据、以及从硬件层接收的指令组成既定结构的帧,组帧结果交由基本实时内核层下发、上传。
3.根据权利要求2所述的一种嵌入式软件系统,其特征在于,所述收发数据管理单元用于对从通信适配单元收到的数据进一步封装,从通信适配单元获取数据组织成标准帧,并作初步校验,将校验合格的帧放入共享内存,通知数据处理单元的接收数据处理模块处理,周期性检查数据处理单元的发送数据处理模块是否存在发送数据需求,若有,将数据从共享内存中取出,按照需要的发送逻辑发送到通信适配单元。
4.根据权利要求1所述的一种嵌入式软件系统,其特征在于,所述源码组件包括代码体、数据体和声明体;所述代码体用于源码组件的实现,程序中为FUNx.c文件;所述代码体包括了功能模块的初始化函数和各种使用函数;所述数据体为组件与组件调用者共同使用的变量,程序中为FUNx_DEF.c文件;所述声明体用于源码组件对外部的使用声明,为组件中的数据体、各函数的声明以及自定义的数据结构,程序中为FUNx.H文件。
5.根据权利要求1所述的一种嵌入式软件系统,其特征在于,所述操作系统服务层包括进程通信、内存管理、文件系统、网络系统和设备驱动功能。
6.根据权利要求4所述的一种嵌入式软件系统,其特征在于,所述源码组件进行装配的具体步骤如下:
步骤S1:建立一个由开发工具管理的源代码库函数使用登记表;
步骤S2:除C语言的基本数据库外,功能函数一汇编语言或C语言的源代码的形式存储在源代码资源库中,通过数据库方式进行管理;
步骤S3:通过装配方式移植并生产该嵌入式操作系统的源代码。
7.根据权利要求1所述的一种嵌入式软件系统,其特征在于,所述软件系统初始化流程依次为:初始化系统配置、初始化通信接口邮箱消息队列、初始化协议、初始化时钟中断服务、初始化业务逻辑。
CN202010918055.6A 2020-09-03 2020-09-03 一种嵌入式软件系统 Pending CN112114781A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010918055.6A CN112114781A (zh) 2020-09-03 2020-09-03 一种嵌入式软件系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010918055.6A CN112114781A (zh) 2020-09-03 2020-09-03 一种嵌入式软件系统

Publications (1)

Publication Number Publication Date
CN112114781A true CN112114781A (zh) 2020-12-22

Family

ID=73801813

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010918055.6A Pending CN112114781A (zh) 2020-09-03 2020-09-03 一种嵌入式软件系统

Country Status (1)

Country Link
CN (1) CN112114781A (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1262871A2 (en) * 2001-06-01 2002-12-04 Telogy Networks Real-time embedded resource management system
CN102479097A (zh) * 2010-11-26 2012-05-30 中国科学院声学研究所 一种支持多级加载的安全嵌入式操作系统
CN106933580A (zh) * 2017-03-02 2017-07-07 北京天恒长鹰科技股份有限公司 一种嵌入式软件架构系统
CN109656533A (zh) * 2018-12-18 2019-04-19 山东超越数控电子股份有限公司 一种软硬件解耦合的软件化雷达系统
CN110780858A (zh) * 2019-10-28 2020-02-11 天津津航计算技术研究所 一种基于嵌入式操作系统的软件分层架构

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1262871A2 (en) * 2001-06-01 2002-12-04 Telogy Networks Real-time embedded resource management system
CN102479097A (zh) * 2010-11-26 2012-05-30 中国科学院声学研究所 一种支持多级加载的安全嵌入式操作系统
CN106933580A (zh) * 2017-03-02 2017-07-07 北京天恒长鹰科技股份有限公司 一种嵌入式软件架构系统
CN109656533A (zh) * 2018-12-18 2019-04-19 山东超越数控电子股份有限公司 一种软硬件解耦合的软件化雷达系统
CN110780858A (zh) * 2019-10-28 2020-02-11 天津津航计算技术研究所 一种基于嵌入式操作系统的软件分层架构

Similar Documents

Publication Publication Date Title
CN106933580B (zh) 一种嵌入式软件架构系统
CN102214099B (zh) 用于autosar的rte代码自动生成方法
US20090113379A1 (en) Modeling and managing heterogeneous applications
CN101707399B (zh) 电能信息采集方法及系统
CN110851237B (zh) 一种面向国产平台的容器跨异构集群重构方法
CN104517181B (zh) 一种核电站企业内容管理系统及方法
CN113467972A (zh) 通信接口构造方法、装置以及计算机设备、存储介质
CN109389299A (zh) 工作流流程部署方法、装置、计算机设备和存储介质
CN111831461A (zh) 一种处理业务流程的方法和装置
CN116719622A (zh) 业务流程的编排方法及业务流程编排系统
CN112418784A (zh) 一种服务的编排执行系统及方法
CN112035270A (zh) 接口适配方法、系统、装置、计算机可读介质及电子设备
CN112291235B (zh) 适配微服务架构的物联网设备协议编解码的方法及装置
CN112700004B (zh) 基于容器技术的深度学习模型训练方法、设备及存储介质
CN111338717B (zh) 接口调用方法、应用程序升级方法及服务器和客户端
CN112114781A (zh) 一种嵌入式软件系统
CN113743879A (zh) 一种自动化规则处理方法、系统以及相关设备
CN116680209A (zh) 基于wasm的多智能合约实例管理方法
WO2021238914A1 (zh) 模型管理装置、方法、数据管理装置、方法及系统
CN113296898B (zh) 异步任务处理方法、装置、电子设备和存储介质
CN113064987B (zh) 数据处理方法、装置、电子设备、介质和程序产品
CN111125025B (zh) 元数据的存储系统、存储方法、调用方法、调用装置和可读存储介质
CN112764894A (zh) 基于容器技术的生信分析任务调度系统及其搭建方法、调度方案
CN113641679B (zh) 一种数据转移方法、数据转移系统、计算机设备和介质
CN118132295B (zh) 一种参数更新方法、装置及相关设备

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
CB02 Change of applicant information

Address after: No. 9, No. 528000, Ganglian Xinzhuang Industrial Zone, Lishui Town, Nanhai District, Foshan City, Guangdong Province

Applicant after: Guangdong jundezhenghai Technology Co.,Ltd.

Address before: No. 9, No. 528000, Ganglian Xinzhuang Industrial Zone, Lishui Town, Nanhai District, Foshan City, Guangdong Province

Applicant before: FOSHAN JUNDE ZHENGHAI MACHINERY TECHNOLOGY CO.,LTD.

CB02 Change of applicant information
RJ01 Rejection of invention patent application after publication

Application publication date: 20201222

RJ01 Rejection of invention patent application after publication