저번주에 MS에서 주최한 Windows Embedded Developer Conference를 다녀와서 여러가지 생각이 많이 들었다. MS가 윈도를 이용하여 PC OS 환경에서는 천하통일을 한 상태고 서버 시장에서도 이제는 윈도 서버가 유닉스 서버에 근접할 만큼 점유율을 높혀놓은 상태다. 즉, OS라는 분야에 있어서 MS, 그리고 윈도가 차지하는 비중은 PC, 서버 다 합쳐서 본다면 절대급까지는 아니지만 거의 절대급에 가까이 있으며 MS는 이런 위치를 이용하여 새로운 분야에까지 그 비중을 늘릴려고 하고 있다고 본다.
현재 MS가 바라보고 있는 분야는 역시나 플랫폼 분야일 것이다. OS도 플랫폼의 한 종류로 봐야 할 것이며(엄밀히 따지면 플랫폼보다 더 큰 개념이기도 하지만) 현재 MS가 집중하고 있는 분야 역시 플랫폼이라 본다. 플랫폼에는 Runtime이라 불리는 실행 플랫폼이 있을 것이며 또한 개발환경도 플랫폼에 들어간다고 본다.
이미 MS는 각 PC에서 기본 운영체제도 돌아가고 있는 윈도를 보유하고 있다. 또한 Visual Studio라는 윈도용 응용프로그램을 만들 수 있는 개발환경을 보유하고 있다. 하지만 앞으로는 윈도와 Visaul Studio만으로는 우위를 점하기 어려운 세상이 올 듯 싶다. 바로 인터넷으로 대변되는 차세대 네트워크 플랫폼과 PC를 떠나 Non PC, 이름하여 임베디드 디바이스들이 점점 각광을 받고 있기 때문이다. 이제는 사람들이 PC환경와 유선환경에서 벗어나서 PMP, PDA, UMPC, 휴대폰 등의 무선환경에서 자유롭게 이동하며 사용할 수 있는 디바이스들을 선호하게 될 것이라는 것이 대부분의 전문가들의 이야기다. MS 역시 이것을 모를리가 없을듯 싶다.
인터넷과 임베디드 디바이스 플랫폼에 MS의 미래가 달려있다고 해도 허황된 이야기는 아닐 것이다. MS가 구글을 왜 그렇게 경계하는지를 보면 점점 사람들의 IT 트랜드가 오프라인 PC 환경에서 온라인 환경으로 옮겨가고 있다는 것을 알았기 때문이라 생각한다. 또한 이제는 어느 한곳에 고정되어 있는 것이 아니라 자유롭게 옮기면서 작업을 할 수 있는 세상이 오게 되었으며 거기에는 임베디드 디바이스가 자리잡고 있다고 본다. 물론 계속 PC, 서버용 OS가 출시될 것이다. 윈도 비스타의 서비스팩도 2, 3으로 계속 나올 것이며 서버 2008 이후의 서버 OS도 나올 것이며 비스타 후속 OS인 윈도 7 역시 개발중이라고 하니 데스크탑용 OS는 MS의 큰 기둥으로서의 역할을 할 것이다. 하지만 MS도 내부적으로 계속 변화하고 있다는 생각이 든다.
서론이 길었지만 이번 컨퍼런스를 보면서 MS가 임베디드 분야에 투자하는 것이 매우 많다는 것을 느꼈다. 임베디드용 윈도는 대표적으로 Windows CE(WinCE)가 있으며 고사양급인 WIndows XP Embedded(WinXPe)가 있다.
또한 이들로부터 파생된 각 디바이스 종류별 OS도 다양하다. 워낙 임베디드 디바이스들은 그 종류에 따라서 기능들이 다르고 성격들이 다르니 똑같은 OS로는 제대로 성능을 발휘하기 어렵기 때문에 성격에 따라서 내용을 다르게 만드는거 같다. 대표적인 것이 휴대폰용 OS인 윈도 모바일이 될 것이다. WInCE를 기반으로 휴대폰과 PDA폰에 맞도록 커스터마이징이 된 OS다. 국내외 스마트폰에 많이 탑재된 OS며 노키아의 심비안, 구글의 안드로이드 등과 현재 열심히 경쟁중이다.
그리고 WInXPe를 기반으로 만든 Windows XP Embedded Point of Service(WinXPe POS)라는 OS도 있다. 서비스의 성격에 맞춰서 개량한 OS다. 실제로 WInXPe는 WinCE보다 높은 고사양의 임베디드 디바이스에 들어가는 OS며 거의 PC급을 요구하는 경우에 많이 쓰인다. Intel의 데스크탑용 CPU만 지원하고 있으며 윈도XP를 컨퍼넌트로 분리하여 임베디드 환경에 맞도록 커스터마이징하고 필요한 컨퍼넌트들만 따로 조합하여 디바이스에 맞도록 OS를 구성해서 쓴다. 구동되는 것도 일반 PC용 OS인 윈도XP와 같다. 즉, PC가 필요한데 PC를 쓰기는 뭐시기한 장소에 PC급 임베디드 디바이스를 만들고 거기에 쓰는 OS가 WInXPe다. 대표적인 것이 예전에 물의가 되었던 게임머신 바다이야기가 WinXPe를 사용하는 것으로 알려졌다. 또한 WinXPe POS도 비슷한 개념으로 쓰이고 있다. 일반 대형 음식점 등에서 사용하고 있는 POS 시스템에 WinXPe POS가 사용되는 것으로 알려지고 있다. 단 WinXPe POS는 WinXPe보다 더 세분화되고 커스터마이징이 되기 때문에 진짜 필요한 기능만 집어넣어서 만들다보니 WInXPe보다 지원되는 기능은 더 적다.

