다음 이전 차례

8. 무엇이든 물어보세요: 글라이드와 XFree86?

8.1 XFree86환경에서 글라이드의 실행이 가능합니까?

우선 알아야 할 사실은, 부두 그래픽(tm)의 하드웨어의 사용은 XFree86과 상관이 없다는 것입니다. VGA카드의 비디오입력신호가 3D가속기 를 통해서 모니터의 출력을 나타낼 경우에도 X 서버에서는 VGA카드에서 나오는 비디오입력신호가 디스플레이에 가는지 알아채지 못합니다. 애플리케이션이 X의 이러한 환경을 고려하지 않고 쓰였다면 글라이드가 그래픽모드를 바꾸는데 문제가 생길 수 있습니다. (문제해결하기 부분을 참조해주세요.) X11의 이러한 환경에 하나하나 신경쓰기 싫다면 SVGA 콘솔모드를 사용하는것으로도 간단하게 해결됩니다. XFree86에서의 조건을 따라주면 글라이드 API를 사용한 애플리케이션의 실행이 XFree86의 환경에서 실행이 가능합니다. 메사에서의 "윈도우 해킹 -window hack"을 사용하면 풀스크린을 사용하는 것보다는 상당히 느려지지만 소프트웨어로 렌더링을 하는것보다는 훨씬 빠릅니다.

8.2 글라이드를 사용한 애플리케이션은 풀스크린모드에서만 실행가능합니까?

바로 위 8.1을 참고해 주세요. 부두그래픽(tm)은 윈도우를 사용하는 환경을 고려하지 않고 디자인이 되었기때문에 글라이드도 이 하드웨어의 때문에 기능이 제한이 됩니다. 밑에서 다룬 메사의 "윈도우 해킹"은 아직은 초기개발단계이기는 하지만 부두그래픽(tm)에서 발생한 프레임버퍼의 내용을 X11의 윈도우로 복사하게 해 줍니다.

8.3 AT3D와 부두 러쉬(tm) 사용문제

부두러쉬(tm)는 독자적으로 VGA카드겸 2D/3D가속기기능을 하거나 부두러쉬(tm)을 다른보드에 붙여서 사용하도록 설계가 되었기때문에 리눅스와는 근본적인 호환성문제가 있습니다. VGA보드부분은 Alliance Semiconductor의 프로모션-AT-3D멀티미디어 가속기의 칩셋을 사용하기 때문에 부두러쉬(tm)카드를 XFree86환경에서 사용하려면 AT3D칩셋의 리눅스용 드라이버가 필요합니다. 부두러쉬(tm)카드의 사용시 일어날 수 있는 문제를 토론하는 메일링리스트가 존재하며, www.frozenwave.com /linux-stingray128 에서는 계속해서 최신소식을 업데이트해 주며 FAQ를 개제합니다. AT3D의 드라이버는 SuSe에서 관리하고 있으며, 이 드라이버의 위치는 ftp.suse.com/suse_update/special/xat3d.tgz 입니다. 여러 유저들의 경험담을 빌면, 부두러쉬(tm)는 XFreeSVGA서버로 8, 16 그리고 32 bpp모드로 돌릴 수 있다고 합니다. 공식적인 지원은 XFree4.0 에서나 가능한 모양입니다. XFree86측에서는 부두러쉬(tm)의 사용문제가 해결이 되었다고 생각되는 XFree86 3.3.2의 테스트용 배포판을 계획하고 있습니다. 부두러쉬(tm)를 사용하려면 다음의 XF86Config세팅을 시도해 보십시오.


  # device section settings
  Chipset "AT24"
  Videoram 4032  (역자주:  이거 오타가 아닌가요?  4096아닌가??)
  # videomodes tested by Oliver Schaertel
  #  25.18  28.32  for 640 x 480   (70hz)
  #  61.60         for 1024 x 786  (60hz)
  #  120           for 1280 x 1024 (66hz)

