前一阵子跟人谈多分屏桌面展示

前一阵子,在一个很特殊的情况下,和别人谈论多分屏桌面展示的问题。

以前没做过,突然想到的两个方案。

多少分屏算多呢,实际上那些家伙弄得是4*4 的16分屏。(具体像素未知,但是他们做的是16分屏。)

那些家伙做的是全球数据展示,做全球数据收集,定时每秒在4*4 的大显示器组上显示最后5 条数据在世界地图上的的位置。

当时谈到这个问题的时候,我的第一个想法:

首先弄一台PC机,作为主机,在其内存中做一张超大的图片,然后逻辑上等分4*4 的16份,分别编号,

再弄16台PC机,或者移动设备,作为工作机,分别编号与主机内部的编号对应,

通过某些手段,比如网络通信,串口通信等等手段,把主机上面处理了之后的图像根据编号直接发送到每一台工作机上,

工作机再把数据分别写入自己的显存中,然后直接从显示设备上显示出来。

然后他们说,我的想法不好,这样的话,还需要一个同步的过程。

我不清楚为什么需要同步,近距离数据传输,且是直接传输,客户机不需要做任何事情,只要监听设备,然后显示数据就行了。

这种情况,甚至连操作系统都不需要,直接单片机就能解决问题,无非就是忙等数据,然后把数据写到显存中。

比如arm contex a9 裸机,一个CPU 加上一个串口,加上一块LCD,就可以轻松实现这些,连个操作系统都不需要。

功能单一所以肯定安全稳定,不需要操作系统所以一旦出现问题立刻就能清楚是哪里的问题。这种情况下,同步,纯属多余。

不能否认,肯定存在一定的几率,哪里出现了一点点问题,会使得数据传输或者哪里哪里出现故障导致数据丢失或者延迟的发生等等。

但是极近距离的话,串口的效率及稳定性都是超一流的,如果出现这种问题,就是设备问题,该换掉了。

优点,便宜,维护方便。(串口裸板驱动不到200行代码,LCD显示器驱动不到200行代码,全部代码加起来估计可以不到1K,代码方面维护极其方便。)

出现问题定位也方便,代码量极少,软、硬件方面的问题,很容易定位。(不是代码的问题,就是设备的问题,也有可能是宇宙射线的问题,这个不考虑。)

(估计m 系列就可以了,用a9来跑这玩艺,真浪费。)

但是那几个老大仍然对我的意见不依不饶,就是同步的问题,所以我考虑了第二个想法:

这么大的工程,我想,主机的性能应该也是超级强的吧,是不是有可能主机上有16块显卡呢。

这。看似比较好笑,但是实际上不是那么好笑。毕竟早就已经有了USB显卡了。

如果真的主机上挂了16块显卡,那就是直接写显存的事情了。这就更不需要同步了。

但是那几个哥们仍然不依不饶地问我同步怎么办。

其实,这里,个人感觉,最麻烦的地方,应该是超大图片的无闪烁刷新,其他都不是问题。

因为,只要颜色有变,就涉及到刷新,(即便颜色不变,也可能是在刷新,但是肉眼无法识别。。。)如果正在刷新,时间片没有抓好的话,就可能出现闪烁,这是最头疼的。

同样的设备,同样的厂商,同样的型号,同样的代码,效率可能有波动,但是波动绝对不会特别大,所以只要各个方面没有问题,同步完全就是多余的。

而且,16个显示器同时绘图,即便有同步,又能如何,有一个显示器没画完,主机在等它,那其他的显示器下一帧的图也不画了?

硬防里面还跑linux呢,几十万行代码,数据进协议栈跑一圈,这种低效率的处理都耗不了多少时。
(硬防如果耗时严重,客户端用户体验肯定成问题。但是不做硬防的话,服务段的抗击打能力肯定要下降。)
1K来行代码的小设备还要同步?

时间: 2024-08-08 17:52:47

前一阵子跟人谈多分屏桌面展示的相关文章

谈一谈让人傻傻分不清的1G,2G,3G,4G……

浅谈让人傻傻分不清的1G,2G,3G,4G-- 虽然大学里学过计算机网络,平时也总是看网上不停的喷着1G,2G,3G,4G到底是啥,但总觉得隔靴搔痒,看不出其本质区别,我不想详解其中的又臭又长的关键技术,就从大家能看明白的概念上说一说这些不同代网络技术的区别. 先从概念和区别说起 1G:没啥好说的,估计是有了后来的2.3G,才想起称呼原来的为1G.1G采用FDMA(模拟和频分多址技术),可实现区域的移动性服务,代表是第一代模拟制式手机,大哥大,通话锁定在一定频率,使用可调频电台就可以窃听电话,保

clients(PV操作共享内核内存进行输入输出分屏) - server(进程间通信)模型实现

