Has*_*san 21 x11 gtk graphics directfb
据我了解,DirectFB为多种图形卡提供硬件加速.此外,它比X11更小,更快,占用的内存更少.为什么呢,它不是比现在更主流吗?
这是我真正不确定的:普通的GTK +/Qt程序需要移植到它吗?在DirectFB网站上,有一个将Firefox移植到它的项目.如果GTK +能够直接使用DirectFB,为什么这甚至是必要的呢?我(可能错误地)理解它的方式是Firefox应该输出到GTK +,它应该输出到DirectFB,它应该输出到硬件.如果我错了,请纠正我.
谢谢,
哈桑
Hav*_*c P 20
如果您在现代Linux系统上强调X作为开销的来源,那么您可能没有找到正确的位置.X很久以前就被设计用于比现代手机强大得多的计算机.
如果你看一下"top"并看到X使用内存,那么要做出很多工作要弄清楚实际的X开销.存在不是"真实"存储器的存储器映射,并且存在代表应用分配的资源(例如大像素块).最重要的是,X中显示的内存不是人们想象的.
人们还听说X使用"网络"并认为这将成为性能瓶颈.这里的"网络"是指本地UNIX域套接字,它在现代Linux上的开销可以忽略不计.在网络上会出现瓶颈的事情,有快速的X扩展(共享内存像素图,DRI等).进程中的线程不一定比X套接字更快,因为瓶颈更多地与协调多个线程或访问相同硬件的进程的固有问题有关,而不是本地套接字的最小开销.
多进程设置有很多优点,例如更难崩溃.例如,请参阅Google Chrome,使用多个流程可以更加强大 - 事实证明,也可以快速运行.较少的过程并不一定意味着更现代化.
使用GTK的应用程序没有透明地移植到DirectFB的原因有很多.对于Firefox,一个是它有时直接使用X. 此外,一些独立于工具包的东西,如浏览器插件接口,直接使用X. 例如,Flash插件无法在DirectFB上运行.即使不直接使用X的应用程序通常也会假设存在基于X的常规桌面环境(GNOME等).
替换X的另一个问题是驱动程序支持,其中两个更好的显卡(NVidia,ATI)都拥有比免费驱动程序更强大的专有驱动程序,并且这些专有驱动程序与X绑定.
当然还有迁移路径.如果您有数百个使用X的应用程序并且X没有明确的最终用户缺点,那么没有人会切换到没有应用程序工作的东西.最有可能的是,这里的解决方案是在新窗口系统上运行的无根X服务器,因此旧的应用程序仍然有用.
旧并不总是坏的.X由聪明人设计得非常好,这使得它可以进化和改变,并且在很多年后仍然可以使用.
无论如何,很长一段时间说,基本上从X转移是很多的努力,它确实工作正常,"工作正常"从未适用于任何替代品(至少如果你想能够运行大多数应用程序大多数硬件).
X存在问题 - 例如不可能进行原子屏幕更新,这是Wayland项目正在考虑的问题 - 但大多数问题对于用户来说都是非常美观的(例如非原子更新)或开发人员的化妆品(旧的已弃用扩展)等等).一个人可以放弃X并且神奇地拥有更小更快的东西,这是不正确的.这主要是基于人们推测"旧"和"使用网络"必须缓慢而臃肿,但同样,X是专为非常糟糕的硬件而设计的.我曾经在我的386上运行X(和Emacs!),可能有8兆内存或类似的东西.
DirectFB是为嵌入式系统设计的,这些系统占用的内存很小。它允许应用程序通过直接 API 直接与视频硬件对话,从而加速和简化图形操作。
游戏和嵌入式系统开发人员经常使用它来规避完整 X Window 系统服务器实现的开销。
| 归档时间: |
|
| 查看次数: |
19742 次 |
| 最近记录: |