3D혁명 리눅스가 불 지른다.

2006-11-28     PC사랑
 

그렇다면 리눅스의 3D 혁명을 몰고 올 것으로 기대되는 XGL은 과연 어떤 기술일까? 이를 알려면 리눅스 구조부터 이해해야 한다. 그림처럼 리눅스 커널 위에는 X서버가 자리를 잡는다. 텍스트 기반의 유닉스를 GUI 방식으로 관리하는 X서버는 리눅스에서도 그래픽 칩을 제어해 화면을 구성한다.
그리고 이 X서버는 그놈(GNOME)이나 KDE와 연결된다. 흔히 그놈이나 KDE를 리눅스 GUI라고 하지만 사실은 X서버 위에서 돌아가는 라이브러리 시스템일 뿐이다. X서버에 갖가지 라이브러리 자원을 서비스해 화려한 그래픽을 더욱 빠르게 처리하도록 돕는 일종의 플랫폼이다. 마지막으로 사람의 명령을 X서버나 그놈(또는 KDE)에 전달하는 윈도 매니저가 빠지지 않는다.

결국 리눅스는 디스플레이라는 하드웨어 자원을 직접 제어하는 X서버, 화려한 그래픽 소스를 갖춘 그놈/KDE, 이용자의 명령을 시스템에 전달하는 윈도 매니저가 톱니바퀴처럼 맞물려 돌아간다. XGL은 이 기본 틀에서 X서버를 대신해 2D는 물론 3D까지 처리한다. 이 과정에서 속도를 높이려고 오픈 GL를 이용하는데, XGL의 원래 이름이 X-to-OpenGL인 것은 그래서다. 구조적으로 XGL은 X서버를 대신하므로 당연히 그 위에서는 그놈이나 KDE가 돌아가고, compiz라는 윈도 매니저가 사람의 명령을 전달한다.

XGL 이용자들 조금씩 늘어

