Google Android ?
지난 2007년 11월 12일 Google의 모바일 플랫폼 Android 의 SDK가 공식발표되었습니다.
구글폰이 나온다~는 소문이 한동안 나오더니
구글이 모바일 시장에 관심을 가지고 있다는것만으로도 큰 이슈가 되었는데요
결국 뚜껑을 열어보니 모바일 용 Open Platform 을 통째로 들고나왔군요~

사실 Android는 구글이 초창기부터 시작한 프로젝트는 아니고
2005년 구글이 인수한 Android 사 에서 시작된 프로젝트입니다.
Android 사는 모바일 디바이스 개발업체로 시작한지 얼마안되어서 구글에인수되었죠~
Android가 어떻게 시작되었건 개발자 입장에서 궁금한것은
기반 OS가 무엇이며 어떤방법으로 S/W를 개발할수 있는가 였습니다.~ ^^
OS커널은 Linux 2.6 커널기반으로 만들어져있습니다.
전체적인 구조는 이렇습니다.
그림한번 보시죠~
SDK는 Java를 대상으로 나왔습니다.
기본적으로 Android 용S/W는 Java로 개발해야됩니다.(어흑~ Java…)
Android 의 Java 도입과 관련된 소식으로
Sun의 Software 부문 담당인 리치 그린 부사장이 얼마전 Oracle open world 에서 우려를 표명했다고 하는군요.
“다양하고 분열된 플랫폼의 생성은 개발자가 얻을수 있는 이익으로부터 멀어지게 한다. 알수없는 구성의 안드로이드 플랫폼을 수정해달라는 개발자가들의 요구가 늘어나고 있다.” 라고 했답니다.
“Write Once, Run Anywhere”를 목표로 만들어진 JAVA 임에도 불구하고
과거 MS에서 만들어진 Java Virtual Machine이 조금은 독자적인 기능들을 지원함으로써 생겼던 문제점들을 우려하는것이 아닌가 싶습니다.
Android 에 들어있는 Dalvik 이라는 Java Virtual Machine에 대한 이야기겠죠?~ ^^
썬 에서도 구글과 적극적으로 협력할 생각이 있다고 하니 앞으로의 진행을 지켜봐야할것 같습니다.
(참고로, 구글은 이에 별다른 반응을 보이지 않았다고 하는군요~)
구글의 mobile platform 은 Android SDK 발표전에 소개한
OHA: Open Handset Aliance 라는 그룹을 통해 영역을 확보해나갈 모양입니다.
OHA 에는 통신사업자, Handset 생산업체, 칩셋생산업체, 서비스업체들이 대거 참여하고 있습니다.
(China Mobile Communications Corporation, NTT DoCoMo, Inc, T-Mobile, intel, 브로드컴, 퀄컴, Nvidia, LG, 삼성, 이베이, 뉘앙스, 구글, 시냅틱스…. 등등등.)
앞으로 OHA 에 얼마나 많은 기업이 참여할지,
전세계 모바일 시장에서 어느정도의 영향력을 가지게 될지도 궁금하고
썬과 구글이 앞으로 어떠한 관계를 가지고 나아갈지 기대됩니다.
Google이 제공하는 서비스들을 모바일기기에서도 활용할 수 있게 된다니 이것도 기대되네요
100억원의 상금이 걸린 2008년 1월 2일 Android developer Challange 접수가 시작된다는 소식으로 이번 포스팅을 마칩니다.
다음주말에는 Android 에대해 정리해드리겠습니다.~

안드로이드의 sdk 문서를 보면, Java의 선택은 Java 언어를 통해서 Manager들이 지원하는 기능을 기존의 개발자가 쉽게 접근할 수 있도록 하기 위해서 였다 라는 생각이 강하게 들지.
Dalvik 가상 머신역시 그런 부분중 하나일 수 있는데, 내부 구조상 VM 은 하나의 executible 에 대해서 하나의 VM을 생성해서 동작하도록 해주고 있는데, 물론 글에서 이야기한 자바의 순결주의(?)에는 어긋나지만, 워낙 자바 언어 자체가 제공되는 라이브러리를 쓰기 편하기에 그런게 아닐까 싶어.
사실 OHA 이전에 이미 노키아 및 심비안 그룹쪽의 OMA 가 있지만, 지금처럼 주목은 받지 못하고 있지.
물론 이부분은 개발 부분이 아닌, 마케팅이라는 쪽에 가깝지 않을까 싶어. 즉, 애플의 아이폰에서 시작되어, 구글폰에 대한 루머, 그리고 이번 발표까지..
사실 이번 발표는 마치 안드로이드가 구글폰인것처럼 이야기하지, 사실 구글폰이 아니라 구글이 핸폰 회사와 함께 스팩을 만들어가는 플랫폼인데 말이지…
글이 길어지는구만.. ㅎㅎ 트랙백으로 할껄 그랬나봐, 다음주 포스팅도 기대하겠소~
음, 적고나서 수정을 하려고 하는데 수정 버튼이 없다니!
내부 구조상 VM 은 하나의 executible 에 대해서 하나의 VM을 생성해서 동작하도록 해주고 있는데
–>>
요 이야기도 사실이지만, 실제 본문상에서 이어지려면 Write Once, Run Anywhere 가 되어야겠지?