한국어
Linux Programming
 

Weston 의 설명 및 관련 컴포넌트

makersweb 2020.06.03 13:45 조회 수 : 1469

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

번호 제목 글쓴이 날짜 조회 수
40 리눅스에서 네트워크 구성 makersweb 2022.06.11 2235
39 D-Bus ObjectManager file makersweb 2022.02.12 249
38 ifconfig 는 대부분 ip 명령으로 대체 makersweb 2022.02.12 345
37 SocketCAN 유틸 사용방법 file makersweb 2022.02.05 2045
36 dbus-broker를 기본 DBus 구현으로 설정 makersweb 2021.01.20 537
35 리눅스 오디오 스택과 아키텍처 file makersweb 2020.09.02 1998
34 wayland-scanner 를 통해 Wayland 프로토콜 코드생성 makersweb 2020.06.08 451
33 Wayland 의 Client Application 프로그래밍 기본 루틴 makersweb 2020.06.04 899
32 Wayland 의 주요 객체들 makersweb 2020.06.04 443
» Weston 의 설명 및 관련 컴포넌트 makersweb 2020.06.03 1469
30 64비트 리눅스에서 32비트 응용프로그램을 실행하려면 makersweb 2020.02.29 1299
29 initramfs (initial ram file system: 초기 램 파일 시스템) makersweb 2020.02.25 1179
28 플랫폼 디바이스 드라이버 개발 시 많이 사용되는 커널 API 및 매크로 makersweb 2020.01.28 3053
27 PATH에 새로운 경로 추가 makersweb 2019.09.19 271
26 리눅스 컴파일러 최신으로 업데이트 linux 2018.12.26 1759
25 libblkid - USB Storage의 정보 가져오기 makersweb 2018.10.18 547
24 tslib 크로스 컴파일과 터치스크린 보정 makersweb 2018.08.02 1890
23 Ubuntu Linux에서 dbus-c++바인딩 D-Bus 테스트 file makersweb 2018.03.07 6171
22 NFS를 통해 파일시스템 공유 makersweb 2018.03.05 1077
21 Wayland에 대한 간단한 소개 file makersweb 2017.12.29 2760