- 1부. Windows CE Introduction & 환경 구성
Windows XP 환경 구축 - Platform Builder, Visual Studio 2005 설치
Windows 7 환경 구축 - Platform Builder, Visual Studio 2005 설치
- 2부. Windows CE 6.0 Porting
망고64, 망고24 하드웨어 구성
BSP 설치, 프로젝트 구성, Catalog Item 변경 및 보드에서 구동
Mango 보드 SDK 생성, 구성 설정 및 SDK 설치하기
ActiveSync 설치 및 탐색기 사용, Remote Tool 원격 이미지 캡처
- 3부. Windows CE 6.0 기초 학습
ActiveSync, Touch Screen Calibration, Virtual 키보드, USB HID 사용
Source Insight 프로젝트 파일 추가 및 EBoot만 다시 빌드 하기
Visual Studio 2005 메뉴 및 Build 메뉴 설명
NK.bin, NK.nb0 파일 포맷 분석 & Visual Studio Remote Tools
환경 변수 (Environment Variable) & OS Design 파일
Config.bib 설정 작업, Nk.exe 부팅 프로세스 및 UNICODE 화면출력 함수들
- 4부. Windows CE 6.0 Device Driver
Device Driver 기초, Button Device Driver 제작 및 등록
Interrupt 설정 및 처리 과정, InterruptDone 과정과 Button Driver 완성
MFC 이용 Launcher와 버튼 드라이버의 통신
3축 센서 (SMB380) 디바이스 드라이버 및 Rotate_GSensor 응용 프로그램 제작
Camera 장치 이해, Camera 어플리케이션 빌드 및 Preview
Camera 디바이스 드라이버 초기화 및 Preview 과정 분석
서언
Windows CE는 1996년 처음 소개된 이후, 많은 후속 버전들이 발표되며 개선을 거듭하며, 수많은 Embedded 기기들에 널리 사용되어 왔다. 최근 Android의 등장으로 Windows CE에 대한 열기가 여전에 비해 많이 식어 가고 있는 편이다. 그러나, Android가 Linux 상의 가상머쉰에서 운영되는 구조라 상당한 CPU 성능 및 메모리를 요구하는 형편이라, Android가 적절하게 운영되기 힘든 ARM9/ARM11 CPU에서는 Windows CE가 성능 및 기능에 대한 요구사항을 적절히 만족시키는 운영체제로 유효하다. 또한, Windows CE는 PC Windows와 여러 면에서 흡사하기 때문에, Windows에 익숙한 엔지니어가 쉽게 접근할 수 있다는 장점이 있다.
최근 Windows CE 7.0이 발표되면서 Dual-Core CPU를 지원하는 등 다양한 기능에 대한 지원을 강화하였다. 그러나 Windows CE 7.0은 아직 도입 단계이며 Android와의 치열한 주도권 경쟁을 거쳐야 안정된 시장을 확보할 수 있을 것으로 생각 된다. 반면, Windows CE 6.0의 경우, ARM9/Arm11 및 기타 1GHz대 이하 CPU군에서 다양한 응용 환경에 폭넓게 적용되고 있어 앞으로도 상당한 기간 동안 중요한 운영체제의 지위를 확보하고 있을 것으로 예측된다. 또한 Windows CE 7.0, Android등 고성능/고기능 운영체제의 경우, 중/저성능의 CPU에서 운영되기에는 무리가 있으므로, 주로 Cortex-A8 또는 기타 이에 상당하는 고성능 CPU를 대상으로 개발된다. 특히, Android의 경우 CPU 성능에 대한 요구 사항이 새로운 버전이 발표될 때마다 높아지고 있어 마치 PC Windows에서 새로운 버전이 발표될 때마다 고사양의 PC가 요구 되는 것과 같은 현상이 나타나고 있다. 이러한 때에 Windows CE 6.0은 가격에 민감한 Embedded 기기에 사용되는 ARM9/ARM11 등에서도 무리 없이 운영될 수 있으므로, 앞으로도 꾸준히 Embedded 시장에서 입지를 확보할 수 있을 것이다.
Windows CE에 대한 서적은 다양하게 나와 있지만, 실재 보드를 사용하여 실전적으로 다루는 책은 찾아 보기 어렵다. 특히, Windows CE를 처음 접하는 엔지니어의 경우, 어디서부터 시작해야 할지 막막한 상황에서, 처음부터 차근차근 Windows CE 프로그래밍에 다가갈 수 있도록 해주는 안내서가 있다면 큰 도움이 될 것이다. 저자들은 그 동안 Embedded 보드를 만들고 이에 Windows CE 운영체제를 이식하고 디바이스드라이브 및 응용프로그램을 작성하는 과정에서 많은 시행착오를 겪어 왔다. 이러한 과정 하나하나를 기술하여 책으로 만들면 앞으로 이 일을 하는 엔지니어들이 조금이라도 더 쉽게 Windows CE를 습득할 수 있을 것으로 생각하여 이 책을 펴내게 되었다.
이 책은 각종 기능에 대한 지루한 나열식 설명을 완전히 배제하고, 초심자도 바로 개발환경 구축부터 디바이스드라이브, 응용프로그램 개발 과정을 순서 데로 정복해 나갈 수 있도록 구성 되어 있다. 또한 이 책에 나와 있는 모든 과정과 프로그램들은 모두 직접 작성하고 테스트 해 본 것들이므로, 바로 실무에 적용할 수 있을 것이다.