» 
alemán árabe búlgaro checo chino coreano croata danés eslovaco esloveno español estonio farsi finlandés francés griego hebreo hindù húngaro indonesio inglés islandés italiano japonés letón lituano malgache neerlandés noruego polaco portugués rumano ruso serbio sueco tailandès turco vietnamita
alemán árabe búlgaro checo chino coreano croata danés eslovaco esloveno español estonio farsi finlandés francés griego hebreo hindù húngaro indonesio inglés islandés italiano japonés letón lituano malgache neerlandés noruego polaco portugués rumano ruso serbio sueco tailandès turco vietnamita

definición - Wayland

definición de Wayland (Wikipedia)

   Publicidad ▼

Wikipedia

Wayland

                   
Wayland
Wayland Logo.svg
Wayland demo 2.png
Wayland demonstration
原作者 Kristian Høgsberg
初始版本 2008
預覽版本 0.95/
2012年7月24日;57天前 (2012-07-24)
程式語言 C
作業系統 類 Unix 系統
開發狀態 Beta
類型 显示服务
許可協議 MIT 授權
網站 http://wayland.freedesktop.org/

Wayland 是一個桌面的显示服务器协议和在Linux上實做这个协议的軟體庫。它是一個自由軟體專案,採用MIT許可證釋出,於2008年Intel 开放源代码技术中心 (Open Source Technology Center, OSTC) 的成員 Kristian Høgsberg 所发起的。[1]作者声称「每一個显示画面皆是完美的,我的意思是应用程序將能充分地去控制图形的显示,使我們完全無法察觉任何的撕裂、延迟、重画及闪烁」。[2][3]Wayland使得Compositor能够与应用程序和视频硬件直接交互。应用程序在它们自己的缓冲区中进行图形渲染。这样一来,窗口管理器就变成了一个显示管理服务,专门负责渲染那些屏幕上的程序。这比X Window系統中的窗口管理器要更简单,高效。

现有的Compositor例如Compiz,KWinMutter对Wayland都有着不同程度的支持。


目录

  背景

Kristian Høgsberg,一个专注于GNU/Linux图形开发的软件工程师,在2008年发起了Wayland project。当时他在Red Hat[4]工作,现在他在intel[5]Wayland是自由软件,它的库(libwayland-server and libwayland-client)以MIT License授权,示例程序和Compositor一开始以GPLv2授权。现在整个Project都是以MIT License授权的了。直到2010年11月份,Wayland还仅仅只能在intel,AMD,Nvidia的开源驱动上运行。

「Wayland」这个名字来自于[|Wayland,MA]。据说Høgsberg是在开车穿过那个小镇时得到灵感的。

  设计

Wayland 运用既有的 Linux 核心技术,像是 Direct Rendering Manager (DRM), kernel mode-setting (KMS) 以及 Graphics Execution Manager (GEM) 以提供一個最小化的显示管理服务。[6][7]Wayland 混合器 (compositor) 在 2010 年 6 月已从桌面常用的 OpenGL 改为 OpenGL ES[8]這個專案也開發支援 Wayland 顯示的 Qt,而不需要 X。大部分應用程式都有望獲得透過函式庫,無需修改程式即可支援 Wayland。

近些年来,GNU/Linux 桌面图形开发者从X server中移除了一大堆的与渲染有关的接口到内核中。现在,已经有许多功能被移入内核(内存管理,任务调度,模式设置(KMS)等等)或是程序库(cario,pixman,freetype,fontconfig,pango等等),所以窗口系统需要做的事情大大减少了。但是 X11 协议十分巨大,庞杂,并且它包括了许多已经过时的模块。虽然开发者们为了使 X server 适应现代化的计算机体系结构而开发出了 XRandR,XRender,COMPOSITE等一些额外扩展,但这终究是治标不治本,同时这也会增加维护的难度。 Wayland也包括了一个协议(近乎完成),但与X server不同的是 Wayland只做它必须要做到事情。下面我们以"鼠标点击按钮引发按钮更新动作"来说明一下 Wayland 和 X server 的区别:

  X 架构

在 X 中

  1. 内核捕获鼠标点击事件并发送给 X server。
  2. X server 会计算该把这一事件发送给哪个窗口(事实上,窗口位置是由Compositor控制的,X server并不能够正确的计算Compositor做过特效变化之后的按钮的正确位置)。
  3. 应用程序对此事件进行处理(将引发按钮更新动作)。但是,在此之前它得向X server发送绘制请求。
  4. X server接收到这条绘制请求,然后把它发给视频驱动来渲染。X 还计算了更新区域,并且这条"垃圾信息"发送给了Compositor。
  5. 这时,Compositor 知道它必须要重新合成屏幕上的一块区域。当然,这还是要向X server发送绘制请求的。
  6. 开始绘制。但是X server 还会去做一些不必要的本职工作(窗口重叠计算,窗口剪裁计算等)。
  Wayland 架构



在 Wayland 中

  1. 内核捕获鼠标点击事件并发送给 Wayland Compositor。
  2. 由于是直接发给Compositor的,所以Wayland会正确地计算出按钮的位置。同时它会把这一事件发送给按钮所在的应用程序来处理。
  3. 应用程序直接渲染,无需向Wayland请求。只需在绘制完成之后向Compositor 发送一条信息表明这块区域被更新了。
  4. Compositor收到这条信息后,立即重新合成真个桌面而无需向Wayland请求。


目前,Wayland使用OpenGL ES而不是传统的OpenGL。“从长远来看,我们需要完整的OpenGL支持,但问题是 libGL 会带来X的依赖性......[9]”另一方面,使用OpenGL ES会使得Wayland更容易支持移动设备[10][11]。 Wayland 目前并不支持网络透明性,但未来可能会支持。[12]

  媒体关注

