CN111488142A - 支持多操作系统平台的嵌入式航空通信中间件及其应用 - Google Patents
支持多操作系统平台的嵌入式航空通信中间件及其应用 Download PDFInfo
- Publication number
- CN111488142A CN111488142A CN202010279946.1A CN202010279946A CN111488142A CN 111488142 A CN111488142 A CN 111488142A CN 202010279946 A CN202010279946 A CN 202010279946A CN 111488142 A CN111488142 A CN 111488142A
- Authority
- CN
- China
- Prior art keywords
- middleware
- lock
- container
- resource
- platform
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/31—Programming languages or programming paradigms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/448—Execution paradigms, e.g. implementations of programming paradigms
- G06F9/4482—Procedural
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
- G06F9/5022—Mechanisms to release resources
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了支持多操作系统平台的嵌入式航空通信中间件及其应用,所述航空通信中间件以C语言库文件以及C语言头文件方式提供,头文件中定义了中间件提供的所有跨平台服务接口,所述接口用于实现互斥锁、信号量、读写锁和环境量操作;通过链接中间件库,调用头文件中提供的接口,在中间件支持的平台上开发跨平台的数据收发程序,实现航电设备间的通信。本发明的航空通信中间件配置有能够兼容多平台的一套统一的接口服务,业务软件可以通过这些接口在不同平台上实现数据的收发,从而实现业务软件一次开发,跨平台运行的目的。
Description
技术领域
本发明涉及航电系统技术领域,具体涉及支持多操作系统平台的嵌入式航空通信中间件及其应用。
背景技术
随着电子技术的发展,在民用航空电子(Avionics)领域,机上系统也越来越复杂。民用航空电子不光涉及满足基本功能的通信、导航、识别、飞行管理、大气数据、雷达、电子显示控制等通用设备,还存在进行音频控制、乘客服务、客舱控制、无线上网、多媒体服务等优化体验的系统。
由于设备众多,设备使用的操作系统也各不相同。在设计到设备间通讯的场景时,业务软件需要耗费大量人力来针对底层系统进行适配开发,并且不同设备间的通信代码存在很多相似冗余的业务流程,造成了一定程度的浪费。因此,提供一款航空通讯中间件,屏蔽不同操作系统造成的差异,标准化设备之间的通讯接口是非常必要的。
航空通信中间件需要能够联通各种航电设备,航电设备业务软件可能运行与各种操作系统上,因此航空通讯中间件必须具备跨平台运行能力,能够在各种平台上为业务层提供相同的服务。中间件的程序的构建系统需要能够生成能够在多种操作系统上运行的目标程序。由于航空系统都是嵌入式系统、资源有限,因此无法使用传统的托管系统实现跨平台运行的方式。
发明内容
为了克服传统的托管系统无法实现跨平台运行的局限,本发明提供了一种支持多操作系统平台的嵌入式航空通信中间件。本发明的航空通信中间件能够在linux+arm、window+x86、window+x64、linux+x64、vxworks+PPC平台上实现跨平台通信所需的标准服务接口,从而实现业务软件一次开放,跨平台运行。
本发明通过下述技术方案实现:
支持多操作系统平台的嵌入式航空通信中间件,所述航空通信中间件以C语言库文件以及C语言头文件方式提供,头文件中定义了中间件提供的所有跨平台服务接口,所述接口用于实现互斥锁、信号量、读写锁和环境量操作;通过链接中间件库,调用头文件中提供的接口,在中间件支持的平台上开发跨平台的数据收发程序,实现航电设备间的通信。
优选的,本发明的航空通信中间件能够在linux+arm、window+x86、window+x64、linux+x64、vxworks+PPC平台上实现跨平台通信。
优选的,本发明的航空通信中间件还设置有实现对线程操作的接口。
优选的,本发明的航空通信中间件还设置有实现系统时间操作的接口。
优选的,本发明的航空通信中间件还设置有实现文件操作的接口。
优选的,本发明的航空通信中间件还设置有实现动态内存申请释放操作的接口。
优选的,本发明的航空通信中间件还设置有实现Socket操作的接口。
本发明还提出了一种非托管方式的跨平台运行服务方法,在航电子系统的各个设备均部署上述航空通信中间件,各个设备之间的所有业务流程均通过调用中间件提供的接口来实现。
本发明还提出了一种跨平台构建编译方法,采用上述航空通信中间件来实现,航空通信中间件提供了build.sh和build_mv.bat两个脚本文件用于执行编译操作,能够生成linux+arm、window+x86、window+x64、linux+x64、vxworks+PPC平台的目标程序。
本发明还提出了一种基于航空通信中间件的共享锁资源的管理方法,该方法包括:
步骤S1,所有资源存放在静态容器中,该静态容器拥有一把容器锁,且该静态容器的每一个空间有标志位确认该空间是否空闲;
步骤S2,每个资源有自己的索引,这个索引是唯一的,且这个索引不和已释放资源的索引值重复;
步骤S3,新建共享资源,首先获取容器锁,从容器中获取空闲空间,将其标记为已使用,从系统获取资源,生成资源索引,将资源放入容器空间,释放容器锁;
步骤S4,访问共享资源,首先获取容器锁,从容器中获取访问资源的指针,然后释放容器锁;对资源执行加锁、解锁、释放信号量或获取信号量操作;再次获取容器锁,检查资源的索引值,查看是否发生变化;如果索引值没发生变化,则释放容器锁并退出流程操作;如果索引值发生变化,则释放容器锁,然后对资源执行一次反向操作之后退出流程操作;
步骤S5,释放共享资源,首先获取容器锁,从容器中获取需要释放资源的指针,释放容器锁;获取资源,如果是信号量就尝试获取信号量的接口,反复调用直到获取失败;如果是锁则直接获取锁;再次获取容器锁,将资源暂存在局部变量中,清空容器空间,将空间标记为可用,打开容器锁;销毁资源,如果是锁则先解锁再释放,如果是信号量则直接释放。
本发明具有如下的优点和有益效果:
1、本发明的航空通信中间件配置有能够兼容多平台的一套统一的接口服务,业务软件可以通过这些接口在不同平台上实现数据的收发,从而实现业务软件一次开发,跨平台运行的目的。
2、将本发明的航空通信中间件部署在航电子系统的各个设备中,能够实现一种非托管方式的跨平台运行服务。
3、本发明的航空通信中间件实现了一种跨平台构建编译方法,且本发明的航空通信中间件还提供了一种共享锁资源的管理方法,用于解决在多核系统中,某些资源可能被运行于不同核上的不同线程同时访问,导致同步异常的问题。本发明的航空通信中间件适用范围广泛,可扩展性强。
附图说明
此处所说明的附图用来提供对本发明实施例的进一步理解,构成本申请的一部分,并不构成对本发明实施例的限定。在附图中:
图1为本发明的航空通信中间件跨平台使用场景示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下面结合实施例和附图,对本发明作进一步的详细说明,本发明的示意性实施方式及其说明仅用于解释本发明,并不作为对本发明的限定。
实施例1
本实施例提出了一种支持多操作系统平台的嵌入式航空通信中间件,跨平台航空通信中间件以C语言库文件与C语言头文件方式提供,头文件中定义了中间件提供的所有跨平台服务接口。使用者需要链接中间件库,可调用头文件中提供的接口,在中间件支持的平台上开发跨平台的数据收发程序,实现航电设备间的通信。
本实施例根据航空设备间通信中涉及的业务逻辑场景,在linux+arm、window+x86、window+x64、linux+x64、vxworks+PPC平台上实现了一套统一的接口服务,业务软件可以通过这些接口在上述平台上实现数据的收发,从而实现业务软件一次开发,跨平台运行的目的。航空通信中间件跨平台使用场景如图1所示。
航电子系统中的各个设备可能运行linux、windows、vxworks等操作系统,核心处理器可能是ARM、PPC、X86-32(X86)、X86-64(X64)等架构。各种设备之间的业务层软件可以通过航空通信中间件实现数据的收发,而不用关心自身具体运行在何种平台上。
航空通信中间件实现互斥锁、信号量、读写锁、环境量操作的接口原型如下:
如上所示,其中sema_init和sema_close用于创建删除信号量;sema_wait和sema_post用于等待和释放信号量;mute_init和mute_close用于创建和释放互斥锁;mute_lock和mute_unlock用互斥锁的加锁和解锁操作;mute_try_lock用于互斥锁的尝试加锁操作;cv_init用于创建环境量;cv_wait用于无限时间等待环境量;cv_wake用于唤醒等待中的环境量;cv_unit用于指定超时时间的环境量等待操作;rw_lock_init和rw_lock_free用于申请和释放读写锁;rw_lock_rlock和rw_lock_runlock用于读锁的加锁和解锁操作;rw_lock_wlock和rw_lock_wunlock用于写锁的加锁和解锁操作;rw_lock_try_wlock用于写锁的尝试加锁操作。
在linux+ARM和linux+x64平台上,使用sem_wait等posix接口实现中间件信号量服务接口;使用pthread_mutex_lock等posix接口实现中间件互斥锁接口;pthread_cond_timedwait、等posix接口实现中间件环境量接口;pthread_rwlock_wrlock等posix接口实现中间件读写锁接口。
在windows+x86和windows+x64平台上,使用WaitForSingleObject等WIN32接口实现中间件信号量服务接口;使用ReleaseMutex等WIN32接口接口实现中间件互斥锁接口;WakeAllConditionVariable等WIN32接口实现中间件环境量接口;AcquireSRWLockShared等WIN32接口实现中间件读写锁接口。
在Vxwork+ppc平台上,信号量、互斥锁、环境量、读写锁等服务接口均使用semTake、semMCreate等VxWorks系统服务实现。
此外,航空通信中间件还实现和提供了如下一些跨平台服务。
航空通信中间件实现对线程创建、定时回调、获取线程ID、等待子线程结束、当前线程睡眠等操作的接口原型:
航空通信中间件实现系统获取时间戳、获取处理器cycyle值、获取当前时间、获取当前处理器核个数操作的接口原型:
航空通信中间件实现文件打开、关闭、读、写、搜索、获取缓冲区数据长度、设为非阻塞操作的接口原型:
航空通信中间件实现动态内存申请释放操作的接口原型:
航空通信中间件实现Socket创建、发送、接收、关闭操作的接口原型:
实施例2
本实施例2提供了一种基于上述实施例1提出的航空通信中间件实现的非托管方式的跨平台运行服务方法。
常见的.NET和JAVA等主流跨平台应用程序,都是运行于目标平台上的虚拟机模拟的虚拟运行环境中,虚拟环境能够在各种平台上为应用程序提供完全一致的接口服务和运行环境,从而实现同样的程序跨平台运行,这种运行方式称为托管方式。
航空电子设备主要是嵌入式系统,资源有限,无法运行虚拟机,只能采用非托管方式提供跨平台服务。本实施例分析了航空电子系统中应用程序常见的通信业务流程,提供了一种接口服务解决方案,航空电子设备间通讯的所有业务流程都可以通过调用中间件提供的接口来实现。
实施例3
本实施例3提供了一种基于上述实施例1提出的航空通信中间件实现的跨平台构建编译方法。
航空通信中间件实现了一种跨平台构建编译工程,能够使用一份make文件生成linux+arm、window+x86、window+x64、linux+x64、vxworks+PPC平台的目标程序。
航空中间件提供了build.sh和build_mw.bat两个脚本文件用于执行编译操作,在64位处理器CentOS7环境下,安装gnu工具链后执行build.sh build脚本即可生成linux+64平台的中间件目标文件,执行build.sh build arm即可生成linux+arm平台的中间件目标文件。
在windows环境下,安装风河工具链和微软Visual Studio后,执行build_mw.batbuild可生成Vxworks+ppc平台的中间件目标文件;执行build_mw.bat build x86可生成windows+x86平台目标文件;执行build_mw.bat build x64可生成windows+x64平台目标文件。
生成linux+x64平台目标文件,编译工程使用了gnu编译工具链,使用其中的ar、ld、as等工具,使用了-g-W-Wall-Wno-main-Wundef-Wstrict-prototypes等编译选项;生成linux+ARM平台目标文件,使用gnu ARM工具链,使用了arm-linux-gnueabi-gcc等编译工具,在linux+x64编译选项基础上还增加了-mfloat-abi=hard等编译选项;生成window+x86和window+x64平台目标文件,使用了微软提供的nmake、cl等工具,分别使用x86和x64版本,使用了/nologo/Zi/EHsc/Wall等编译选项;生成Vxworks+PPC平台目标文件,使用了风河公司提供的gnu工具链,包括ar、ld、as等工具,使用了-W-Wall-mfloat-gprs=double-mspe=yes-mabi=spe-ansi-fno-builtin-Wall等编译选项。
实施例4
航空中间件申请的系统资源由中间件统一管理,交给上层业务统一使用。在多核系统中,某些资源可能被运行于不同核上的不同线程同时访问,导致同步异常。所以所有共享资源都需要加锁保护,但是对于锁和信号量类型的共享资源,如果直接对其加锁,在极端场景下会导致死锁。
对此,本实施例4提供了一种基于上述实施例1提出的航空通信中间件实现的共享锁资源的管理方法,具体包括:
1)所有资源存放在静态容器中,容器拥有一把容器锁,容器的每一个空间有标志位确认该空间是空闲还是已经被使用。
2)每个资源有自己的索引,这个索引是唯一的,也不和已释放资源的索引值重复。
3)新建共享资源,先获取容器锁,从容器中获取空闲空间,将其标记为已使用,从系统获取资源,生成资源索引,将资源放入容器空间,释放容器锁。
4)访问共享资源,先获取容器锁,从容器中获取访问资源的指针,然后释放容器锁;执行加锁、解锁、释放信号量、获取信号量等操作;再次获取容器锁,检查资源的索引值,查看是否发生变化;如果索引值没发生变化,释放容器锁,退出操作流程;如果索引值发生变化,则释放容器锁,然后对资源做一次反向操作,比如刚才是加锁,则执行一次解锁,刚才是释放信号量则执行一次获取信号量操作,然后退出流程。
5)释放共享资源,首先获取容器锁,从容器中获取需要释放资源的指针,释放容器锁;获取资源,如果是信号量就用尝试获取信号量的接口,反复调用直到获取失败,如果是锁则直接获取锁;再次获取容器锁,将资源暂存在局部变量中,清空容器空间,将空间标记为可用,打开容器锁;销毁资源,如果是锁则先解锁再释放,如果是信号量则直接释放。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.支持多操作系统平台的嵌入式航空通信中间件,其特征在于,所述航空通信中间件以C语言库文件以及C语言头文件方式提供,头文件中定义了中间件提供的所有跨平台服务接口,所述接口用于实现互斥锁、信号量、读写锁和环境量操作;通过链接中间件库,调用头文件中提供的接口,在中间件支持的平台上开发跨平台的数据收发程序,实现航电设备间的通信。
2.根据权利要求1所述的支持多操作系统平台的嵌入式航空通信中间件,其特征在于,所述航空通信中间件能够在linux+arm、window+x86、window+x64、linux+x64、vxworks+PPC平台上实现跨平台通信。
3.根据权利要求1或2所述的支持多操作系统平台的嵌入式航空通信中间件,其特征在于,所述航空通信中间件还设置有实现对线程操作的接口。
4.根据权利要求1或2所述的支持多操作系统平台的嵌入式航空通信中间件,其特征在于,所述航空通信中间件还设置有实现系统时间操作的接口。
5.根据权利要求1或2所述的支持多操作系统平台的嵌入式航空通信中间件,其特征在于,所述航空通信中间件还设置有实现文件操作的接口。
6.根据权利要求1或2所述的支持多操作系统平台的嵌入式航空通信中间件,其特征在于,所述航空通信中间件还设置有实现动态内存申请释放操作的接口。
7.根据权利要求1或2所述的支持多操作系统平台的嵌入式航空通信中间件,其特征在于,所述航空通信中间件还设置有实现Socket操作的接口。
8.一种非托管方式的跨平台运行服务方法,其特征在于,在航电子系统的各个设备均部署上述权利要求1-7任一项所述的航空通信中间件,各个设备之间的所有业务流程均通过调用中间件提供的接口来实现。
9.一种跨平台构建编译方法,其特征在于,采用上述权利要求1-7任一项所述的航空通信中间件来实现,航空通信中间件提供了build.sh和build_mv.bat两个脚本文件用于执行编译操作,能够生成linux+arm、window+x86、window+x64、linux+x64、vxworks+PPC平台的目标程序。
10.权利要求1-7任一项所述的航空通信中间件的共享锁资源的管理方法,其特征在于,该方法包括:
步骤S1,所有资源存放在静态容器中,该静态容器拥有一把容器锁,且该静态容器的每一个空间有标志位确认该空间是否空闲;
步骤S2,每个资源有自己的索引,这个索引是唯一的,且这个索引不和已释放资源的索引值重复;
步骤S3,新建共享资源,首先获取容器锁,从容器中获取空闲空间,将其标记为已使用,从系统获取资源,生成资源索引,将资源放入容器空间,释放容器锁;
步骤S4,访问共享资源,首先获取容器锁,从容器中获取访问资源的指针,然后释放容器锁;对资源执行加锁、解锁、释放信号量或获取信号量操作;再次获取容器锁,检查资源的索引值,查看是否发生变化;如果索引值没发生变化,则释放容器锁并退出流程操作;如果索引值发生变化,则释放容器锁,然后对资源执行一次反向操作之后退出流程操作;
步骤S5,释放共享资源,首先获取容器锁,从容器中获取需要释放资源的指针,释放容器锁;获取资源,如果是信号量就尝试获取信号量的接口,反复调用直到获取失败;如果是锁则直接获取锁;再次获取容器锁,将资源暂存在局部变量中,清空容器空间,将空间标记为可用,打开容器锁;销毁资源,如果是锁则先解锁再释放,如果是信号量则直接释放。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010279946.1A CN111488142B (zh) | 2020-04-10 | 2020-04-10 | 支持多操作系统平台的嵌入式航空通信中间件及其应用 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010279946.1A CN111488142B (zh) | 2020-04-10 | 2020-04-10 | 支持多操作系统平台的嵌入式航空通信中间件及其应用 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111488142A true CN111488142A (zh) | 2020-08-04 |
CN111488142B CN111488142B (zh) | 2023-04-28 |
Family
ID=71812709
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010279946.1A Active CN111488142B (zh) | 2020-04-10 | 2020-04-10 | 支持多操作系统平台的嵌入式航空通信中间件及其应用 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111488142B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114995811A (zh) * | 2022-06-10 | 2022-09-02 | 中国航空无线电电子研究所 | 支持多种机载嵌入式操作系统的容器接口架构系统 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100291920A1 (en) * | 2007-11-21 | 2010-11-18 | Lerzer Juergen | Technique for platform-to-platform communication |
CN103946827A (zh) * | 2011-11-22 | 2014-07-23 | 华为技术有限公司 | 用于实施内核和用户空间之间共享的锁的系统和方法 |
CN104375890A (zh) * | 2008-12-31 | 2015-02-25 | 英特尔公司 | 用于执行安全嵌入式容器的处理器扩展 |
CN104866373A (zh) * | 2015-05-20 | 2015-08-26 | 南京国电南自电网自动化有限公司 | 基于跨平台技术的实时操作系统仿真方法 |
CN108733495A (zh) * | 2017-04-13 | 2018-11-02 | 东方明珠新媒体股份有限公司 | 用于实现跨平台通信的方法和设备 |
CN109358974A (zh) * | 2018-10-17 | 2019-02-19 | 武汉斗鱼网络科技有限公司 | 一种进程间通信的方法及相关装置 |
CN109918207A (zh) * | 2019-02-18 | 2019-06-21 | 天津麒麟信息技术有限公司 | 一种非侵入的c程序死锁定位方法 |
CN109918061A (zh) * | 2019-02-13 | 2019-06-21 | 福建星网智慧软件有限公司 | 基于安卓系统的跨平台接口中间件实现方法和装置 |
CN110290189A (zh) * | 2019-06-17 | 2019-09-27 | 深圳前海微众银行股份有限公司 | 一种容器集群管理方法、装置及系统 |
-
2020
- 2020-04-10 CN CN202010279946.1A patent/CN111488142B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100291920A1 (en) * | 2007-11-21 | 2010-11-18 | Lerzer Juergen | Technique for platform-to-platform communication |
CN104375890A (zh) * | 2008-12-31 | 2015-02-25 | 英特尔公司 | 用于执行安全嵌入式容器的处理器扩展 |
CN103946827A (zh) * | 2011-11-22 | 2014-07-23 | 华为技术有限公司 | 用于实施内核和用户空间之间共享的锁的系统和方法 |
CN104866373A (zh) * | 2015-05-20 | 2015-08-26 | 南京国电南自电网自动化有限公司 | 基于跨平台技术的实时操作系统仿真方法 |
CN108733495A (zh) * | 2017-04-13 | 2018-11-02 | 东方明珠新媒体股份有限公司 | 用于实现跨平台通信的方法和设备 |
CN109358974A (zh) * | 2018-10-17 | 2019-02-19 | 武汉斗鱼网络科技有限公司 | 一种进程间通信的方法及相关装置 |
CN109918061A (zh) * | 2019-02-13 | 2019-06-21 | 福建星网智慧软件有限公司 | 基于安卓系统的跨平台接口中间件实现方法和装置 |
CN109918207A (zh) * | 2019-02-18 | 2019-06-21 | 天津麒麟信息技术有限公司 | 一种非侵入的c程序死锁定位方法 |
CN110290189A (zh) * | 2019-06-17 | 2019-09-27 | 深圳前海微众银行股份有限公司 | 一种容器集群管理方法、装置及系统 |
Non-Patent Citations (3)
Title |
---|
LI TIANLIN 等: "HMalloc: A Hybrid, Scalable, and Lock-free Memory Allocator for Multi-threaded Applications" * |
刘巍 等: ""国产化实时通信中间件DDS的跨平台实现和优化技术"", 《现代雷达》 * |
邹云峰等: "支持跨系统的软件运行平台设计", 《微型电脑应用》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114995811A (zh) * | 2022-06-10 | 2022-09-02 | 中国航空无线电电子研究所 | 支持多种机载嵌入式操作系统的容器接口架构系统 |
CN114995811B (zh) * | 2022-06-10 | 2024-05-03 | 中国航空无线电电子研究所 | 支持多种机载嵌入式操作系统的容器接口架构系统 |
Also Published As
Publication number | Publication date |
---|---|
CN111488142B (zh) | 2023-04-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7818296B2 (en) | Computer architecture and method of operation for multi-computer distributed processing with synchronization | |
US7904886B2 (en) | Method for executing an application in a virtual container forming a virtualized environment session | |
US6519623B1 (en) | Generic semaphore for concurrent access by multiple operating systems | |
US5864864A (en) | Method and apparatus for providing transparent persistent data support to foreign data types | |
CA2539433C (en) | Systems and methods for dynamically linking application software into a running operating system kernel | |
US7917909B2 (en) | Detecting deadlocks in interop-debugging | |
Edwin | Software frameworks, architectural and design patterns | |
CN110399227B (zh) | 一种数据访问方法、装置和存储介质 | |
US10606586B2 (en) | Application architecture generation | |
US10073646B2 (en) | Multi-tier data synchronizer based on concurrent linked list | |
US8312470B2 (en) | Recursive locking of a thread-shared resource | |
WO2007009032A2 (en) | Blocking local sense synchronization barrier | |
CN111488142B (zh) | 支持多操作系统平台的嵌入式航空通信中间件及其应用 | |
US8468169B2 (en) | Hierarchical software locking | |
CN110955415B (zh) | 一种投影多平台服务适配的方法 | |
EP0889396B1 (en) | Thread synchronisation via selective object locking | |
US10521327B2 (en) | Non-coupled software lockstep | |
WO2001001256A1 (en) | Method and apparatus for static analysis of software code | |
CN111367682B (zh) | 一种资源操作锁的控制方法、系统、装置及可读存储介质 | |
US8239837B2 (en) | Remotely handling exceptions through STAF | |
Wedpathak | An Approach of Software Engineering through Middleware | |
Dantam et al. | Unix philosophy and the real world: Control software for humanoid robots | |
Guijarro et al. | Bliss-experiments control for esrf ebs beamlines | |
CN109976675B (zh) | 一种数据更新、读取方法、装置、设备及存储介质 | |
Wang et al. | Automatic RT-Java code generation from AADL models for ARINC653-based avionics software |
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 |