9P by joone 2022-11-01 | favorite | 댓글과 토론
  • 실리콘 그래픽스는 3D 그래픽에 특화된 워크스테이션 제조사로서 3D API인 OpenGL 제안하고 X-Window용 GLX 확장을 오픈소스화함.
  • GLX는 기존 X-Window의 아키텍처에 안에서 구현되다 보니, 모든 OpenGL 명령어가 IPC를 통해 OpenGL 프로그램에서 X 서버로 전송되는 문제가 있음.
  • 2004년 노벨은 리눅스용 윈도 컴포지터인 컴피즈 개발하면서 바로 OpenGL을 사용할 수 있는 XGL 개발. 이후 DRI 사용.
  • GPU가속 지원을 위해 X 윈도우가 네트워크 투명성(Network Transparency)를 포기하면서 많은 기능들이 사용되지 않게 됨.
  • 하지만, X윈도 시스템은 X 서버, 윈도 관리자, 윈도 컴포지터 등 여러 프로세스로 나누지고, 이 모든 부분은 복잡한 비동기 프로토콜로 연결되고, 결과적으로 성능이 저하.
  • 직접 하드웨어에 접근하므로 루트 권한으로 실행되어야 하므로 보안 문제도 있음.
  • 레드헷에서 X-Window개발자로 일하고 있던 Kristian Høgsberg은 Wayland라는 윈도 컴포지터 프로토콜을 정의하고 Weston이라는 실제 구현체를 공개.
  • X-Server가 갖고 있는 event handling, memory management, command scheduling, mode setting 기능을 Linux Kernel로 이동하여 evdev, KMS(Kernel Module Setting) 와 GEM 커널 모듈이 됨.
  • painting은 client가 다 하고, Window compositor는 커널에 집적 접근하고 창 관리와 컴포지팅 기능만 제공.
  • ChromeOS와 GNOME, KDE Desktop에 모두에 적용되어 X-Window없이도 데스크탑 구현이 가능.