Phoronix 於 2008 年 11 月發表了一篇标题為「Wayland: A New X Server For Linux」的文章,[2]披露 Wayland 這項新的项目。Kristian 透過他的網誌對此關注作出回應,他告示大眾 Wayland 並非一個新的 X server 而是一個顯示伺服器,並聲明這個新興的專案尚處於未成熟的階段。[13]

  使用

Ubuntu

馬克·沙特爾沃思於 2010 年 11 月 4 日宣佈 Wayland 將作為 Ubuntu 未來某一未定版本 Unity 介面的顯示伺服器。[14]

Fedora

Adam Jackson (ajax) 在Fedora 项目的邮件列表里表示,Fedora在未来很可能会默认使用Wayland。"...因为它在许多方面都有重大的进步..."[15]

KDE

KWinKDE的視窗管理器加入支持 OpenGL ES 輸出。[16] 已在 KDE SC 4.7 發布[17]目前,KWin 已經完成 Wayland 的初步移植。[18] 在2012年1月發布的 KDE SC 4.8,KDE 將支援 X 下執行 Wayland。在2012年夏天發布的 KDE SC 4.9,將可以直接執行 Wayland,主要用於支援行動設備,也就是Plasma Active。[19]

Compiz

Ubuntu 的 Compiz 开发者们已经把它对X的依赖部分变成了一个可选插件。同时,Canonical正在为Compiz添加OpenGL ES的支持。众所周知,目前 Wayland 正是使用OpenGL ES,这使将得Compiz能够更容易迁移到Wayland。


  工具包

截止到 2012年3月:

Clutter对Wayland已经有完整的支持。

EFL对Wayland已经有完整的支持。

Qt5除了对client有一些改动之外,对Wayland已经有完整的支持。

GTK+3.4.0,发布于2012年03月26日,对Wayland的支持有一些缺陷。不过过随着3.4.1更新版本的发布,这个问题得到了缓解。

SDL的Wayland支持正在开发中。


  與 X 的向後兼容性

藉由 -platform 命令列選項,Qt 應用程式可以在運行時切換圖形後端,如 X 與 Wayland。[20]2011年1月,Wayland 支持搬進了上游 Qt 版本庫的 Lighthouse 分枝。[21]


  另请参见


  參考資料

  1. ^ Development Team of Intel's Open Source Technology Center (HTML). Intel OSTC [12 October 2010] (英文). 
  2. ^ 2.0 2.1 Michael Larabel (November 03, 2008) Wayland: A New X Server For Linux, Phoronix
  3. ^ DJ Walker-Morgan (6 November 2008) New Wayland X server looks to how a modern desktop works, The H
  4. ^ Kristian Høgsberg. Wayland - A New Display Server for Linux. Linux Plumbers Conference, 2009.  (Video available here)
  5. ^ Kristian Høgsberg. EGL and GLES1/2 on Linux. Linux Plumbers Conference, 2010. 
  6. ^ wayland google groups
  7. ^ Red Hat developer creates new X server, Wayland
  8. ^ http://www.phoronix.com/scan.php?page=news_item&px=ODMyNA – Wayland Meets Some Summer Love w/ New Changes (Phoronix)
  9. ^ Kristian Høgsberg. Blender3D & cursor clamping.. 9 December 2010. 
  10. ^ Wayland's Weston Running On Android. 24 May 2012. 
  11. ^ Michael Larabel. Wayland On Android Is Continuing To Come Along. 20 June 2012. 
  12. ^ Kristian Høgsberg. Network transparency argument. 9 November 2010. "Wayland isn't a remote rendering API like X, but that doesn't exclude network transparency. Clients render into a shared buffer and then have to tell the compositor (...) what they changed. The compositor can then send the new pixels in that region out over the network. The Wayland protocol is already violently asynchronous, so it should be able to handle a bit of network lag gracefully. Remote fullscreen video viewing or gaming isn't going to work well, [but] I don't know any other display system that handles that well and transparently." 
  13. ^ Casually Defiant (Kristians Blog) - Premature publicity is better than no publicity
  14. ^ Mark Shuttleworth. Unity on Wayland. Mark Shuttleworth. 2010-11-04 [2010-11-04]. 
  15. ^ Adam Jackson (ajax). [Re:] Ubuntu moving towards Wayland. 9 November 2010. 
  16. ^ Martin Gräßlin. KWin runs on OpenGL ES. 2010-11-28. "It does not only help, it is a must have to start working for Wayland. So to say it’s the first part of the KWin port to Wayland" 
  17. ^ http://blog.martin-graesslin.com/blog/2011/01/on-the-road-to-modern-opengl-es/
  18. ^ Martin Gräßlin. KWin goes Wayland. 11 June 2011. "Initial Implementation of a Wayland Server in KWin" 
  19. ^ Michael Larabel. KDE Draws Up Plans For Wayland In 2012. 7 August 2011. "but the first phase (Wayland under X) should be achieved for the winter release of KDE (Software Compilation 4.8, due out next January). Martin hopes that the second phase of the Wayland upbringing, where KDE is working directly atop Wayland, will be ready for the summer 2012 release (KDE SC 4.9)." 
  20. ^ Getting started with Lighthouse [2010-12-17]. 
  21. ^ Kristian Høgsberg. Add wayland lighthouse plugin. 2011-01-25. 

  外部連結

   
               

 

todas las traducciones de Wayland


Contenido de sensagent

  • definiciones
  • sinónimos
  • antónimos
  • enciclopedia

  • 定义
  • 同义词

   Publicidad ▼

 

8527 visitantes en línea

computado en 0,046s

   Publicidad ▼