weston은 Wayland 서버의 참조 구현이며 하나의 디스플레이 서버이자 창 관리자 및 컴포지터이다. Weston에는 로드 가능한 모듈로서 몇 가지 백엔드가 있다. Linux에서 KMS (DRM을 통한 커널 모드 설정), X 클라이언트 또는 다른 Wayland 서버 인스턴스 내에서 실행될 수 있다. Weston은 쉘 플러그인을 통해 근본적으로 다른 그래픽 사용자 인터페이스 패러다임을 지원한다.
weston이 첫 번째 윈도우 시스템으로 시작될 때 (즉, X 나 다른 Wayland 서버에서는 아님), weston-launch 명령을 사용하여 장치에 대한 적절한 액세스 권한을 설정해야한다.
BACKENDS
drm-backend.so
DRM 백엔드는 출력에 Linux KMS를 사용하고 입력에는 evdev 장치를 사용한다. DPMS를 사용하는 통합 데스크탑에서 여러 모니터를 지원한다.
wayland-backend.so
wayland-backend는 다른 Wayland 서버(예: 웨스턴 인스턴스)에서 실행된다. Weston은 상위 서버에서 단일 데스크탑 창으로 표시된다.
x11-backend.so
x11-backend는 X 서버에서 실행된다. 각 Weston 출력은 X 창이 된다. 이것은 Wayland 쉘, 데스크탑 또는 응용 프로그램의 멀티 모니터 지원을 테스트하는 가장 손쉬운 방법이다.
SHELLS
각 쉘에는 클라이언트를위한 고유한 공용 프로토콜 인터페이스가 있다. 이것은 클라이언트가 쉘 프로토콜을 위해 특별히 작성되어야 함을 의미한다. 그렇지 않으면 작동하지 않는다.
Desktop shell
데스크탑 셸은 전통적인 키보드와 마우스 사용자 인터페이스와 친숙한 데스크탑과 같은 윈도우 관리에 초점을 맞춘 현대의 X 데스크탑 환경과 같다.
데스크탑 쉘은 쉘 플러그인 desktop-shell.so와 배경화면, 패널 및 화면 잠금 대화 상자를 제공하는 특수 클라이언트 weston-desktop-shell로 구성된다.
Fullscreen shell
전체 화면 셸은 전체 출력물, 종종 모든 출력을 넘겨받아야 하는 클라이언트를 위한 것이다. 이것은 Weston에서 다른 컴포지터를 실행하기위한 것이다. 다른 컴포 지터는 DRM/KMS 또는 evdev/libinput과 같은 플랫폼 관련 사항을 처리 할 필요가 없다. 쉘은 쉘 플러그인 fullscreen-shell.so로만 구성된다.
IVI-shell
차량 내 인포테인먼트 쉘은 GENIVI Layer Manager 호환 API를 컨트롤러 모듈에 노출시키는 특수 목적의 쉘이며 클라이언트에 대한 매우 간단한 쉘 프로토콜이다. IVI-shell은 ivi-shell.so를 로드 한 다음 도우미 클라이언트를 시작할 수있는 컨트롤러 모듈로 시작한다.
XWAYLAND
XWayland는 X서버 (X.org)를 설치해야 한다. 이 X 서버는 Wayland 클라이언트로 Wayland 서버에 연결되고 X 클라이언트는 X 서버에 연결된다. XWayland는 Wayland 스택에서 X 응용 프로그램과의 하위 호환성을 제공한다.
XWayland는 weston에 xwayland.so 모듈을 로드 하도록 구성하여 시작할 수 있다. Weston은 새로운 X 디스플레이 소켓에서 Listening를 시작하고 환경 변수 DISPLAY로 내보낸다. 첫 번째 X 클라이언트가 연결되면 Weston은 X 클라이언트 및 모든 향후 X 클라이언트를 처리하기 위해 Wayland 클라이언트로 X 서버를 시작한다.
http://manpages.ubuntu.com/manpages/xenial/man1/weston.1.html