한국어
Linux Programming
 

Weston 의 설명 및 관련 컴포넌트

makersweb 2020.06.03 13:45 조회 수 : 15

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

이 글과 연관된 다른 글
  1. [2020/06/04] Wayland 의 Client Application 프로그래밍 기본 루틴 by makersweb (23)
  2. [2020/06/04] Wayland 의 주요 객체들 by makersweb (15)
  3. [2019/05/12] Wayland IVI Extension 간단 리뷰 by makersweb (928)
  4. [2017/12/29] Wayland에 대한 간단한 소개 by makersweb (1544)
  5. [2017/12/28] Ubuntu16.04에서 weston구동 by makersweb (414)
번호 제목 글쓴이 날짜 조회 수
35 리눅스 오디오 스택과 아키텍처 file makersweb 2020.09.02 21
34 wayland-scanner 를 통해 Wayland 프로토콜 코드생성 makersweb 2020.06.08 6
33 Wayland 의 Client Application 프로그래밍 기본 루틴 makersweb 2020.06.04 23
32 Wayland 의 주요 객체들 makersweb 2020.06.04 15
» Weston 의 설명 및 관련 컴포넌트 makersweb 2020.06.03 15
30 64비트 리눅스에서 32비트 응용프로그램을 실행하려면 makersweb 2020.02.29 310
29 initramfs (initial ram file system: 초기 램 파일 시스템) makersweb 2020.02.25 85
28 플랫폼 디바이스 드라이버 개발 시 많이 사용되는 커널 API 및 매크로 makersweb 2020.01.28 340
27 PATH에 새로운 경로 추가 makersweb 2019.09.19 90
26 리눅스 컴파일러 최신으로 업데이트 linux 2018.12.26 1165
25 libblkid - USB Storage의 정보 가져오기 makersweb 2018.10.18 241
24 tslib 크로스 컴파일과 터치스크린 보정 makersweb 2018.08.02 1016
23 Ubuntu Linux에서 dbus-c++바인딩 D-Bus 테스트 file makersweb 2018.03.07 3650
22 NFS를 통해 파일시스템 공유 makersweb 2018.03.05 666
21 Wayland에 대한 간단한 소개 file makersweb 2017.12.29 1544
20 Ubuntu16.04에서 weston구동 file makersweb 2017.12.28 414
19 UVC 장치를 사용할때 v4l2: select timeout 에러 발생 makersweb 2017.12.27 651
18 [IPC]D-Bus 소개 file makersweb 2015.02.28 25321
17 리눅스 데스크탑 환경 종류 pjk 2015.02.11 4114
16 디바이스 드라이버에 대해서 makersweb 2014.04.19 3754