메뉴 바로가기 검색 및 카테고리 바로가기 본문 바로가기

한빛출판네트워크

IT/모바일

PDA에 리눅스를

한빛미디어

|

2001-06-05

|

by HANBIT

10,386

By 크리스 홀설(Chris Halsall), 역 한빛 리포터 1기 김관석 몇 달 전 핸드폰의 기판이 뽀개지는 사고가 났다. 덕분에 몇 년간 쌓아온 지인들의 연락처를 모두 잃어 버리고 말았다. 다행히 많은 사람들의 연락처를 알아 내어 다시 새 핸드폰에 저장했지만 그렇지 못한 사람들은 연락할 방법조차 없어 안타깝기 그지 없었다. PDA 즉 개인용 디지털 보조기만 있었더라면 하는 생각이 들었다. 아직 경제적인 여건이 닿지 않아 PDA를 구입할 수는 없지만, 나날이 늘어가고 빵빵한 사양으로 포스트 PC라는 커다란 물결을 일으키는 PDA와 늘 신비로움을 간직하고 있는 데스크탑과 서버, 이제는 임베디드까지 아우르는 리눅스와의 만남이 예사롭지 않다. 그래서 이렇게 형편없는 영어실력에도 불구하고 PDA에서 리눅스의 또 다른 탄생을 알리는 소개의 글을 맡게 되었다.
모두가 사무실이나 집 혹은 지구상 어디에서든지 항상 컴퓨터를 곁에 놓고 있기를 원할 것이다. 게다가 리눅스와 같은 진짜 운영체제까지 돌아간다면 더할 나위 없다. 과거에는 모바일 리눅스용으로는 랩탑만을 선택할 수 있었지만 점차 바뀌어가고 있다. 현재 컴팩의 iPAQ, 아젠다 컴퓨팅의 VR3와 G.메이트의 Yopy를 포함한 여러 핸드 헬드 기기가 리눅스를 운영할 정도의 능력을 갖추고 있다. 리눅스를 구동할 수 있는 기기는 많아서 일부 팜 기기에서도 리눅스를 돌릴 수 있다. 하지만 여기서 논하는 세 가지 기기는 제작사에서 직접 리눅스를 구동하게끔 개발을 지원한다는 점에서 특히 흥미로우며 이들은 현재 모두 구할 수 있다. 사실 VR3와 Yopy는 공장에서 미리 리눅스가 설치된 채 시판이 된다. 반면 3630이나 3650과 같은 iPAQ 기기는 Windows for Pocket PC가 설치되어 출시되며, 구입한 이후에 이를 완전히 지우고 리눅스를 설치해야만 한다. 이는 최종 사용자가 무엇을 사용하든지 간에 빌 게이츠가 금액의 일부를 챙긴다는 뜻이다. 이 글이 게재될 때까지는 VR3와 Yopy의 개발자 버전만이 출시되어 있다. 아젠다 컴퓨팅은 사용자 버전을 2001년 5월 21일에 출시한다고 밝혔으며, G.메이트는 올해 3/4분기에 사용자 버전을 출시한다고 최근에 발표하였다.


좌측에서부터 Agenda의 VR3, 컴팩의 iPAQ, G.메이트의 Yopy