1.拓扑结构 2.PV操作共享内核内存进行输入输出分屏 (1) 1 int semop(int semid,struct sembuf *sops,size_t nsops): 功能描述 操作一个或一组信号. semid: 信号集的识别码,可通过semget获取. sops: 指向存储信号操作结构的数组指针,信号操作结构的原型如下 1 struct sembuf 2 { 3 unsigned short sem_num; /* semaphore number */ 4 short sem_op

Window Tidy:最好的 MacOS 分屏工具

本文标签: MacOS分屏工具 WindowTidy Mac小工具 早在 Windows 7 的时代,微软就给其引入了分屏的功能.将窗口拖至显示屏的左右和上边缘,就可以将窗口变为显示器大小的一半或者全屏.而在之后的 Windows 8 和 Windows 10 中,这个功能被发扬光大,甚至可以做到一屏四窗.也因为 Windows 在窗口排列的开创性创新,我们给 Windows 的分屏功能给予了高度的评价. 但是反观 macOS ,直到 2015 年发布的 OS X El Capitan 才引入了

android仿系统Launcher界面,实现分屏,左右滑动效果(ViewSwitcher)

ViewSwitcher代表了视图切换组件, 本身继承了FrameLayout ,可以将多个View叠在一起 ,每次只显示一个组件.当程序控制从一个View切换到另个View时,ViewSwitcher 支持指定动画效果. 为了给ViewSwitcher 添加多个组件, 一般通过ViewSwitcher 的setFactory 方法为止设置ViewFactory ,并由ViewFactory为之创建View 即可. 下面通过一个实例来介绍 ViewSwitcher的用法.(仿Android系统L

google 分屏 横屏模式 按home键界面错乱故障分析(二) 分屏的启动过程

google 进入分屏后在横屏模式按home键界面错乱(二) 你确定你了解分屏的整个流程? Android 关机对话框概率没有阴影故障分析 android recent key长按事件弹起触发最近列表故障分析 google 分屏 popup无法显示故障分析 分享此文便是对代码GG的支持,也是爱的表达方式,所以让爱来的猛烈些吧. 代码阅读,请到此处http://androidxref.com 查看原生代码 前情回顾: google 分屏 横屏模式 按home键界面错乱故障分析(一) 上一节我们主要

Win10专业版怎么分屏

今天小编给大家带来的是一位玩家分享的Win10分屏技巧介绍,快跟小编一起来看看这位玩家什么好的技巧分享给大家吧. 从Win7开始,微软就在Windows系统中加入了分屏这一功能,而到了Win10,微软在系统中提供了为数众多的窗口管理功能,让用户能够方便地对各个窗口进行排列.分割.组合.调整等操作.接下来,笔者就为大家列举两个比较常见的窗口管理小技巧,相信能对大家在Win10的日常应用带来便利. 直接拖动窗口,按比例分屏 按比例分屏是在Win7就有的功能,简单而言,用户只要将窗口拖至屏幕两侧(鼠标

关于LCD的分屏与切屏 Tearing effect

详细文档(带图片):http://download.csdn.net/detail/xuehui869/5268852 1.LCM之Fmark功能 http://blog.csdn.net/zhandoushi1982/article/details/6011241 最近调试R61509V这颗LCM驱动芯片时,出现在纯色测试画面下画面刷新有残留(tearing effect,即TE)的问题.根本原因是主控写图像数据的速度与LCM刷屏的速度不一致造成的,具体是刷屏速度要快于主控写速度.好在很多LC

excel多窗口分屏并列显示

excel多窗口分屏显示 浏览:183 | 更新:2014-07-30 17:35 | 标签: excel 1 2 3 4 分步阅读 与WORD可以同时打开多个编辑窗口不同,在编辑excel时通常只能在一个窗口中打开多个excel簿.这样对于分屏显示来说就很不方便,相信很多人都受此困扰.多数人的解决办法是将excel窗口放大到两个显示器上,然后垂直平铺两个excel簿.但是真的想让excel象WORD那样多编辑窗口实现分屏显示可不可以呢?下面的方法在excel 2007.win7系统中试验通过.

ANDROID N 分屏设置

一 概述 android N的发布,最大的亮点有2个,原生系统对应用分屏的支持和快捷回复.现在只介绍分屏功能,目前最新的Android N系统支持横屏时让两个APP并排,竖屏时上下排放,而在Android TV上,原生系统也支持APP实现画中画.用户还可以在这两个App之间拖动数据,例如将一个App的Activity上的文件拖动到另外一个App的Activity中去. 用户开启分屏模式: 1点击右下角的方块,进入任务管理器,长按一个App的标题栏,将其拖入屏幕的高亮区域,这个App金进入了分屏模