CN110995668A - 应用于arinc653操作系统分区间的fc网络通信装置及方法 - Google Patents
应用于arinc653操作系统分区间的fc网络通信装置及方法 Download PDFInfo
- Publication number
- CN110995668A CN110995668A CN201911134435.4A CN201911134435A CN110995668A CN 110995668 A CN110995668 A CN 110995668A CN 201911134435 A CN201911134435 A CN 201911134435A CN 110995668 A CN110995668 A CN 110995668A
- Authority
- CN
- China
- Prior art keywords
- partition
- pos
- end system
- operating system
- network
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/26—Special purpose or proprietary protocols or architectures
-
- 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/54—Interprogram communication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
- H04L49/9015—Buffering arrangements for supporting a linked list
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供一种应用于ARINC653操作系统分区间的FC网络通信装置及方法,所述FC网络通信装置包括,至少两个处理机模块,每个处理机模块分别运行ARINC653操作系统,所述ARINC653操作系统分为核心操作系统COS及其上运行的若干个分区POS;一个FC端系统,FC端系统的核心设备驱动位于ARINC653的核心操作系统中,每个分区POS上的应用程序均可通过FC端系统向FC网络发送数据或者从FC网络接收数据。本发明为处理机模块的ARINC653分区间通信提供基于FC网络的通道传输机制,实现不同模块分区上的应用数据基于网络通信的数据交换。
Description
技术领域
本发明属于航空电子系统的网络通信领域,特别涉及应用于ARINC653操作系统分区之间的FC网络通信。
背景技术
满足ARINC653标准的分区操作系统被广泛应用于综合化航空电子IMA系统,采用的分区技术使一个处理机模块可以支持一个或多个航空电子应用软件,并保证这些应用软件之间时间和空间隔离,各应用软件按照时间框架独立运行。
ARINC653标准定义的分区间通信是分区之间实现信息交换的主要途径,用于实现运行在同一个或者不同处理机模块上的两个或者多个分区之间的数据交换。分区间通信采用端口和通道机制来实现,通道标识一个发送端口和一个或多个分区接收端口的逻辑连接,消息从源端口通过通道到达目的端口,分区里的应用软件通过端口来发送、接收消息。不同模块上的分区间通信使用虚端口收发消息,虚端口需要与物理设备驱动程序绑定。ARINC653标准的分区间通信方式一方面数据经过操作系统内部端口转发,系统开销和网络通信延迟均比较大。另一方面,配置复杂,不同处理机模块分区间通信时要求应用层与网络层资源映射,导致应用层与网络层紧耦合,难以实现分层设计。
ARINC653操作系统还提供了系统调用的方式,允许各分区使用核心操作系统提供的服务,不同模块分区通过系统调用操作各自模块核心设备驱动实现彼此通信。系统调用方式使用设备驱动通常有两种模式。第一种配置一个专门的IO分区,由IO分区负责网络通信,非I/O分区通过与I/O分区进行分区间通信来间接使用I/O设备,这种方式对于非IO分区而言系统开销较大,很多情况下,各分区均需要IO操作,存在资源互斥访问的问题,系统效率较低。第二种方式允许同一个模块上的多个应用分区均可访问IO,这对于IO设备实现要求较高,必须保证各个分区之间的通信不能相互影响,对各分区的网络通信数据分别管理。本发明公开了满足应用模式的一种可行方法。
发明内容
本发明的目的:本发明提供一种应用于ARINC653操作系统分区间的FC网络通信装置及方法,目的是实现不同模块分区上的应用程序基于网络通信的数据交换。
本发明采用以下技术方案实现:
一种应用于ARINC653操作系统分区间的FC网络通信装置,所述装置包括:
至少两个处理机模块,每个处理机模块分别运行ARINC653操作系统,所述ARINC653操作系统分为核心操作系统COS及其上运行的若干个分区POS;
一个FC端系统,FC端系统的核心设备驱动位于ARINC653的核心操作系统中,每个分区POS上的应用程序均可通过FC端系统向FC网络发送数据或者从FC网络接收数据。
所述处理机模块中,FC端系统支持物理地址与逻辑端口的一对多映射,每个逻辑端口具备单独管理的缓冲队列,该缓冲队列用于存储该POS分区待发送或接收的FC帧;所述的逻辑端口与POS分区关联,由POS分区上的应用程序在分区启动后注册到FC端系统,一个POS分区可注册多个逻辑端口。
一种应用于ARINC653操作系统分区间的FC网络通信方法,包括发送和接收两个过程:
所述发送过程为,发送端分区应用程序指定接收端分区应用程序所在处理机模块的FC端系统物理地址和逻辑端口号,调用FC端系统的消息发送服务,FC端系统的驱动软件将POS分区应用数据打包后交由所述的FC网络端系统底层硬件发送至FC网络;
所述接收过程为,在POS分区应用完成所述的逻辑端口注册后,FC网络端系统负责从FC网络接收数据包,数据包被硬件解析后加入到逻辑端口对应的缓冲队列中,分区应用程序读取所注册逻辑端口对应的缓冲队列中的数据,然后由核心驱动软件释放缓冲单元。
所述接收过程分为如下步骤实施:
步骤1,POS分区应用程序接收数据之前确保已向核心设备驱动注册逻辑端口;
步骤2,FC端系统硬件逻辑依据注册逻辑端口建立缓冲队列,初始队列为空;
步骤3,FC端系统从硬件缓冲区指针池中获取空闲缓冲单元,如果硬件缓冲区指针池为空,代表硬件缓冲区满,则硬件丢弃该FC帧,否则转到步骤4;
步骤4,FC端系统硬件将FC数据帧搬移至步骤3中所获取的空闲缓冲单元中;
步骤5,将步骤4得到缓冲单元索引加入到逻辑端口对应链表的队尾;
步骤6,分区应用通过系统调用读取消息,若其所注册的逻辑端口对应链表不为空,则从链表首指针获取最早进入队列的消息所在缓冲单元索引,并将该索引对应的缓冲单元中存放的数据拷贝至分区应用指定的空间;若逻辑端口对应链表为空,则返回错误;
步骤7,数据接收完成后,核心驱动软件释放步骤6中的缓冲单元,其过程是将逻辑端口对应链表首指针后移,指向其下一个缓冲单元索引,并将该首指针写回硬件缓冲区指针池。
本发明的技术效果:本发明无需ARINC653操作系统的复杂配置,通过系统调用完成不同模块分区间的网络通信,同时也可实现一般操作系统与ARINC653操作系统分区通信的兼容使用;同一处理机模块的多个分区可并行访问FC网络通信服务,由FC端系统保证不同分区数据的隔离,此过程对分区应用透明,每个分区逻辑上有单独可用的FC端系统提供通信服务;所使用的FC端系统无需配置,网络对上层分区应用提供服务,应用层与网络层松耦合。
附图说明
附图1为本发明所适用的系统框图。
附图2逻辑端口队列管理示意图。
具体实施方式
为了更具体的描述本发明的特征,结合附图及以下具体示例予以详细说明。
图1描述了处理机模块分区通过FC网络通信的一般系统结构框图。处理机模块运行ARINC653操作系统,分为核心操作系统COS及其上运行的若干个分区POS。FC端系统的核心设备驱动位于ARINC653的核心操作系统中,每个POS上的应用程序均可通过FC端系统向网络发送数据或者从网络接收数据。
图2是各由图1中所示的FC端系统中用于向分区发送或从分区接收数据时逻辑端口队列管理示意图。在图2的示例中,处理机模块配置有3个分区POS。其中分区POS0注册逻辑端口0,分区POS1注册逻辑端口1和2,分区POS2注册逻辑端口3。
ARINC653分区通过FC网络发送消息的流程分为如下步骤实施:
步骤1,分区启动后向核心设备驱动注册逻辑端口信息,如图2中所显示;
步骤2,分区应用指定目的分区所对应的物理地址和逻辑端口以及待发送数据首地址;
步骤3,分区应用通过ARINC653系统调用核心设备驱动的发送接口;
步骤4,核心设备驱动程序检查设备是否具备可发送状态,若设备状态正确,则转步骤5,否则返回系统调用错误;
步骤5,核心设备驱动从硬件逻辑中获取当前可用的发送缓冲区单元,如果具备可用发送缓冲单元,则转步骤6,否则返回缓冲区满错误;
步骤6,驱动软件打包FC数据包,在FC帧中填入目的物理地址,源物理地址,目的逻辑端口号,源逻辑端口,帧负载中拷贝用户数据。由于FC协议或者FC-ASM协议中并没有相应字段标识逻辑端口,在本发明中采用FC-ASM协议负责承载数据,用其保留字段标识目的逻辑端口和源逻辑端口,对于FC协议簇中其它协议可采用相似方法;
步骤7,启动硬件发送,由硬件逻辑将FC数据帧发送至网络,系统调用返回成功。
ARINC653分区接收消息的详细过程分为如下步骤实施:
步骤1,POS分区应用程序接收数据之前确保已向核心设备驱动注册逻辑端口;
步骤2,FC端系统硬件逻辑依据注册逻辑端口建立缓冲队列,初始队列为空;
步骤3,FC端系统从硬件缓冲区指针池中获取空闲缓冲单元,如果硬件缓冲区指针池为空,代表硬件缓冲区满,则硬件丢弃该FC帧,否则转到步骤4;
步骤4,FC端系统硬件将FC数据帧搬移至步骤3中所获取的空闲缓冲单元中;
步骤5,将步骤4得到缓冲单元索引加入到逻辑端口对应链表的队尾;
步骤6,分区应用通过系统调用读取消息,若其所注册的逻辑端口对应链表不为空,则从链表首指针获取最早进入队列的消息所在缓冲单元索引,并将该索引对应的缓冲单元中存放的数据拷贝至分区应用指定的空间;若逻辑端口对应链表为空,则返回错误;
数据接收完成后,核心驱动软件释放步骤6中的缓冲单元,其过程是将逻辑端口对应链表首指针后移,指向其下一个缓冲单元索引,并将该首指针写回硬件缓冲区指针池。
Claims (4)
1.一种应用于ARINC653操作系统分区间的FC网络通信装置,其特征在于所述装置包括:
至少两个处理机模块,每个处理机模块分别运行ARINC653操作系统,所述ARINC653操作系统分为核心操作系统COS及其上运行的若干个分区POS;
一个FC端系统,FC端系统的核心设备驱动位于ARINC653的核心操作系统中,每个分区POS上的应用程序均可通过FC端系统向FC网络发送数据或者从FC网络接收数据。
2.如权利要求1所述一种应用于ARINC653操作系统分区间的FC网络通信装置,其特征在于,所述处理机模块中,FC端系统支持物理地址与逻辑端口的一对多映射,每个逻辑端口具备单独管理的缓冲队列,该缓冲队列用于存储该POS分区待发送或接收的FC帧;所述的逻辑端口与POS分区关联,由POS分区上的应用程序在分区启动后注册到FC端系统,一个POS分区可注册多个逻辑端口。
3.一种应用于ARINC653操作系统分区间的FC网络通信方法,采用了如权利要求1或2所述的FC网络通信装置,其特征在于包括发送和接收两个过程:
所述发送过程为,发送端分区应用程序指定接收端分区应用程序所在处理机模块的FC端系统物理地址和逻辑端口号,调用FC端系统的消息发送服务,FC端系统的驱动软件将POS分区应用数据打包后交由所述的FC网络端系统底层硬件发送至FC网络;
所述接收过程为,在POS分区应用完成所述的逻辑端口注册后,FC网络端系统负责从FC网络接收数据包,数据包被硬件解析后加入到逻辑端口对应的缓冲队列中,分区应用程序读取所注册逻辑端口对应的缓冲队列中的数据,然后由核心驱动软件释放缓冲单元。
4.如权利要求3所述的一种应用于ARINC653操作系统分区间的FC网络通信方法,其特征在于所述接收过程分为如下步骤实施:
步骤1,POS分区应用程序接收数据之前确保已向核心设备驱动注册逻辑端口;
步骤2,FC端系统硬件逻辑依据注册逻辑端口建立缓冲队列,初始队列为空;
步骤3,FC端系统从硬件缓冲区指针池中获取空闲缓冲单元,如果硬件缓冲区指针池为空,代表硬件缓冲区满,则硬件丢弃该FC帧,否则转到步骤4;
步骤4,FC端系统硬件将FC数据帧搬移至步骤3中所获取的空闲缓冲单元中;
步骤5,将步骤4得到缓冲单元索引加入到逻辑端口对应链表的队尾;
步骤6,分区应用通过系统调用读取消息,若其所注册的逻辑端口对应链表不为空,则从链表首指针获取最早进入队列的消息所在缓冲单元索引,并将该索引对应的缓冲单元中存放的数据拷贝至分区应用指定的空间;若逻辑端口对应链表为空,则返回错误;
步骤7,数据接收完成后,核心驱动软件释放步骤6中的缓冲单元,其过程是将逻辑端口对应链表首指针后移,指向其下一个缓冲单元索引,并将该首指针写回硬件缓冲区指针池。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911134435.4A CN110995668B (zh) | 2019-11-19 | 2019-11-19 | 应用于arinc653操作系统分区间的fc网络通信装置及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911134435.4A CN110995668B (zh) | 2019-11-19 | 2019-11-19 | 应用于arinc653操作系统分区间的fc网络通信装置及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110995668A true CN110995668A (zh) | 2020-04-10 |
CN110995668B CN110995668B (zh) | 2022-03-08 |
Family
ID=70084957
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911134435.4A Active CN110995668B (zh) | 2019-11-19 | 2019-11-19 | 应用于arinc653操作系统分区间的fc网络通信装置及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110995668B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112671559A (zh) * | 2020-12-07 | 2021-04-16 | 沈阳飞机设计研究所扬州协同创新研究院有限公司 | 一种基于arinc653标准操作系统的分区间数据通信方法 |
CN115118678A (zh) * | 2022-06-07 | 2022-09-27 | 上海赛治信息技术有限公司 | 一种fc设备端的多分区网络通信系统及其通信方法 |
CN115277842A (zh) * | 2022-07-18 | 2022-11-01 | 上海赛景信息技术有限公司 | 一种多分区网管下沉通信方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040078799A1 (en) * | 2002-10-17 | 2004-04-22 | Maarten Koning | Interpartition communication system and method |
CN101156408A (zh) * | 2005-04-01 | 2008-04-02 | 国际商业机器公司 | 用于操作系统分区的网络通信 |
CN105117279A (zh) * | 2015-07-29 | 2015-12-02 | 西北工业大学 | Windows下的机载操作系统分区通信方法 |
CN105335168A (zh) * | 2014-05-27 | 2016-02-17 | 阿里巴巴集团控股有限公司 | 实现操作系统远程配置的系统、方法及装置 |
CN109542831A (zh) * | 2018-10-28 | 2019-03-29 | 西南电子技术研究所(中国电子科技集团公司第十研究所) | 机载平台多核虚拟分区处理系统 |
CN109547875A (zh) * | 2018-12-21 | 2019-03-29 | 西安云维智联科技有限公司 | 一种fc交换网络任意端口接入设计方法 |
-
2019
- 2019-11-19 CN CN201911134435.4A patent/CN110995668B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040078799A1 (en) * | 2002-10-17 | 2004-04-22 | Maarten Koning | Interpartition communication system and method |
CN101156408A (zh) * | 2005-04-01 | 2008-04-02 | 国际商业机器公司 | 用于操作系统分区的网络通信 |
CN105335168A (zh) * | 2014-05-27 | 2016-02-17 | 阿里巴巴集团控股有限公司 | 实现操作系统远程配置的系统、方法及装置 |
CN105117279A (zh) * | 2015-07-29 | 2015-12-02 | 西北工业大学 | Windows下的机载操作系统分区通信方法 |
CN109542831A (zh) * | 2018-10-28 | 2019-03-29 | 西南电子技术研究所(中国电子科技集团公司第十研究所) | 机载平台多核虚拟分区处理系统 |
CN109547875A (zh) * | 2018-12-21 | 2019-03-29 | 西安云维智联科技有限公司 | 一种fc交换网络任意端口接入设计方法 |
Non-Patent Citations (1)
Title |
---|
崔明明: "《 综合模块化航空电子系统远程加载技术研究及性能分析》", 《航空电子技术》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112671559A (zh) * | 2020-12-07 | 2021-04-16 | 沈阳飞机设计研究所扬州协同创新研究院有限公司 | 一种基于arinc653标准操作系统的分区间数据通信方法 |
CN112671559B (zh) * | 2020-12-07 | 2022-12-02 | 沈阳飞机设计研究所扬州协同创新研究院有限公司 | 一种基于arinc653标准操作系统的分区间数据通信方法 |
CN115118678A (zh) * | 2022-06-07 | 2022-09-27 | 上海赛治信息技术有限公司 | 一种fc设备端的多分区网络通信系统及其通信方法 |
CN115118678B (zh) * | 2022-06-07 | 2024-03-12 | 南京全信传输科技股份有限公司 | 一种fc设备端的多分区网络通信系统及其通信方法 |
CN115277842A (zh) * | 2022-07-18 | 2022-11-01 | 上海赛景信息技术有限公司 | 一种多分区网管下沉通信方法 |
CN115277842B (zh) * | 2022-07-18 | 2024-05-03 | 上海赛景信息技术有限公司 | 一种多分区网管下沉通信方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110995668B (zh) | 2022-03-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11470000B2 (en) | Medical device communication method | |
CN110995668B (zh) | 应用于arinc653操作系统分区间的fc网络通信装置及方法 | |
CN109976925B (zh) | 一种基于混合多系统核间实时通信的方法和系统 | |
US6111894A (en) | Hardware interface between a switch adapter and a communications subsystem in a data processing system | |
CN100579108C (zh) | 一种远程密钥验证的方法和主机结构适配器 | |
WO2013136522A1 (ja) | 計算機システム及び計算機間のデータ通信方法 | |
US20060133275A1 (en) | Architecture and run-time environment for network filter drivers | |
US9069592B2 (en) | Generic transport layer mechanism for firmware communication | |
CN107133109B (zh) | 一种模块间通信的方法、装置及计算设备 | |
CN101442493A (zh) | Ip报文分发方法、集群系统和负载均衡器 | |
US9479438B2 (en) | Link aggregation based on virtual interfaces of VLANs | |
CN108200018A (zh) | 云计算中的流量转发方法及设备、计算机设备及可读介质 | |
CN113127139B (zh) | 一种基于数据面开发套件dpdk的内存分配方法和装置 | |
CN109756490B (zh) | 一种mdc实现方法及装置 | |
CN105939356A (zh) | 一种虚拟防火墙划分方法和装置 | |
WO2024067529A1 (zh) | 基于rdma的建连方法、装置、设备及存储介质 | |
CN113329042B (zh) | 消息处理方法及系统、车联网系统、服务器、电子设备 | |
CN109558367B (zh) | 多总线处理器mhal路由方法 | |
CN111190746A (zh) | 基于VxWorks653多核分区实时操作系统及通信方法 | |
US9398109B2 (en) | System, messaging broker and method for managing communication between open services gateway initiative (OSGI) environments | |
JP2010146246A (ja) | マルチエージェントシステム用フレームワークコンピュータプログラム、ネットワークシステム、及びエージェント間通信方法 | |
US20230262149A1 (en) | Data node, data node management method, and data node management program | |
CN114039894B (zh) | 一种基于矢量包的网络性能优化方法、系统、设备、介质 | |
CN115208838A (zh) | 一种报文转发装置、方法及操作系统 | |
CN115514726A (zh) | 一种基于nats的云边场景的文件同步系统 |
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 |