이렇듯 MS는 임베디드 분야에서도 모바일 분야에서의 WinCE(윈도 모바일 포함)와 고정된 사업장에서 사용할 수 있는 더 큰 분야에서의 WinXPe를 보유하고 있으며 점유율 역시 임베디드 시장에서 상당한 수준에 이른다. 일단 국내의 경우 PMP, PDA 등의 이동식 멀티미디어 디바이스에서는 거의 WinCE가 천하통일 하다시피 했다. 일부 저가형 기기에서만 임베디드 리눅스나 뉴클레스 OS를 사용하고 네비게이션은 대부분이 WinCE며 PMP도 이제는 대부분이 WinCE를 채택하고 있다. PDA 역시 WinCE가 70%이상 차지하고 있는 상황이며 스마트폰에서는 대부분이 윈도 모바일을 사용하고 있다고 보면 된다. 일단 모바일 디바이스에서는 WinCE가 거의 절대강자로 꼽히고 있는 상황이다. WinXPe의 경우는 약간 사정이 다를 수 있지만 일단 POS 시스템에서는 대부분이 WinXPe POS를 사용하고 있다고 알려져있다. 전철역의 광고 시스템이나 안내 시스템도 WinXPe를 사용하고 있으며(예전에는 Win98을 직접 사용하여 PC로 돌렸는데 요즘은 WinXPe로 대부분 교체되었다고 한다) ATM기에서도 대부분이 WinXPe를 사용하고 있다고 한다.
이렇듯 미들레벨과 하이레벨에서의 임베디드 OS 시장에서의 MS 윈도는 점점 그 영역을 확고히 하며 점유율을 극대화 시키고 있는 중이다. 그리고 이들 WinCE와 WinXPe가 급격히 확산되었던 배경에는 바로 개발도구의 편리성이 자리잡고 있었다. 다름아닌 Visual Studio의 존재다.
임베디드 프로그래밍을 하는 개발자들이라면 아마도 개발중에 수없이 코피를 쏟아내었던 경험이 있을 것이다. 나 역시 임베디드 모듈을 만드는 개발자로서 또한 예전에는 임베디드 리눅승 위에서 파일시스템과 디바이스 드라이버를 개발했었던 경험에
비춰봤을 때 정말로 개발환경이 안좋아서 힘들었던 적이 한두번이 아니다. 임베디드 리눅스 뿐만 아니라 다른 임베디드 OS(혹은 RTOS) 위에서 개발을 할 때에는 개발 자체 뿐만 아니라 개발 후의 디버깅 작업이 너무 힘들다. PC용 프로그램을 개발할 때에는 눈에 무언가가 보이기 때문에, 또한 디버깅 환경이 너무 좋아서 개발하기 용이했지만 임베디드 환경은 그게 전혀 지원되지 않기 때문에 하나하나 로그를 파일로 남겨서 보던지 시리얼 화면을 통해서 확인하던지 하는 방법을 써야만 했다. 그래서 임베디드 개발자들이 희귀했기도 했다. 다들 안할려고 하기 때문에 말이다.
WinCE 역시 초창기에는 개발환경이 그닥 좋지는 않았다고 한다. 하지만 WinCE를 만들고 지원하는 플랫폼빌더의 성능이 점점 좋아지고 Embedded Visual C++(eVC)의 기능이 점점 개선이 되어서 이제는 PC에서 프로그래밍을 하듯 임베디드 프로그래밍을 할 수 있게 되었다. 게다가 Visual Studio 2005(VS2005)에서 WinCE 프로그래밍을 할 수 있게 지원이 되어서 PC 프로그램 개발하듯 똑같은 개발환경에 디버깅 환경을 제공받을 수 있게 되었다. 실제로 eVC가 Visual Studio 6와 비슷한 개발환경을 제공해주지만 VS2005에서 제공하는 환경은 더 환상에 가깝다. Visual Studio 2008도 VS2005와 마찬가지로 WinCE 프로그래밍을 지원해주니 점점 WinCE 프로그래밍이 간편해지고 좋아지는 것은 당연지사다. 그러니 개발하기 힘든 임베디드 리눅스나 타 임베디드 OS에서 개발하기 편한 WinCE로 넘어오는 것은 어찌보면 당연한 일이라 보여진다. WinXPe 역시 WIndows Embedded Studio라는 eVC와 비슷한 개발환경을 제공한다. 비록 VS2005, VS2008에서는 지원하지 않지만 거의 비슷한 개발, 디버깅 환경을 제공하니 개발자 입장에서는 자기가 친숙한 개발환경에서 임베디드 개발까지 할 수 있다는 장점을 갖추게 된 것이다.

