X 윈도우 시스템

위키백과 ― 우리 모두의 백과사전.

이 문서는 편집 지침에 맞춰 다듬어야 합니다.

X 윈도우 시스템(X Windows System, 흔히 X11, X로 불려짐)은 XFree86(http://www.xfree86.org) 그룹에 의해서 개발된 그래픽 사용자 인터페이스를 제공하는 데스크톱 작업 환경으로, 레드햇을 비롯한 많은 리눅스 배포판에서 기본 X 윈도우 시스템으로 사용되고 있다. X 윈도우 시스템은 서버와 클라이언트의 네트워크 모델을 지원하여 X서버와 X클라이언트가 서로 분리되어 작동되도록 설계되어 X 서버의 프로그램을 X 윈도우 클라이언트가 이용할 수 있는 것이 큰 특징 중의 하나이다. X 윈도우에서는 아이콘,메뉴,패널을 자유자재로 사용할 수 있게 해 주는 창 관리자와 오픈 데스크톱 환경으로 KDE,Gnome,Xfce 등을 사용할 수 있도록 지원하고 있다.

[편집] X 윈도우 시스템의 역사

X 윈도우는 원래 플랫폼과 독립적으로 작동하는 그래픽 시스템 개발을 위해 IBMMIT,DEC공동의 아데나 프로젝트를 통해서 Bob Scheifler와 Jim Gettys에 의해서 1984년에 처음 개발되어, 그 후 지속적인 개발을 통해 1987년에 X11버전이 개발되었다. 1986년에 Bob Scheifler에 의해서 누구나 자유롭게 X를 사용하고 배포할 수 있도록 오픈 소스 프로젝트 디자인이 만들어지고, 1987년에 이러한 오픈 소스 프로젝트하에 X11이 발표된다. 1988년에 수많은 컴퓨터 제조업체로 이뤄진 X컨소시움이 조직되고, X컨소시움에 의해서 X11버전이 처음으로 개정되어 X11R2가 발표되고, 1996년에는 최종 개정판인 X11R6 버전을 내놓게 되고, X11R6.3 버전을 끝으로 X컨소시움은 해체되었다.

오픈 소프트웨어 재단과 X/Open으로 형성된 오픈 그룹에 의해 1998년에 X11R6.4버전이 발표되었지만, 오픈 그룹은 기존 공개 배포 라이선스 정책을 무시한 채, XFree86와 같은 수많은 프로젝트와 일부 상용 제조업체들의 참여를 가로막는 새로운 라이선스로 인한 잡음으로 결국에는 그 해 가을 기존 배포 라이선스 정책에 따라 X11R6.4버전을 다시 배포하게 되었다. 1999년 오픈 그룹은 X.org를 만들고, X.org에 의해서 X11R6.5.1이 나오게 되었다.

2004년에는 X.org재단이 만들어지고, XFree86 4.4RC2와 X11R6.6을 기반으로한 X11R6.7버전이 개발되었다. 2004년 9월에는 X11R6.8버전을 발표하였는데, 이 버전은 투명 윈도우 지원, 체계적인 시각 효과 및 해상도 변경 기능, 3D 가상현실 디스플레이 장치 도구 지원, 썸네일 기능 등 다양한 시각적인 기능과 효과를 지원한다.

[편집] X의 특징

X 윈도우가 그래픽 사용자 인터페이스 환경으로써 다른 GUI시스템과 다른 점은 네트워크 프로토콜(X프로토콜)을 기반한 클라이언트와 서버 모델의 네트워크 지향 그래픽 시스템이라는 점이다. X 응용 프로그램은 자신이 클라이언트로써 네트워크로 X 서버에 접속하여 X 서버에게 명령 서비스(예를 들면, '굴림 글꼴을 출력'해 달라는 요청하던지 또는 '마우스 포인트를 여기로 옮겨라' 등등)를 요청하면, X 서버는 이러한 명령 요청을 받아 글꼴 서버를 통해서 굴림 글꼴을 보여 주거나, 응용 프로그램에서 마우스 위치를 이동시켜 준다. 이와 같이 X 클라이언트는 X 서버에서 동작하면서 서버에게 명령을 전달하고, X 서버는 클라이언트에게 명령 요청의 결과를 화면에 출력해 주거나 키보드, 마우스, 터치스크린 등과 같은 사용자의 입력을 클라이언트에게 제공해 주는 역할을 한다.

X의 클라이언트/서버의 네트워크 지향 시스템 구조는 로컬상의 엑스 서버에서 다른 시스템의 X 클라이언트의 요청을 받아들일 수 있는 또 다른 특징을 제공해 준다. 이것은 다른 시스템에 있는 응용 프로그램을 로컬상의 X에서 실행시킬 수 있음을 의미하는 것으로써 예를 들어, 로컬상의 X 시스템에서는 파이어폭스가 설치되어 있지 않더라도 다른 원격 시스템에 파이어폭스가 설치되어 있다면 원격 시스템에 텔넷이나 SSH로 접속하여 로그인한 후 파이어폭스를 실행하면 로컬 X 서버에서 제공하는 화면 출력을 이용하여 원격 시스템에서 파이어폭스를 사용할수 있다는 말이다. 이 때 X 응용 프로그램의 디스플레이는 로컬 X 서버에서 처리되기 때문에, 원격 시스템에서는 X서버가 없어도 상관이 없다.