分布式实时仿真系统-反射内存的应用

        为了使分布式实时仿真系统(一个典型代表就行飞行模拟器)达到逼真的仿真效果,在系统内部,往往不仅需要对各种数据模型进行实时解算,而且需要一个延迟时间极低的确定性网络在系统之间传递数据,这样才能让各个子系统之间协调一致地工作。传统上,我们使用“高速度以太网+上下位机”的解决方案来满足这两方面的需求。受TCP/IP协议所限,传统的以太网并不能满足各实时仿真子系统间实时、确定地传输数据的需求。尽管可以采取一些措施(如提高网络速度、降低网络负荷等)来降低延迟,但是仍然很难从根本上解决以太网不具有实时性和确定性的固有缺陷,并且这样做均会增加额外的成本。

传统的“上下位机”的主从开发模式方案如图1所示,即实时仿真子系统中的实时计算任务在下位机(嵌入式实时操作系统,如VxWorks、RTLinux、QNX等)中执行,而包括界面显示在内的非实时计算任务则在上位机(Windows操作系统)中运行。这样,在满足实时计算任务对实时性的需求的同时,还利用了 Windows操作系统对开发工具(如Visual Studio等)和图形显示接口(GUI)的强大支持等优点,从而在一定程度上提高了界面显示部分的开发效率。

上下位机主从开发模型是一种常见的嵌入式系统开发模型,该模型使用两台计算机(或嵌入式设备),一台作为上位机,另一台作为下位机。下位机是负责采集传感器数据、执行控制指令和控制外设的设备,而上位机则负责处理和显示下位机发送的数据以及发送控制命令到下位机。在这种模型中,下位机通常运行着一个实时操作系统(RTOS),可以进行实时数据采集和处理。上位机则通常运行着一个基于图形化界面的软件,可以方便地实现数据展示和交互控制。

但是该解决方案有着固有的局限性,(I)上下位机带来了高费用、高成本和低可靠性。(2)复杂的分布式应用程序。(3)总线的传输性能容易成为系统总体性能的瓶颈。

新的应用再于实时性的保证和数据的完整性,一台机器和多点分布。光纤反射内存卡,可以不占用机器内存。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/100555.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

goLang笔记+beego框架

goLang笔记+ 初始安装之后 GOPATH: Go开发相关的环境变量如下: GOROOT:GOROOT就是Go的安装目录,(类似于java的JDK) GOPATH:GOPATH是我们的工作空间,保存go项目代码和第三方依赖包 GOPATH可以设置多个,其中,第一个将会是默认的包目录,使用 go get 下载的包都会在第一…

切分支解决切不走因为未合并的路径如何解决

改代码的时候改做分支了,本来是在另一个分支上面改代码,结果改到另一个放置上面,然后想着使用git stash进行保存,然后切到另外一个分支再pop,结果不行。 报这个错误,导致切不过去,因为我这边pop…

记录使用layui弹窗实现签名、签字

一、前言 本来项目使用的是OCX方式做签字的,因为项目需要转到国产化,不在支持OCX方式,需要使用前端进行签字操作 注:有啥问题看看文档,或者换着思路来,本文仅供参考! 二、使用组件 获取jSign…

【Arduino25】液晶模拟值实验

硬件准备 LCD1602显示屏&#xff1a;1 个 220欧的电阻&#xff1a;1 个 旋钮电位器&#xff1a;1 个 面包板&#xff1a;1个 杜邦线&#xff1a;若干 硬件连线 软件程序 #include <LiquidCrystal.h>LiquidCrystal lcd(12,11,5,4,3,2);void setup(){lcd.begin(16,2);…

【算法】快速排序 详解

快速排序 详解 快速排序1. 挖坑法2. 左右指针法 &#xff08;Hoare 法&#xff09;3. 前后指针法4. 快排非递归 代码优化 排序&#xff1a; 排序&#xff0c;就是使一串记录&#xff0c;按照其中的某个或某些关键字的大小&#xff0c;递增或递减的排列起来的操作。 稳定性&…

【PHP代码审计】反序列化漏洞实战

文章目录 概述资源下载地址Typecho代码审计-漏洞原理call_user_func()_applyFilter()、get()与__get__toString()__construct()install.php POC利用漏洞利用复现利用链执行phpinfo()GET利用POST利用 getshell生成payload漏洞利用蚁剑连接 总结 概述 序列化&#xff0c;“将对象…

一文讲透【静态脱敏实操】

1&#xff1a;直接上工具类 <dependency><groupId>cn.hutool</groupId><artifactId>hutool-all</artifactId><version>5.8.16</version> </dependency>2:Hutool 支持的脱敏数据类型 现阶段最新版本的 Hutool 支持的脱敏数据类…

“安全即服务”为网络安全推开一道门

8月30日&#xff0c;三六零&#xff08;下称“360”&#xff09;集团发布了2023年半年报&#xff0c;其中安全业务第二季度收入6.54亿元&#xff0c;同比增长98.76%&#xff0c;环比增长157.16%&#xff0c;安全第二增长曲线已完全成型&#xff01;特别值得一提的是&#xff0c…

javaScript:DOM中常用尺寸

目录 前言&#xff08;可以根据图示找到需要的尺寸&#xff0c;便于理解&#xff09; 内尺寸 clientWidth 包含左右padding和宽度width&#xff08;忽略滚动条的宽度&#xff09; clientHeight 包含上下padding和height&#xff08;忽略滚动条的高度&#xff09; clientTo…

蓝桥杯打卡Day3

文章目录 吃糖果递推数列 一、吃糖果IO链接 本题思路:本题题意就是斐波那契数列&#xff01; #include <bits/stdc.h>typedef uint64_t i64;i64 f(i64 n) {if(n1) return 1;if(n2) return 2;return f(n-1)f(n-2); }signed main() {std::ios::sync_with_stdio(false);s…

Windows11安装配置Git

安装配置Git 1.安装Git1.1下载Git1.2Git的安装1.安装2.安装声明3.安装路径选择4.选择安装组件5.开始菜单文件夹6.选择Git默认编辑器7.决定初始化新项目(仓库)的主干名称8.调整你的path环境变量9.选择SSH执行文件10.配置行尾符号转换11.配置终端模拟器与Git Bash一起使用12.选择…

[VSCode] 替换掉/去掉空行

VSCode中使用快捷键CtrlH&#xff0c;出现替换功能&#xff0c;在上面的“查找”框中输入正则表达式&#xff1a; ^\s*(?\r?$)\n然后选择右侧的“使用正则表达式”&#xff1b;“替换”框内为空&#xff0c;点击右侧的“全部替换”&#xff0c;即可去除所有空行。 参考 [VS…