리눅스가 팜이나 윈도우 CE보다 우위에 설 수 있을까? 핸드 헬드 기기에서 배시 프롬프트가 진짜로 필요할까? 이 글과 이후에 연재되는 세 글에서 위 질문에 대한 답을 서술할 것이다. 현재의 시장 상황 일부 보고서에 따르면, 팜 플랫폼은 2000년 말 미국 시장의 90% 이상을 장악하면서 PDA(개인용 디지털 보조기) 시장의 가장 성공적인 케이스가 되었으며, 핸드 헬드 기기의 독립 소프트웨어의 기장 큰 비중도 팜 플랫폼이 차지하고 있다. 팜 사(社)는 많은 애플리케이션을 개발하는 개발자 모임을 만들고 지원함으로써 이와 같은 성공을 얻을 수 있었다. 팜사에서는 열린 개발 환경을 제공했는데, 무료 툴과 애플리케이션, 대부분의 운영 체제 소스에 대한 자유로운 접근 등이 이에 포함된다. 최근에 팜은 핸드스프링(Handspring)과 소니 등의 제 3자에게 OS를 라이선싱하고 있기도 하다. 불행히도, 비교적 성능이 떨어지는 프로세서 기반에서 사용의 편리함을 이용하여 시장을 파고드는 동안 팜은 그 한계를 드러내고 있다. 현재 컬러 버전이 출시되고 기본 160 x 160을 2배로 늘린 디스플레이를 제공하는 새로운 모델이 출시되고는 있지만, OS 자체에 문제점이 많다. 멀티 태스킹과 프로세스간 통신(IPC) 같은 개념은 팜 OS에는 생소한 개념인 것이다. 유용한 제품을 만들기까지 수많은 시도를 하는 MS의 Windows for Pocket PC (흔히 윈도우 CE나 윈CE로 불린다)는 현재 눈에 띄게 팜의 시장을 잠식하고 있다. 윈CE는 HP나 컴팩에서 제조하는 풀 컬러 디스플레이의 강력한 기기에 힘입어 등장하고 있다. 이의 하드웨어는 매우 인상적이다. 고급 프로그램까지 만족시키는 200MHz에서 구동하는 32비트 프로세서에 8~64메가의 메모리, 백 라이팅 기능의 컬러 디스플레이가 그것이다. CF, PCI 확장 기능은 메모리, 저장, NC, 802.11, GPS, 블루투스 등의 가능성을 보여주며 사람들의 넋을 나가게 할 정도다. PDA의 리눅스 이 글을 읽는 사람들은 이미 알고 있겠지만 리눅스나 다른 무료 오픈 소스 소프트웨어를 핸드 헬드 기기에서 돌리는 것은 다른 기반에서 구동하는 것과 같다. 즉 직접 제어가 가능하고 백도어나 많은 프로그램 버그가 없다고 신뢰할 수 있다. 물론 망가져서 고치는 작업도 괜찮은 일이긴 하다. 이러한 특성은 PDA 제조업자에게도 요긴하다. 리눅스를 사용하면 30달러까지 하는 윈CE의 부담 없이 장비를 제조할 수 있기 때문이다. 그래서 아젠다 컴퓨팅이 자사 PDA에 윈CE 대신 리눅스를 사용하게 되었다. 리눅스의 성장으로 피해를 볼 업체는 없는 것이다. 하지만 단순히 리눅스를 핸드 헬드 기기에서 부팅하는 것과 사용하기에 완벽한 PDA를 제공하는 것은 분명히 다르다. 전자는 산을 오른다는 것에 비유할 수 있는데, 충분히 끈기 있게 도전하면 마침내 정상에 도달할 수 있다. 반면에 사용자 인터페이스는 예술과 같은 것이라서 거기에는 정확한 답이 없다. 커널과 시스템이라는 산에 오르는 동안 거쳐야 하는 영역이 있다. 핸드 헬드 기기는 32메가나 그 이하의 메모리 제약과 같은 문제를 해결해야 하는 것이다. 메모리가 가득 찼을 때 페이지를 옮길 스왑 영역이 없다면, 메모리가 부족하게 된다. 저장 매체 역시 흥미로운 리소스이며 대개 플래시 메모리에서 이용된다. 플래시의 속성은 100,000번 가량 밖에 쓸 수 없기 때문에, 구동 중에 특정 블럭에 쓰기를 행하는 리눅스의 대표적 파일 시스템 ext2는 알맞지 않다. 물론 쓸 수는 있겠지만 다른 작업을 하지도 않는데 메모리가 모두 닳아 버릴 수도 있다. 어떤 작업을 수행 중일 때 모르는 사이에 그 작업이 대기 상태로 바뀌어 버린 경험이 있을 것이다. 이 때문에 프로그램을 구동할 때엔, 프로그램이 시간을 인식하는 데 큰 격차가 있다는 것을 알아야 한다. 매일 주기적으로 새벽 3시에 구동되는 어떤 데몬이 있다면? 데몬이 갑자기 시간이 금요일 오후 5시 10분에서 월요일 8시 30분으로 되었을 때 무엇을 해야 할지 알게 하는 것이 더 좋을 것이다. 한가지 희소식은 여러 팀이 핸드 헬드 기기에 리눅스 환경을 구축하는 데 성공했다는 것이다. MIP 핸드 헬드 기기용 리눅스 VR 프로젝트와 ARM 프로세서에 기반한 PDA(Yopy나 iPAQ와 같은)용 Handhelds.org 등이 있다. 커널과 OS는 준비되었다. 이제 어떻게 할 것인가? 리눅스가 PDA 환경을 제공할 수 있을 것인가? 개인용 디지털 보조기는 그 정의와 같이 손 안에 들어오는 작은 크기의 컴퓨터만을 의미하는 것은 아니다. PDA의 세상에서 OS는 중요하지 않다. 단지 개인 정보 관리(PIM) 애플리케이션과 사용의 용이만이 필요할 뿐이다. 사용자가 하고자 하는 일을 빨리, 적은 입력으로 할 수 있는지, 애플리케이션이 일관된 인터페이스를 제공하는지, 문자 입력 방법은 적절하게 동작하는지 등의 문제가 중요하다. 팜의 창시자들은 위의 문제에 대해서 오랫동안 고심했고 대체로 훌륭하게 해결해 냈다. 팜 애플리케이션은 최소한의 것으로 필요한 자원을 활용해서 작업을 수행한다. 예를 들어 뉴튼이 필기체 인식에 있어서 지나치게 신경을 썼던 전례를 거울 삼아, 팜 OS에서는 입력 받는 움직임에 제한을 두어서 대신 사람이 이에 맞추도록 유도하는 방식을 사용했다. 따라서 PDA 시장에 뛰어들려면, 리눅스는 사용하는 데 편리해야 하며, 여러 플랫폼과 소프트웨어 간에 호환성이 뛰어나야 한다. 이러한 환경을 구축하기 위해서 현재 많은 실험을 하고 있다. 예를 들어 그래피컬한 윈도우 환경이 있다. X 윈도우가 최적의 솔루션일까? 그렇게 되면 애플리케이션의 포팅이 매우 손쉬워지고, 다른 X 윈도우 구동 컴퓨터에서 디스플레이를 임포트(import)나 엑스포트(export)하는 등의 멋진 일이 가능해진다. 하지만 가장 좋은 솔루션은 아니다. 프레임 버퍼로 직접 접근하는 방식이 나을지도 모른다. 이에 대한 대안으로 Microwindows 시스템과 G.메이트의 W 윈도우가 있을 것이다. 하지만 W 윈도우를 지원할 애플리케이션이 현재로선 거의 나오지 않을 것이므로, 최근에 G.메이트는 X를 지원하는 대신, W 윈도우를 포기한다는 발표를 내놓았다. 위젯을 선택하는 것도 비슷하다. 모든 기능과 큰 용량의 GTK+를 사용할 것인가, 아니면 더 작고 실용적인 FLTK를 사용할 것인가? 둘 다를 선택할 수는 없다. 또한 Blackbox와 같이 멋진 윈도우 매니저도 필요할 것이다. 마지막으로 마우스의 움직임만으로 문자를 전송할 애플리케이션이 필요하다. 필기체를 인식하는 방법이 좋긴 하지만 가상 키보드가 더 손쉽고 빠르다. 앞에서 열거한 기능을 사용할 PIM 소프트웨어 역시 빼놓을 수 없다. 기본적인 팜 스타일의 애플리케이션은 아젠다 컴퓨팅의 PIM 수트가 있다. 전혀 다른 접근을 통해서 자바 가상 머신 클론 Kaffe로 구현된 매우 화려한 PocketLinux 환경이 제공된다. 무료 공개 소스와 더불어 트롤테크는 Qt 팜탑 환경이라는 완벽한 사용자 환경을 제공한다. 하지만 여기에선 일부 개발자들을 제약하는 라이센스가 있다. 이야기가 상당히 길어졌는데 아직 끝나지는 않았다. 더욱 흥미로운 PDA를 만들기 위해 데스크탑 유저들이 자신의 기호와 필요에 따라 윈도우와 데스크탑 매니저를 교체하는 것처럼, 서로 다른 요소를 결합하여 새로운 환경으로 커스텀화할 수도 있다. 리눅스는 경쟁력이 있는가? 간단하게 말해서 그렇다. 부연 설명을 하지면 세 가지 이유로 다소 주저할 수는 있다. 첫째로 리눅스는 핸드 헬드 영역에서 후발 주자이기 때문에 다른 경쟁자들에 비해 소프트웨어가 적다. 하지만 타깃에 진짜 리눅스 환경이 구축되어 소프트웨어의 포팅이 비교적 쉽기 때문에 이는 곧 해결될 것이다. 둘째로는 위에서도 언급한 사용자 환경이다. 다수의 PDA 사용자가 받아들이기 위해서는, 사용 방법이 간단하고 즉시, 조용히, 실패 없이 이루어져야 한다. 24/7 제품 서버 환경과 같이 안정성과 일관성은 성능 향상보다 훨씬 더 중요하다. 아젠다 컴퓨팅과 같은 상업적인 회사가 주요 PIM 애플리케이션을 개발하고 있으므로 이 문제는 안심해도 된다. 이러한 회사는 완전한 애플리케이션 수트까지 필요로 하는 소프트웨어 개발 환경을 완성할 동기를 부여할 것이기 때문이다. 커널과 다른 플랫폼의 사용자 공간 프로그래머 간에 공유되는 소스의 양 또한 강점으로 작용한다. 앞에서 언급한 아젠다의 PIM 수트는 많은 리눅스 PDA의 표준으로 자리잡을 것으로 보인다. 셋째 이유는 양질의 코드를 생성할 공동체의 부족과 모든 것이 폐쇄된 데이터 형식으로 이루어진다는 점이다. 윈CE는 전부 폐쇄적으로 읽고 쓰며, 문서화 되지 않은 파일 형식이 있는 MS 워드와 엑셀, 미디어 플레이어, eBook을 등에 업고 등장했다. 오픈 소스 애플리케이션과 형식이 승리할 수 있을 것인가? 앞으로의 글 다음에 연재될 세 글에서 Agenda의 VR3, G.메이트의 Yopy, Campaq의 iPAQ을 자세하게 살펴보도록 하겠다.
크리스 홀설(Chris Halsall)Open Source Solutions사의 대표이며, Victoria Linux Users Group의 부대표이기도 하다. 그는 자동 정보 수집, 표현 시스템에 있어서 전문가이며, 실시간 주식 거래 데이터 스트림과 GPS 기반의 요트 경기 추적 시스템, 컴퓨터 출력의 비디오 스트림을 포함한 IT 분야에서 많은 업적을 이루었다. 몇 년 동안 IT 전문가들에게 리눅스 기술을 가르치고 있으며 기술적인 주제에 대해서 종종 기고하거나 강연을 연다. 자바보다는 펄을, 윈도우즈보다는 리눅스를, 서양보다는 쓰촨 지방을 더 선호한다. 김관석님은 한빛 리포터 1기로 활동 중이며, 광전송 장비 업체 네오웨이브(주)에서 임베디드 시스템 프로그래밍을 하고 있습니다. PowerPC 기반의 임베디드 리눅스와 여러 네트워크 서버 데몬, TCP/IP 수트의 프로토콜, 리눅스 디바이스 드라이버, 실시간 OS, 인라인 스케이트, 스노우보드, 그리고 여자친구 미영이에게 관심이 많다고 합니다.
TAG :

이전 글 : 오라클과 오픈 소스

다음 글 : SOAP의 역사

댓글 입력
자료실

최근 본 책0