결국, XFree86용 드라이버가 완성이 되지 않았다는 사실을 빼면 부두러쉬(tm)을 사용못할 이유는 없습니다. 부두러쉬(tm)를 기반으로하는 그래픽카드에서는 기존의 비디오램(!)을 비디오램用, 2D/3D 가속기의 back 버퍼 및 z 버퍼用으로 같이 사용합니다. (역자주: 다목적 비디오램이라 하면 맞을까요?) 이렇게 여러가지 목적으로 비디오램이 사용되기때문에 XFree86에서도 이것을 인식을 해 주어야 합니다. 이런 메모리할당과 메모리잠금문제는 3Dfx제품의 디자인 의 문제로 일어나는 것이 아니라 TV 캡쳐카드의 지원같은 사항에도 해당되기 때문에 XFree86팀에서도 계속적으로 이에대한 연구를 하고 있는 상황입니다. 현재 XFree86 DGA(Direct Graphic Access, 다이렉트 그래픽 액세스 - 선마이크로시스템즈와 XFree86에서 표준을 합의보지 못한 관계로 최종적으로 발표될 X11R6.1의 표준에 포함되지 않아 포팅이 불가능합니다.)의 확장으로서 사용되는 X 레벨(혹은 XAA)의 소스코드를 바꾸는 것을 의미합니다. 이 소스코드의 변경은 차후에 개발될 XFree86 GLX에 들어갈 가능성이 있습니다. 현재 배포되는 X서버는 유저가 프레임버퍼를 모두 제어하는것이라 가정하여 직접적인 비디오출력에 관련된 프레임버퍼이외에는 모두 pixmap 캐쉬(글꼴캐쉬같은거...)로 사용합니다.

8.4 XFree86용 GLX에 관한사항

여기에는 몇가지 문제점이 있습니다. 현제 지원되는 부두그래픽(tm) 하드웨어와 리눅스용으로 포팅이 된 리눅스글라이드는 풀스크린 모드만 지원하며 프레임버퍼를 윈도우환경과 공유하도록 설계가 되어있지 않습니다. 그러므로 GLX 혹은 X11의 다른 부분과 통합환경으로 사용하는 것은 아직은 불가능합니다. 부두러쉬(tm)는 XFree86 SVGA 서버를 사용하는 방법으로 XFree86에서 사용하는것이 가능할 지도 모르지만 부두러쉬(tm)은 아직 리눅스용 글라이드에서 지원이 안되며 S3같은 XFree86서버에서도 지원을 하지 않습니다. 리눅스의 경우에 GLX는 메사에 의존합니다(보통은 OpenGL입니다.). XFree86팀은 현재는 메사를 X서버와 통합시키는데 작업을 하고 있습니다. GLX는 아직은 베타버젼인 관계로 XFree86은 GLX와 연결하는 부분만 작업이 끝났습니다. Steve Parker (스티브 파커)씨의 www.cs.utah.edu/~sparker/xfree86-3d/ftp.sigkill.org/pub/XFree86/opengl/를 참조해 주세요. 그리고 XFree86과 SuSe에서 같이 작업중인 GLX부분은 www.suse.de/~sim/ 를 참조해 주세요. 현재로서 리눅스 환경에서 메사는 GLX에뮬레이션을 사용하고 있습니다.

8.5 글라이드와 상업용 X서버

글라이드와 메사를 상업용 X 서버에서 사용하는 것에 관한 이메일을 필자는 아직 받아보지 못했습니다. 글라이드와 상업용 X서버관한 사항을 저에게 이메일을 보내주시면 감사하겠습니다. 특히 상업용 GLX를 지원하는 상업용 X서버에서의 메사와 글라이드의 사용에 관한 것이라면 더욱 환영 합니다.

8.6 글라이드와 SVGA

글라이드를 사용하는 애플리케이션은 모니터를 하나를 사용하던 두개를 사용하던 VGA모드로만 한다면 아무런 문제가 없을것입니다. 만약 모니터를 하나만 사용한다면 SVGA모드에서 640x480해상도로 설정해서 사용하는것도 괜찮은 방법입니다.

8.7 글라이드와 GGI

글라이드용 GGI드라이버는 Jon M. Taylor씨께서 개발을 하고 있지만 공식적으로 배포가 되지 않았으며 GGI 0.0.9의 완성때까지 배포계획은 없습니다. GGI에 관한 정보는 synergy.caltech.edu/~ggi/ 를 참조해 주십시오. 만약 관심이 있다면 XGGI (GGI를 기반으로하는 XFree86용 X서버) 프로젝트에 뛰어드는것도 괜찮을 것 같습니다. 가속기를 사용하지 않는 메사 환경에서 테스트가 된GGI드라이버가 존재하기는 합니다. 이 GGI드라이버는 OpenGL API를 인터페이스로 사용합니다. 알맹이만 말하자면, 이건 메사, 혹은 글라이드용해서 부두그래픽(tm) 에서 바로 X11R6를 사용한다는 겁니다.


다음 이전 차례