윈도우 CE에 관한 다방면의 전문가로 유명하다. 윈도우 CE 프로젝트에 관한 컨설팅 회사를 창립하고 전세계 다양한 회사에서 윈도우 CE, 윈도우 모바일에 관한 강의활동을 펼치고 있다. 윈도우 임베디드 디벨로퍼 컨퍼런스를 포함한 각종 컨퍼런스, 전시회의 강연자로도 인기가 높다.
전남대학교 전산학과에서 박사과정을 수료했으며, 현재 마이크로소프트 사의 공인 임베디드 총판인 어드밴텍에서 기술지원 팀을 맡고 있다. 과거에 여러 종류의 CPU 기반에서 윈도우 CE 기반 IP-STB 개발을 진행한 바 있으며, ARM이나 Mips 기반에서 임베디드 리눅스를 사용한 몇 가지 제품 개발에도 깊게 참여했다. 어드밴텍 기술지원 팀장으로서 필드의 윈도우 CE 개발자들을 지원하고 정기적으로 윈도우 CE 관련 강사로도 활동하고 있다.
전적으로 지배할 수 없는 세상이 왔다. 구조적이고 체계화된 OS를 이용해 개발하는 시대가 온 것이다. 네트워크 시스템을 개발할 때는 임베디드 리눅스를 쓰고 화성에 보내는 로봇에는 신뢰성이 높은 RTOS를 쓴다. 각 분야에 맞는 다양한 OS들이 경쟁적으로 출현하고 사라지며 발전하고 있다.
그런 측면에서 윈도우 CE는 CE(Consumer Electric) 디바이스에서 강점을 가진다. PC용 윈도우 환경에서 개발하던 방식을 거의 그대로 쓸 수 있으며 그만큼 풍부한 리소스를 지원한다. 주변의 스마트폰, 내비게이션, PDA, PMP 등에서도 윈도우 모바일이나 윈도우 CE를 탑재한 제품을 쉽게 찾아볼 수 있다. 나 역시 윈도우 CE 2.11을 탑재한 국산 PDA에서 처음 윈도우 CE를 접했다.
사실 윈도우 CE의 시대가 이런 식으로 광범위하게 찾아오리라고는 예상하지 못했다. 주로 경량 시스템에서 최대한의 성능을 뽑아내야 하는 펌웨어 개발자였기 때문에, 윈도우 CE는 도무지 효율이라고는 찾아 볼 수 없는 굼뜬 공룡이라고만 여겼다.
그러나 IT 계에서 벌어지는 일들이 종종 그렇듯이 변화는 예상보다 빠르게 찾아온다. 봄 나들이를 떠나는 내 차에는 윈도우 CE가 탑재된 내비게이션이 장착돼있고, 옆 자리 친구는 윈도우 모바일이 탑재된 핸드폰을 자랑한다. 나는 밤이면 침대에 누워 윈도우 CE가 탑재된 PMP로 영화를 본다. 나와 내 동료들은 오늘도 회사에서 윈도우 CE 애플리케이션이 탑재된 어플라이언스를 개발하는 등 윈도우 CE는 예상보다 빠르게 내 일상의 중요 부분을 차지했다.
내가 쓰고 있는 윈도우 CE 내비게이션의 기능, UI, 멀티미디어 등을 경량 RTOS로 직접 구현했다면 아마도 이보다 성능이 좋지 않을까 하고 상상해 본다. 물론 타당한 상상이다. 그러나 상상을 조금 더 키워보면 불행한 결말이 보이기 시작한다. 제품은 일년 이년이 지나도 발매 연기만 계속 할 뿐이고, 복잡한 기능을 유기적으로 조율하지 못해 버그투성이가 될 테며, 새로 만들어야 할 기능이 너무나도 많아서 써드파티 라이브러리와 자체 개발 라이브러리가 불협화음을 내고 있을 것이다. 남들이 봄 나들이에 나서는 동안 나는 계속되는 야근의 일상과 마주했을 것이다.
최근 뉴스에 따르면 윈도우 CE는 상당한 수준의 하드 리얼타임의 영역까지 손을 뻗기 시작했다. 버전이 올라가고 임베디드 시스템의 기본 성능 또한 향상되면서 윈도우 CE의 영역이 점점 더 확대되고 있는 것이 지금의 현실이다. 이제 임베디드 시스템을 다루는 개발자는 그 분야가 어디든 윈도우 CE를 한 번쯤 고려해보거나 긴박하게 드라이브해야 하는 지경에 이르렀다.
더글라스 볼링이 쓴 이 책은 윈도우 CE 개발에 있어서 가장 기본적인 필독서에 속한다. 이제 막 시작하려는 개발자, 그동안 윈도우 프로그래밍을 해 온 개발자, 이미 윈도우 CE 개발에 통달한 개발자 모두를 대상으로 한다.
사실 이 책, 『윈도우 임베디드 CE 6.0 프로그래밍』은 따라만 하면 된다는 친절한 입문서도 아니고, 퀵 레퍼런스도 아니며, 모든 것을 총망라한 핸드북도 아니다. 이미 윈도우 프로그래밍에 익숙하고 최단 시간내에 실무에 적용할 레퍼런스가 필요하다면 에이콘 임베디드 시스템 프로그래밍 시리즈 중 하나인 『Windows CE 실전 가이드』를 권하겠지만, 윈도우 CE 입문자라면 이 책을 읽고 윈도우 CE의 전체적인 맥락과 구성을 이해하는 편이 좋다. 물론 중급자 이상의 경우에도 심각한 문제의 원인을 해결할 수 있는 바이블 역할을 한다. 나도 번역을 하면서 실무에서 발생할 이슈들을 해결하기 위해 이 책을 늘 곁에 두고 일했다. 실전용 퀵 레퍼런스 책과는 궤를 달리 하지만, 이 책은 체계적인 지식 습득을 기본으로 개발자 가이드를 겸한다.
윈도우 프로그래밍에 이미 익숙한 개발자라 할지라도 이 책을 통해 임베디드 시스템과 윈도우 CE의 특징을 정확히 이해하고 개발에 착수하길 권한다. 임베디드 개발자라면 현업에서 임베디드 시스템과 윈도우 CE에 대한 이해부족으로 프로젝트나 제품이 실패한 사례를 분명 한두 번은 맞닥뜨릴 것이다. 개발 조직 내에서 프로젝트 성패의 피해자 또는 가해자가 되지 않으려면 임베디드 시스템과 윈도우 CE의 특징을 반드시 체계적으로 학습해둬야 한다.
윈도우 CE는 버전 6.0부터 윈도우 임베디드 CE(Windows Embedded CE)로 제품명이 바뀌었다. 2009년 하반기부터는 6.0을 탑재한 제품들이 본격적으로 나오리라 예상된다. 6.0에서는 새롭게 디자인한 커널이 탑재됐고 동시 처리 프로세스 및 가상 메모리, 개발 환경 등이 대폭 개선됐다. 자세한 내용은 본문을 참고하기 바란다.
아주대학교 기계공학과를 졸업했다. 자동제어, SI, UI 등 중구난방으로 생계를 연명하다가 어울림 정보기술에 입사 후 본격적인 임베디드 시스템 개발 경험을 쌓았다. 삼성 소프트웨어 멤버십 활동을 거쳐 지금은 삼성전자 생활가전 사업부에서 선행 소프트웨어 개발 업무를 담당하고 있다.
서울대학교 전자공학과를 졸업했다. 어울림 정보기술에서 VPN과 커널 업무를 담당했으며 현재 미국 USC에서 박사과정을 밟는 중이다. 연구분야는 뉴로 컴퓨팅, 머신 러닝 등 인공지능 계열이다.