실제로 MS에서 WinCE를 마케팅하면서 꼭 하는 이야기가 바로 WinCE 프로그램을 Visual Studio에서 만들 수 있다는 말이다. 즉, 개발자 입장에서 정말 익숙한 개발환경에서 WinCE 프로그램을 만들 수 있다고 하니 개발자 입장에서는 정말 매력적인 일이라 할 수 있을 것이다. 그러다보니 당연히 개발기간도 줄어들게 되는 부수적인 이득도 있다. 실제로 임베디드 리눅스 등으로 개발하는 것 보다 WinCE로 개발하는 것이 2~3개월 더 줄어든다는 비공식 통계도 존재하고 말이다. Visual Studio 2005 이상에서나 아니면 플랫폼빌더 + eVC의 조합으로 개발하는 것이나 다른 OS에서 개발하는 것보다 훨씬 편한 것은 사실이며 MS는 이것을 전면에 내세우고 마케팅을 함으로 현재 임베디드 OS 시장 1등을 차지하도록 만들었다고 본다.
또한 이번에 .NET Framework의 임베디드 버전들이 버전업되면서 더 안전한 임베디드 프로그래밍을 할 수 있도록 되었다. WinCE에서 제공하는 .NET Compact Framework과 로우레벨 임베디드 시스템에서 사용할 수 있도록 만든 .NET Micro Framework를 보면서 정말 편하게 프로그래밍을 할 수 있겠구나 하는 생각이 들었다. 일반적으로 임베디드 프로그래밍을 얘기하면 C언어를 떠오르며 WinCE용 프로그램 역시 MFC를 이용하기도 하지만 주로 Win32 API를 이용한 프로그래밍들이 대부분이다. 게다가 더 심오한 부분은 어셈블리어를 이용해야 하니 프로그래밍하는 입장에서는 매우 부담스러운 것이 사실이다. 이런 환경에서 C#이라는 고급언어를 사용할 수 있다는 것은 매우 큰 매리트가 된다. 특히나 기존 C나 WIn32 API등에서 문제가 되었던 메모리 관리 및 잘못된 포인터 사용으로 시스템이 뻣는 문제가 C#을 이용한다면 C# Runtime(일종의 VM 개념이다)이 알아서 다 관리를 해주니 프로그래밍 하는 입장에서는 더 안전하고 편리하게 프로그래밍을 할 수 있게 된 셈이다.
이번 컨퍼런스에서 느꼈던 것은 .NET Micro Framework의 존재로 인해 MS는 임베디드 시스템 전방위에서 OS를 다 지원하면서 임베디드 시장까지 천하통일을 노리는구나 하는 부분이었다. 실제로 WinCE는 임베디드 디바이스 중에서도 약간은 고사양을 요구하는 OS다. 요즘은 대부분의 임베디드 칩셋들이 고사양이라 WinCE를 충분히 지원하지만 그렇지 않는 다바이스들도 분명 존재한다. 솔직히 이런 부분에 WInCE에 밀렸던 임베디드 리눅스나 다른 RTOS들이 영역을 넓히고 있는데 이 부분까지 커버하기 위한 것이 바로 .NET Micro Framework다. WInCE정도의 사양을 요구하지 않는 임베디드 디바이스를 위해 만들어진 OS 대용품이라 할 수 있을듯 싶다.
.NET Micro Framework의 사양을 보니 다른 OS 위에서 돌아갈 수 있으며(.NET Framework가 윈도 위에서 올라가는 것 처럼) 단독으로도 사용할 수 있는거 같았다. 즉, .NET Micro Framework 단독으로도 부팅부터 다 제어할 수 있도록 되어있는 것이다. 펌웨어가 동작하듯 사용할 수 있도록 된 듯 싶다. 다만 제약사항이 좀 심해서 시스템적인 부분만 지원하고 파일시스템과 RT(Real Time) 요소는 지원하지 않는다. 그러다보니 제어장치 등에는 사용하기 어렵겠지만 다른 임베디드 OS와 같이 사용하여 MP3P와 같은 작은 장치에서도 사용할 수 있고 또한 단독으로도 충분히 작은 장치에서 사용할 수 있을 듯 보였다. 게다가 C#을 지원하고 개발을 Visual Studio 2005에서 할 수 있으니 더 괜찮아보였다. 제약사항때문에 그 적용대상도 제한이 있겠지만 WinCE의 하위버전으로 사용할 수 있는 충분한 매리트를 느꼈다.
이렇듯 WinCE에 WinXPe, 그리고 .NET Micro Framework까지 MS가 보유하고 있는 다양한 임베디드 OS와 Visual Studio라는 개발 툴까지 MS는 이제 PC 시장뿐만 아니라 임베디드 시장에서까지 천하통일을 노리고 있구나 하는 생각을 하게 되었다. 이미 윈도라는 경험을 갖고 있는 MS와 사용자, 그리고 Visual Studio라는 편리한 개발 툴은 이제 임베디드 개발환경을 더이상 암흑으로 밀어넣는 것이 아닌 양지로 끌어올리고 있다고 생각이 되기 때문이다. MS가 구글에 밀려 인터넷 분야에서는 좀 어려워할 수 있을지 몰라도 기반이 되는 OS 부분을 이렇게 다 먹어버리고 있으니 MS의 진정한 무서움은 여기에 있는게 아닐까 싶다는 생각이 든다.
* 관련 글 *
2008/05/02 - [IT Story/IT 이슈] - Windows Embedded Developer Conference 참석 후기2008/02/20 - [IT Story/IT 이슈] - MS, 개발 프로그램을 학생들에게 무료로 배포...2008/01/03 - [IT Story/IT 이슈] - 휴대폰의 진화, 스마트폰에 대한 바램2007/07/13 - [IT Story/IT 이슈] - 임베디드 OS 시장도 MS가 강세 (WinCE의 점유율 증가)2007/04/23 - [IT Story/IT 이슈] - 필요한 것만 골라서 척척…맞춤형 OS「윈도우 XP 임베디드」
이 블로그에서는
나눔글꼴을 사용하고 있습니다. 제대로 즐기실려면 글꼴을
설치해서 보세요. ^^
댓글을 달아 주세요
MP3야 국내에서는 DRM으로 인해서 라이센스 제약 없는 MP3가 건재 할 수 있겠지만,
2008/11/24 17:44해외에서는 이러한 라이센스가 강하지 않은 것으로 알고 있고, 이로 인해서 국내와는 다르게
MP3를 대체 가능하다고 생각이 됩니다.
그런데.. 스마트 폰이라고 하기에는 클럭이 매우 높아져서, 노트북에 CDMA/GSM 모뎀으로 전화를 지원하는건지, 핸드폰이 성능이 좋아진건지 머.. 알이 먼저인지 닭이 먼저인지 모르게 된 상황에서는 구분하는것도 참 애매모호하지 않을까 생각이 됩니다.
뭐 일단 제 글에서는 국내에 한정된다고 했으니 ^^;
2008/11/24 18:29스마트폰의 경우 확실히 성능은 높아졌지만 이동식 기기가 갖는 어떤 한계점은 분명할 듯 하더군요.
에이...폰카 화질이 하이엔드에 근접한다는건 오바 ^^...컴팩트 디카 정도는 되더군요.
2008/11/27 12:30요즘은 하이엔드 디카들이 저가형 DSLR 뺨을 때릴려는 짓을 하는 마당에..^^;
폰카때문에 컴팩트 디카들의 판매가 치명적으로 위협받고 있는건 사실입니다만..
하이엔드 디카에는 컴팩트 디카도 포함된다고 생각이 되서요 ^^
2008/11/27 12:52안녕하세요.티스토리 입니다^^
2008/12/01 11:24회원님의 포스트가 현재 다음 첫화면 카페.블로그 영역에 보여지고 있습니다. 카페.블로그 영역은 다음 첫화면에서 스크롤을 조금만 내리시면 확인하실 수 있습니다.
회원님께서 작성해 주신 유익하고 재미있는 포스트를 더 많은 분들과 함께 나누고자 다음 첫화면에 소개 하게 되었으니, 혹시 노출에 문제가 있으시다면 tistoryblog@hanmail.net 메일로 문의주시기 바랍니다.
앞으로도 티스토리와 함께 회원님의 소중한 이야기를 담아가시기 바랍니다!
감사합니다. 즐거운 하루 보내세요!
캄사합니다 ^^
2008/12/01 11:27휴대폰 화소는 많아야 500만 화소이고,
2008/12/01 12:36컴팩트형 디카는 1000만을 상회합니다.
그럼 화소 차이가 대략 두배인데 이것을 비스므리하다고 하면 안되겠지요?
최근에 나온 것들이 1000만을 상회하지만 예전에는 2~300만이었잖아요.
2008/12/01 13:13그리고 실내가 아닌 밝은 날 밖에서 찍는 것은 화소수와는 관계없이 잘 나오니까요.
일반적으로 2~300만 정도만 나와도 쓸만한 디카라고 생각하기에 쓴 글입니다.
전 글쓰신분께 동감~
2008/12/01 14:02원래 학교에도 MP3와 디카를 거의 가지고 다녔지만 요즘은 귀찮아서 그냥 핸드폰만 들고다녀요..^^
저는 MP3P는 들고 다닙니다. 변환해서 들고 다니기가 귀찮아서요 ^^:
2008/12/01 14:09하지만 디카는 집에 놓고 온지 꽤 되는거 같습니다 ^^
핸드폰의 발전으로 그래도ㅋ 가장 큰 피해를본건 우리 삐삐~ 아닐까요~~ㅋ
2008/12/01 14:17삐삐는 그 한계성으로 인해 사장된다는 예측이 많았었죠.
2008/12/01 14:23그래도 확실히 가장 큰 피해자이기는 하네요 ^^
mp3는 동의 못하겠네요. 저만 해도 mp3 자주 사고 바꾸고 하고 있거든요. 유명한 mp3는 정말 거래많이 되고 있습니다. 아무래도 핸드폰의 음질, 음장으로는 mp3 못들어주죠. 핸드폰전용이어폰도 구리구요.그리고 통신사들 그거 파일 변환시키는 것도 여러모로 귀찮구요.
2008/12/01 14:51글의 내용을 보시면 MP3P의 경우 퇴출정도의 수준은 아니라고 썼습니다.
2008/12/01 15:05얘기대로 변환이라는 귀찮음이 동반되기 때문이죠.
제목은 시장에서 쫒겨날 처지가 된 5가지 디지탈 기기들이라 되어있는데 내용은 퇴출정도의 수준은 아니다라고요?
2008/12/01 15:14제목 뒤에 '이라...'라는 부분을 생각하셔야죠.
2008/12/01 15:17그 부분에 대해서 고찰할려고 하는 부분입니다.
마지막에 글이 머릿속에서 계속 맴돈다.. 휴대폰이 레이져스크린을 지원하는 날..
2008/12/01 18:33그러면 가히 볼만할 겁니다
2008/12/01 18:35mp3가 음악재생만을 목표로한다면 휴대폰이든 다른매체에게든 밀려나는건 시간문제라고 봅니다.. 나날이 커지는 휴대폰의 액정과 wvga급 화질의 폰들이 나오기때문에 다른매체들도 물론 언젠가는 큰 위협을 받겠죠..뭐 물론 첨단을 달리는 dslr은 살아남겠지만.. 어중간한 디카들은 휴대의 불편함등으로 많이 고전할듯..
2008/12/01 20:13컴팩트 디카의 경우 정말로 렌즈가 좋아져서 DSLR급으로 나오지 않는 이상에는 정말로 폰에 밀릴 듯 보여요.
2008/12/01 23:53MP3P도 해외의 경우 DRM 없이 가능하다고 하니 밀리지 않을련지. -.-;
공중전화.
2008/12/01 20:33요즘에 공중전화 카드 팔기는 하나요?
공중전화도 확실히 휴대폰때문에 물먹은 경우죠.
2008/12/01 23:53(하기사 시티폰이라는 그 옛날 휴대폰도 삐삐도 아닌 그 중간 계층도 물먹기는 마찬가지였지만)
쩝.. 최신형 폰을 사고도 2년 된 PDA를 또 기변하려는 나는 뭥미. 폰과 PDA과 통합되는 추세(스마트폰 쪽으로)이긴 하지만. PDA가 일정관리 용도라는 건 그 옛날 Palm이 천하를 호령하며 담배 피던 시절 얘기고, 요즘 세상에 PDA를 그런 용도로만 쓰는 사람이 어딨나? 손바닥 안에 쏙 들어가는 size에 어지간한 PC 프로그램 못잖은 다양한 어플리케이션을 이용할 수 있는 장점 때문에 쓰는거지. 게다가 외장형 접이식 키보드까지 이용하면 나처럼 게임 안하는 사람은 노트북보다 오히려 더 유용하게 쓰인다는~
2008/12/01 23:31사람에 따라서 사용은 다 틀리다는.
2008/12/01 23:52PDA를 그저 PIMS로밖에 안쓰는 사람들도 많다는. -.-;
원래 PDA 가 핸드폰이 컴퓨터 기능까지 포함 하는걸 말하는거 아니였어요?
2008/12/01 23:38PDA는 원래 폰 기능이 없죠.
2008/12/01 23:54폰기능까지 나온게 PDA폰이고.
림의 블랙베리나 삼성의 블랙잭 시리즈들도 스마트폰이라고는 하지만 PDA폰이라고 해도 될 듯 합니다.
전 위에 5개중 디카가 폰카에 밀릴일이 제일 없다고 생각되네요. 솔직히 센서의 화소수가
2008/12/02 03:01중요하긴하지만.. 컴팩트디카도 카메란 카메랍니다. 렌즈가 제일 중요하지요
핸드폰의 특성상 좀 크기가 있는 렌즈를 붙이고 다니기는 곤란할겁니다.
전자공학이 더 발전해서 센서를 작게하거나 화소수를 늘릴순있어도, 렌즈크기를 줄여서 같은 성능을
내기는 거이 불가능에 가깝죠. 지금 현재 폰카에 달린 렌즈 보세요 다들 바늘구멍 렌즙니다.
최고급 컴팩트 디카의 성능에는 못쫒아가겠죠.
2008/12/02 09:41하지만 범용 컴팩트 디카 성능은 충분이 쫒아갈 수 있지 않을까요?