X Window System ; X 윈도우 시스템

X 윈도우[엑스 윈도우] 시스템은 리눅스를 비롯해 대부분의 유닉스에 채용되어 있는 혁신적이면서 네트웍 투명성을 보장하는 그래픽 환경 기반의 시스템 소프트웨어이다. 1984년 미국의 MIT에서 공개해 현재 모습으로 발전했고, 최근 리눅스가 각광을 받으면서 보다 보편적인 환경으로 다가서는 상황이다.

X 윈도우는 윈도우 시스템에 있어 사실상의 표준이라 할 수 있으며, 오픈그룹에 의해 관리되고 있다. 비록 현재 많은 사용자들은 윈도우95나 윈도우NT가 윈도우 시스템의 전부인 것처럼 인식하고 있지만, 그것은 어디까지나 특정 시스템에 설치되고 운영될 수 있도록 마이크로소프트가 만든 것으로, 많은 X 윈도우 제품 중 하나에 지나지 않는다고 해야할 것이다.

X 윈도우는 DEC의 Athena 프로젝트의 일환으로, MIT의 컴퓨터학과 연구실에서 처음 개발하기 시작했다. 최초의 모습은 1984년에 드러났지만, 보다 구체적인 형태는 1986년 X10.4가 공개되면서 갖추기 시작했다. 1987년 가을에 현재의 모습과 유사한 X 윈도우인 X11이 만들어졌다. X윈도우의 참조 모델은 Palo Alto 연구소의 Parc와 Star로, 이는 단순히 윈도우, 아이콘, 메뉴 및 포인터 등의 인터페이스를 화면에 나타낸 것뿐만 아니라 컴퓨터 역사의 한 획을 긋는 혁명적인 시도였다.

X11이 공개된 후 수많은 워크스테이션 업체에서 X 윈도우를 표준 윈도우 시스템으로 채택하기 시작했고, 기술개발과 배포를 위해 여러 업체가 모여 X 컨소시엄을 결성, 관리하게 되었다. 그 후 X 컨소시엄이 오픈그룹 산하단체로 바뀌었지만 근본적인 변화는 없으며 비교적 자유로운 라이선스로 인해 무료 또는 저렴한 가격으로 누구나 사용할 수 있다. 이렇듯 X 컨소시엄의 규격에 부합한다면 누구든지 X 윈도우를 개발할 수 있기 때문에 다양한 상용 또는 공개 X 서버가 발표된 상태이다.

리눅스에 있어 표준으로 사용되는 것은 XFree86이다. XFree86은 인텔의 x86 프로세서 기반의 환경에서 동작하는 X 서버로, 별도로 제품을 구입할 필요 없이 무료로 사용할 수 있다.

X 윈도우의 핵심은 기본 윈도우시스템이고, X 윈도우를 구성하는 각 계층은 기본 윈도우시스템 위에 놓이게 된다. 기본 윈도우시스템은 특정 정책 대신에 메커니즘을 제공하는 역할을 가지고 있는데, 예를 들면 그림을 그린다거나 폰트를 출력하는 등의 메커니즘이 그것이다.

기본 윈도우시스템은 X 프로토콜을 사용해 외부 인터페이스를 구성한다, 이 프로토콜은 프로세서가 하나이든 여러 개이든 상관없이 동작하도록 설계되었으며, 이로 인해 X 윈도우는 네트웍 투명성과 장치 독립성을 확보하게 되었다. 그림에서 보듯이 기본 윈도우시스템으로 접근하려면 X 프로토콜을 거쳐야 한다. 또한 아무리 특권을 가진 소프트웨어라도 X 프로토콜을 거치지 않고 직접 기본 윈도우시스템에 접근할 수는 없으며, 모든 동작은 X 프로토콜 중심으로 움직인다. 윈도우 매니저와 세션 매니저 같은 소프트웨어는 특권을 가진 시스템 소프트웨어이지만, 이들도 예외 없이 X 윈도우에 의해 처리된다. 하지만 X 윈도우 애플리케이션은 X 프로토콜을 직접 건드리지 않고 별도의 API를 통해 동작한다. X 라이브러리는 X 프로토콜에 관련된 다양한 기능을 갖고 있는 C 언어 서브루틴 API로, X 프로토콜에 대한 인터페이스 기능과 기본 윈도우시스템에 적용되는 기능을 제공한다. 결국 화면에 나타나는 사용자 인터페이스는 기본 윈도우시스템, X 툴킷, 윈도우 매니저, 세션 매니저 그리고 애플리케이션이 결합된 것이다.

오픈그룹에서 제공하고 있는 X 프로토콜에 관한 정보를 참조하시기 바랍니다.


이 정보는 1999년 6월 3일에 수정되었습니다.
영어판(whatis.com)