올초 노벨이 코드를 공개하면서 XGL은 기술 개발을 뛰어넘어 실용화 단계에 접어들었다. 지난 3월 8일 코로라(//kororaa.org)는 XGL 라이브 CD(PC에 까는 대신 드라이브에서 바로 실행하는 CD)를 내놓았다. 당시 코로라가 내건 시스템 제원은 AMD 애슬론 XP 2200+, 엔비디아 지포스 5200, 512MB 메모리다. 3D를 흉내만 내는 윈도 비스타도 1GB 이상의 메모리를 쓰는 것에 대면 파격적인 조건이다.
XGL의 매력은 이처럼 낮은 제원에서도 3D를 쌩쌩 돌릴 수 있다는 것이다. 고사양을 좇는 윈도 비스타의 대안 운영체제로 리눅스가 기대를 모으는 이유다. ‘수세 리눅스 10.1’과 ‘수세 리눅스 엔터프라이즈 데스크탑 10’에서 XGL 기술을 담금질하는 노벨의 최근 움직임이 윈도 비스타의 출시와 맞물려 더욱 눈길을 끈다.
세계 최대 리눅스 데스크탑 프로젝트인 ‘우분투’(ubuntu)도 노벨만큼이나 XGL에 관심을 갖는다. ‘우분투포럼’(www.ubuntuforums.org)에는 수많은 개발자들이 달라붙어 한쪽에서는 개발을, 한쪽에서는 테스트를 하느라 분주하다. 우분투 진영에서는 “개발 주기가 하루가 아니라 몇 시간 단위로 이뤄진다. 미국 사람들이 코딩을 하다 잠시 쉬면 유럽 사람들이 넘겨받아 코딩을 계속 한다”는 말이 나돌 정도로 열기가 뜨겁다.
유넷시스템의 김경수씨도 우분투 리눅스에서 XGL을 돌린다. 지난 2월 노벨이 발표한 동영상을 우연히 접한 뒤 지금까지 XGL을 쓰고 있는 그는 “그놈과 KDE 중에서는 그놈이 XGL과 궁합이 맞는다”고 귀띔했다. KDE보다 그놈이 XGL과 더 잘 맞는 이유는 여러 가지이지만, 리눅스원의 김현진 대리는 “XGL 개발을 이끄는 커뮤니티가 그놈 진영과 가깝기 때문”이라고 해석했다. 물론 KDE에서도 XGL이 돌아가지만 그놈보다는 손이 많이 간다.
궁합과 관련해서는 그래픽카드도 눈여겨봐야 한다. 앞서 코로라의 시스템 제원도 그렇고, 김경수씨도 그렇고 엔비디아의 그래픽카드를 쓰는 게 눈에 띈다. ATi를 제쳐놓고 엔비디아가 XGL의 짝으로 선택받은 이유는 ATi에서는 XGL이 정상적으로 돌아가지 않기 때문이다. ‘플랜 9’이라는 블로그(//plan9.charislaurencreative.com)에 “ATi에서 XGL이 문제를 일으킨다”는 사용기가 올라와 있는 것도 ATi와 XGL의 불협화음을 증명한다

국내 업체들 “내년엔 3D 리눅스다”

XGL의 노벨과 AICLX의 레드햇은 적어도 내년부터는 3D 바람을 일으키겠다는 각오다. 우분투와 페도라 등 여러 커뮤니티에서도 이런 움직임에 힘을 보태고 있다. 국내에서도 조심스럽게 변화가 엿보인다.
한글과컴퓨터는 내년 초 선보일 리눅스 데스크탑에 AIGLX를 쓰기로 하고 막바지 작업에 한창이다. 한컴의 이규석 대리는 “베타 버전의 개발이 끝난 상태다. 내년에는 3D 리눅스를 만날 수 있을 것”이라고 귀띔했다. 한컴이 XGL 대신 AIGLX를 쓰는 것은 오래 전부터 레드햇 기반 기술을 쌓아왔기 때문이다.
반면에 리눅스원은 XGL을 얹은 데스크탑 리눅스 ‘그루’를 준비 중이다. 리눅스원의 김현진 대리는 “XGL 테스트를 끝내고 지금은 버그를 잡고 있다”면서 내년을 3D 리눅스의 출시 적기로 점쳤다. 그러나 한컴에 비해 개발 인력이 넉넉지 않아 생각만큼 서두르지 못하는 눈치다. 또 다른 리눅스 중견 업체인 아이겟리눅스도 XGL를 준비하면서 시장의 반응을 조심스럽게 살피고 있다.
국내외 리눅스 업체들이 XGL이나 AICLX를 이처럼 적극 끌어안으면서 3D 리눅스의 출시는 초읽기에 들어갔지만 성공여부는 미지수다. 가장 큰 문제는 그래픽카드 드라이버다. XGL이 엔비디아와 궁합이 맞는다고 하지만 어디까지나 ATi와 비교해서다. 엔비디아의 모든 제품이 3D를 돌릴 수 있는 것은 아니다. XGL보다는 ATi에 가까운 AICLX도 몇몇 제품에서만 작동하는 게 현실이다. 한컴의 이규석 대리는 “오픈소스 진영에서 모든 드라이버를 리눅스용으로 만들 수는 없다”면서 “결국은 가장 대중적인 그래픽카드에서만 3D를 맛볼 수 있을 것”이라고 아쉬워했다. 리눅스 진영에서 “그래픽카드 업체들이 소스를 공개해주거나 리눅스용 드라이버 개발에 적극적으로 나서줄 것”을 요구하는 것은 드라이버 문제가 해결되어야 비로소 3D 리눅스가 순항을 할 수 있어서다. 현재로서는 드라이버가 최대복병이다. 그러나 이런 한계에도 불구하고 3D 리눅스가 개인 시장에 신선한 바람을 일으킬 것임은 분명해 보인다.







리눅스 배포판 XGL 설치 가이드
우분투 리눅스 : //www.ubuntuforums.org/showthread.php?t=127090
페도라 코어 : //www.sailingcrusade.com/?page_id=39
젠투 리눅스 : //gentoo-wiki.com/HOWTO_XGL
리눅스도 낯선데 XGL이라고 하니까, 남의 얘기처럼 들리지만 리눅스에 조금만 관심이 있다면 도전해볼 만하다. 내 PC에서 XGL을 돌리려면 크게 두 가지 과정이 필요하다. 첫째, 리눅스를 설치한다. 둘째, XGL을 설치한다. 여기서는 우분투 리눅스에 XGL을 깔아보자.

① 우분투 설치
여러 가지 리눅스 버전 중에서 필자는 우분투를 권한다. 우분투 리눅스는 우분투 한국 사이트(//www.ubuntu.or.kr)에서 구할 수 있다. 이 사이트에 들어가면 우분투에 대한 소식부터 CD를 구하는 방법까지 소개해준다. 메인 페이지에서 contents를 찾아 ‘시디구하기 및 릴리즈’를 누른 다음 ‘안정 버전’ 링크로 넘어간다. 대퍼드레이크(//www.ubuntu.or.kr/wiki.php/DapperDrake) 페이지가 열리면 contents에서 ‘1.4 6.06 CD주문’을 눌러 ‘빠른 미러 서버’에서 첫 번째 링크인 //ftp.kaist.ac.kr/pub/ubuntu-cd/6.06.1/을 누른 다음 PC용 데스크탑 CD를 내려받는다. 이 ISO 파일을 네로를 이용해 설치 CD로 만든다. PC사랑 홈페이지 애프터서비스 게시판에서도 ISO 파일을 받을 수 있다.
우분투 설치가 끝나면 이제 준비할 것은 없다. 아래 단계를 따라 명령만 내리면 드라이버나 compiz, xgl 등 필요한 것을 알아서 내려받아 깔기 때문이다.

② 엔비디아 드라이버 설치
XGL은 ATi보다는 엔비디아와 궁합이 잘 맞다. 자신의 그래픽카드가 엔비디아이라면 3D 리눅스를 돌릴 수 있다. 우분투로 부팅한 뒤 그놈 터미널에서 다음과 같이 입력해서 드라이버를 깐다.

$ sudo apt-get install nvidia-glx

③ compiz를 설치할 패키지 저장소
마찬가지로 그놈 터미널을 띄워 다음 명령을 입력한다.

$ sudo gedit /etc/apt/sources.list
텍스트 편집기에서 가장 밑에 아래 주소를 적어준다.
deb //www.beerorkid.com/compiz dapper main
deb //media.blutkind.org/xgl/ dapper main
deb //ubuntu.compiz.net/ dapper main
deb //xgl.compiz.info/ dapper main


④ XGL 서버 설치하기
먼저, 다음 명령어로 비공식 패키지 설치를 위한 키 값을 가져온다.

$ gpg --keyserver subkeys.pgp.net --recv-keys 0x31a5f97fed8a569e$ gpg --export --armor 0x31a5f97fed8a569e | sudo apt-key add -
그리고 다음 명령어를 패키지 리스트를 갱신한다.
$ sudo apt-get update
$ sudo apt-get dist-upgrade
이제 xgl-server를 설치한다.
$ sudo apt-get install xserver-xgl
⑤ XGL 세션 등록하기다음 명령어로 새로운 파일을 연다.
$ sudo gedit /usr/bin/startxgl.sh
텍스트 편집기에서 아래 내용을 채워 넣고 파일을 저장한다.
#!/bin/shXgl :1 -fullscreen -ac -accel xv:fbo -accel glx:pbuffer &DISPLAY=:1exec gnome-session
다음 명령어를 통해 새로 만든 파일을 실행하게 만든다.
$ sudo chmod +x /usr/bin/startxgl.sh

이제는 gdm에서 xgl
세션을 선택할 수 있도록 하기 위해서 다음 명령어로 새로운 파일을 연다.

$ sudo gedit /usr/share/xsession/xgl.desktop
그리고 아래 내용을 채워 넣고 파일을 저장한다.
[Desktop Entry]Encoding=UTF-8Name=XglComment=Start an Xgl SessionExec=/usr/bin/startxgl.shIcon=Type=Application
이제 xgl 세션으로 로그인하기 위해 잠시 로그아웃해서 초기 로그인 화면으로 돌아간다. 왼쪽 밑의 옵션에서 세션 선택 메뉴를 누르면 세션을 고르는 창이 열린다. 여기서 Xgl을 고른다.그리고 다시 로그인한 다음 앞으로 바뀐 세션을 계속 적용할 지를 묻는데 ‘예’로 답하면 앞으로 기본으로 Xgl을 쓴다.

⑥ compiz 설치와 실행
로그인이 끝나면 다시 그놈 터미널에서 다음 명령을 통해 compiz와 필요한패키지들을 깐다. 모두 한 줄에 입력해야 한다.

$ sudo apt-get install compiz compiz-core compiz-manager compiz-gnome compiz-plugins cgwd cgwd-themes csm
이제 다음 명령으로 3D 데스크탑 화면을 볼 수 있다.
$ compiz-start