마크 셔틀 워스 (Mark Shuttleworth)가 최근 발표 한대로 우분투는 Wayland를 디스플레이 관리자로 사용하는 방향으로 나아가고 있습니다.
X11과 Wayland의 가장 큰 차이점은 무엇입니까? Wayland가 왜 우분투를 더 좋게 만들까요?
마크 셔틀 워스 (Mark Shuttleworth)가 최근 발표 한대로 우분투는 Wayland를 디스플레이 관리자로 사용하는 방향으로 나아가고 있습니다.
X11과 Wayland의 가장 큰 차이점은 무엇입니까? Wayland가 왜 우분투를 더 좋게 만들까요?
답변:
Wayland 아키텍처 페이지 에서 디자인의 차이점을 확인할 수 있습니다 . 표준 GEM / DRM 스택을 통해 모든 것을 커널로 직접 강제 실행하고 합성 자체를 관리함으로써 전체 그래픽 스택을 단순화해야합니다.
비트와 밥이있는 X 스택과 비교해보십시오. X 혼란의 일부는 유연한 디자인을 통해 이루어졌으며, 일부는 점점 더 많은 고통을 겪고 있습니다. 모든 합성기 (Compiz / Metacity / Mutter / KWin / etc)는 이후에 추가되었습니다. 그들은 X가 스스로해야 할 일을하기 위해 핵심 역할을합니다. 상황이 외부로 확장된다면 프로젝트를 유지할 수없는 시점에 도달하게됩니다.
대체로 하드웨어 지원이있을 경우 전체 스택을보다 효율적이고 표준 설정에서 사용하기가 덜 어려워집니다.
그러나 지금까지 치료법을 보지 못한 몇 가지 문제가 있습니다.
X는 꽤 네트워크를 인식합니다. 다른 컴퓨터로 창을 보낼 수 있고, 원격 로그인과 그와 같은 모든 종류의 펑키 한 것들이있는 여러 화면을 가질 수 있습니다. 이것은 상당히 전문적인 것처럼 보이지만 널리 사용되는 기술입니다. Wayland는 비교적 국부적으로 정적으로 보입니다.
드라이버 지원도 있습니다. 비공개 소스 드라이버는 Wayland가 번창하는 KMS / 공유 -GEM / 공유 -DRM 기술을 아직 지원하지 않습니다. Nouveau에게는 순수 주의자가 괜찮을지 모르지만 고성능 3D 그래픽 카드로 £ 100-400를 지불하는 사람은 현재 오픈 드라이버로 얻을 수있는 색다른 가난한 3d 성능에 만족하지 않을 것입니다.
업데이트 : Nvidia는 Wayland와 Mir를 모두 지원하기 위해 노력하고 있습니다.
2018 업데이트 . 17.10은 Wayland를 기본 디스플레이 서버로 사용했습니다 (폐쇄 된 드라이버 나 지원하지 않는 드라이버 또는 X가 필요한 경우 제외). 18.04 및 18.10은 모두 X를 전역 기본값으로 사용합니다 (Wayland를 설치할 수는 있음).
나는 아무것도 책임지지 않고이 위치에서 우리가 여전히 진정한 견인력 을 얻는 데있어 미터법 인 Nvidia 인 것처럼 보입니다 . 그 시점까지, 나는 우리가 Wayland의 배후에 충분한 생각을 공유하고 발전하는 힘을 볼 것이라고 생각하지 않습니다. 게임 / 성능 시장은 X를 사용하고 있습니다. MCE 시장은 X (및 직접 프레임 버퍼)를 사용하고 있습니다. Wayland가 실제로 기회를 가질 지 확신하지 못합니다.
X와 Wayland 에는 많은 차이점 이 있습니다 . 아마도 그래픽 측면에서 가장 큰 것은 Wayland 가 어떤 그림도하지 않는다는 것 입니다.
X에는 두 개의 그리기 API가 있습니다. 이 중 하나는 X11 프로토콜의 일부로, 고대, 쓸모없고 아무도 사용하지 않습니다. 다른 하나는 그라디언트와 같은 현대적인 복합 작업을 제공하는 XRender 확장입니다. 예를 들어 이것이 카이로가 사용하는 것입니다. X에는 글꼴 그리기 API도 있습니다.
Wayland에는 드로잉 API가 없습니다. Wayland 클라이언트는 기본적으로 일부 그래픽 메모리에 대한 포인터 인 DRM 버퍼 핸들을 얻습니다. Wayland는 클라이언트가 해당 버퍼를 그리는 방법을 알거나 신경 쓰지 않습니다. X 용어로 이것은 모든 응용 프로그램이 직접 렌더링을 수행 한다는 것을 의미합니다. 드로잉 요청은 서버를 거치지 않아도됩니다.
Wayland가하는 유일한 렌더링은 클라이언트 버퍼를 화면에 복사하는 것입니다.
이점 측면에서 Wayland는 X보다 훨씬 덜 복잡하므로 유지 관리가 더 쉬워집니다. 이러한 단순성 중 일부는 복잡성 (예 : 실제로 버퍼에 그리는 방법 , 네트워크 투명도)을 스택. 모든 렌더링에 대한 책임을 클라이언트에게 부여함으로써 클라이언트는 더블 버퍼링과 같은 것들에 대해 더 똑똑해질 수 있습니다.
그래픽 이외의 다른 이점도 있습니다. 예를 들어 응용 프로그램을 샌드 박스하는 것이 훨씬 쉽습니다.
내 눈에 가장 큰 차이점은 Wayland가 X-Server보다 커널에 더 가깝다는 것입니다. X에서 커널 (커널 모드 설정, KMS)로 그래픽 드라이버를 이동함에 따라 Wayland는이 새로운 기능을 사용하여 X를 대체 할 계획입니다. 다음을 볼 수 있습니다.
디스플레이는 커널에 의해 처리되기 때문에 X보다 풋 프린트가 적습니다. Wayland는 사용하기 위해 많은 것을 구현할 필요가 없습니다. X 전달 (다른 PC의 한 화면을 보아라)이 X와 함께 사라질 것으로 예상되므로 두 가지 방법으로 진행됩니다.
KMS 기능 : X 서버를 다시 시작하지 않고도 화면 해상도를 변경할 수 있음 (최소한 nvidia의 경우 X에서 수정 된 것으로 생각되지만) 인텔 칩셋에 대한 커널 패닉 콘솔 디버그 그런 종류의.
내가 틀렸다면 누구든지 이것에 대해 나를 교정 할 수 있습니까?
다른 모든 게시물은 Wayland의 장점을 강조하지만 모두 좋은 것은 아닙니다. Wayland보다 X의 가장 큰 장점은 X가 네트워크를 통해 작동한다는 것입니다. X는 네트워크에 투명합니다. 실제 프로그램이 다른 컴퓨터 (일반적으로 더 강력한 컴퓨터)에서 실행되는 동안 터미널에서 창을 표시하거나 XDMCP를 사용하여 전체 세션을 표시 할 수 있습니다. Wayland와 같은 네트워크 투명성에 대한 아이디어는 사라졌습니다. 어쩌면 요즘 빠른 네트워크와 VNC 및 RDP와 같은 다른 프로토콜에서는 그렇게 많이 필요하지 않을 수도 있습니다. 완전성을 위해 언급 할 것이라고 생각했습니다.
일상 업무에서 누구나 매우 빠르게 알아 차릴 수있는 두 가지 작은 것들 :