Handset Device Simulator

프로젝트명: Mobile Simulator

개발기간: 2003년 1월 ~ 4월

프로젝트 설명:
 휴대폰 개발시에 코드 수정후에 걸리는 컴파일 시간과 단말기 다운로드 시간을 합하면 대략 10분 전후이다. 특히나 UI작업시에는 이미지의 위치나 애니메이션의 동작 하나하나 고칠때 마다 단말기에 다운로드해서 확인해보지 않으면 안되는데, 여기에 걸리는 시간은 엄청나다고 할 수 있다. 물론, 디버깅도 쉬운일이 아니다.
 이 작업을 PC 상에서 한다면 어떨까? 훨씬 빠른 컴파일 속도와 컴파일 즉시 확인해 볼수 있는 장점, 그리고 디버깅시 무제한의 break point를 걸 수 있다!
 본래의 취지는 이런것이었는데, 본 Simulator에서 작업한 코드 내용을 완성후에 다시 실제 단말기 소스에 가져다 붙여야 된다는 단점이 있긴하다.^^;
 이 프로그램은 내가 단말기의 Bootstrap 과정과 이후의 동작들을 공부하면서 내 나름의 이해를 정리하기 위해 만들기 시작한것이었다. 그래서 실제 단말기 동작중 Bootstrap이 끝나고 Main함수가 호출되는 부분 부터 Idle State로 가기까지의 실제 단말기 동작을 그대로 흉내내 놓았기 때문에 Task Context Switching, State Machine구조, Frame 구조 등을 그대로 갖고있다.
 후에 이 프로그램은 신입사원 교육용으로 사용되었다. 뭐, 교육용으로 가장 적합하다고 할 수 있겠다.


스크린샷:

휴대폰을 접사촬영해서 스킨으로 이용했다.^^; 우측의 화면은 디버그 메세지를 찍어준다. QXDM을 흉내낸것...

 

프리젠테이션 모드이다. 좌측에 나올 화면을 우측에 크게 확대해서 뿌려주도록 되어있다.

 

이미지 뷰어 기능이다. 실제 단말기에서 사용되는 폰트파일을 읽어오기 때문에 여기에서 한눈에 확인 가능!

 

전면 LCD를 지원! 마우스 중앙 버튼으로 휴대폰 폴더를 닫았다 열었다 할 수 있다.

P.S.:

 2004년 초순경인가? 엠브릿지라는 회사가 휴대폰 Simulator를 개발해서 제품 발표 세미나를 해서 참석한 적이 있었는데, 이 회사의 컨셉은 실제 소스코드에 SIMULATOR용 FEATURE를 선언하고 PC에서 컴파일 할 경우의 처리들을 전체 폰 소스에 삽입해두는 것이었다. 내기억에 PC에서 실행해서 Socket 통신까지 지원했던것 같다. 그 외에 가상으로 SMS 수신이나 Call 수신 등의 테스트를 할 수 있었으니 상당히 좋은 아이디었고 잘 만들어진것 같았다. 하지만 시뮬레이터라는게 상품으로서의 가치는 없지 않았나 하는 생각이다.