Microsoft Windows Embedded Compact

Windows CE
Windows CE 6.0.png
윈도우 CE 6.0 에뮬레이터 구동 사진
운영체제 정보
개발 마이크로소프트
출시 1997년 12월 29일
최신버전 8.0 (Embedded Compact 2013)
2013년 6월 13일
지원 일반 지원: 2018년 10월 9일까지
연장 지원: 2023년 10월 10일까지
플랫폼 ARM, MIPS, SuperH[1], x86
커널 모놀리딕 커널, 하이브리드 커널
작성언어 C
라이선스 상용 비공개
웹사이트 Windows Embeded

윈도우 임베디드 컴팩트(Windows Embedded Compact)는 최소의 저장소를 가진 장치에 최적화된 운영 체제다. 이름이 바뀌기 전엔 윈도우 CE였다.

기능[편집 | 원본 편집]

CE 커널은 EC라곤 안 하더라 1MB 이하의 메모리에서도 구동된다. 장치 저장소 없이도 구성할 수 있으며, 최종 사용자가 확장을 불어하는 형식의 "닫힌" 시스템을 구성할 수도 있다. (이를테면, ROM 내부에 변경 불가능하도록 넣어버릴 수도 있다) 윈도우 CE는 사용 중단시 휴면 상태로 들어가는 등 실시간 운영체제를 표방한다. 버전 3부터는, 256단계의 시스템 우선도 조절을 지원하며[2], 우선도 반전을 처리하기 위해 우선도 상속 기능을 사용한다. 실행의 필수 단위는 스레드이다. 스레드는 인터페이스를 간단하게 만들며, 실행 시간을 향상시켜준다.

마이크로소프트는 'CE'가 어떤 말의 준말도 아니라고 했지만, 많은 사람들은 'CE'가 'Consumer Electronics(소비자 가전)', 'Compact Edition(간소화 제품군)'을 뜻한다고 본다. 마이크로소프트는 대신 수많은 윈도우 CE 디자인 수칙('Compact(간소), Connectable(연결 가능한), Compatible(호환성의), Companion(동료), Efficient(효율)')을 암시한다고 했다. .”[3] 개발 단계에서 코드 네임 "페가수스"로 알려진 최초 버전은 PC의 Windows 같은 그래픽 사용자 인터페이스(GUI)와 수많은 마이크로스프트의 인기 소프트웨어를 구현하였으며, 더 적은 용량의 저장소, 메모리를 줄여 오늘날 팜탑의 속도에 맞추었다. (하지만 현재는 역시 CE가 무거운 편에 속한다. 주로 최적화 능력의 문제지만) 그때 이래로, 윈도우 CE는 장치 기반 임베디드 실시간 운영체제로 발전하였다. 더 이상 단순히 핸드헬드 PC만을 지향하지도 않는다[4]. AutoPC, 윈도우 모바일, 스마트폰 OS, 포터블 미디어 센터, Zune와 기타 산업 장비들과 임베디드 시스템 등 많은 플랫폼들은 핵심을 윈도우 CE 운영체제에 기반을 두고 있다. 또한 세가의 드림캐스트의 컨트롤(사용하는 소프트웨어 구동시 Powered by Windows CE 마크가 나타남), 엑스박스의 게임 콘솔을 구동하는데도 커스텀 버전이 사용되었다.

윈도우 CE와 다른 마이크로소프트 운영체제와의 차이점은 소스 코드 형태에서 기인한다. 우선, 소스는 원시 코드 형태로 제조사로 제공되어 하드웨어에 맞게 조정할 수 있다. 그 후 플랫폼 빌더 같이 소스 코드 형태에서 공개판으로 바꿀 때 필요한 몇몇 구성 요소를 제공된다. 그러나, 특정 하드웨어 환경(CPU 이외)에서 도입할 필요가 없는 많은 핵심 구성 요소들이 소스 없이 바이너리 형태로 여전히 제공되고 있다.

특징[편집 | 원본 편집]

  • 스마트폰보다는 약간 커다란 터미널 장치에 폭넓게 쓰인다.
물론 스마트폰에 쓰이는 사례도 많다. 특히 중소기업 제품 또는 산업용 단말기에 많다.
  • 외형은 Windows PC와 거의 동일하다.
  • 제조사가 커스터마이징할 수 있는 부분이 많다. 하지만 이 강점은 안드로이드도 갖게 되어서, 서로 경쟁에 들어간 듯.
  • CE5.0 이후로 Core와 Pro, Pro Plus 등으로 제품군이 세분화되었다. Core의 경우 탭앤홀드 기능도 작동하지 않고[5] 여러 기능들이 빠지므로, 제조사 자체 UI로 덮어버리는 기기에 흔히 쓰이게 되었다.
  • 웬만한 기기는 Core 버전을 탑재하고 있다. Pro에 IE까지 탑재한 경우는 진짜 드물다. Core 버전은 Windows CE 모드로 나간다 해도 필수 DLL 부족 등의 문제로 호환성이 떨어지며 그리 할 수 있는 게 많이 없다.
  • 풀 기능을 탑재한, 국내에 알려진 제품은 넥시오, 시그마리온(일본) 정도다.
  • 유저가 제공한 DLL 모음을 통해 PPC 계열의 앱과 호환성을 가질 수 있게 된다. 단, WM5 이후 앱은 실행이 안 되는 경우가 많다.
  • 윈도우 모바일ARM 아키텍쳐 기반만 있고 호환성이 보장되어 있는 데 반해, 윈도우 CERISC의 하위 아키텍쳐 지원이 다양하기 때문에 그 사이에도 호환성은 전혀 없다.
  • 위에 설명한 경우 이외의 자잘한 호환성 문제를 포함하여, 같거나 비슷한 하드웨어용으로 만들어지지 않은 상당수 앱은 실행에 실패하게 된다.

버전[편집 | 원본 편집]

1.0 1996년 9월 출시 MSCE1.[6] 코드네임 "Alder".[7]
  • 장치는 "핸드헬드 PC"(HPC)로 명명되었다.[6]
2.0 1997년 9월 출시 MSCE2.[6] 코드네임 "Birch".[7] *"팜사이즈(palm-size) PC"라고 불리었다.[6]
  • 실시간 확인 가능한 작업 스케쥴러가 있었다.
  • 아키텍쳐: ARM, MIPS, PowerPC, StrongARM, SuperH, x86.
  • 32비트 컬러 스크린을 지녔다. 하지만 CE는 기본적으로 16비트까지만 지원한다. 이 자료 뭔가 이상하다.
  • SSL 2.0과 SSL 3.0 지원.
3.0 2000년 6월 출시MSCE3.[6] 코드네임 "Cedar".[7]
  • 초단위 레벨의 리얼 타임으로 만드는 대규모 코드 수정이 있었다.
  • "Pocket PC 2002"와 "스마트폰 2002"의 기반이다.[6]
  • 우선 순위 단계가 8개에서 256개로 늘어났다.[6]
  • 오브젝트 스토어가 65536개에서 4억 1900만 개로 늘어나, 더 많은 오브젝트를 허용하게 되었다.[6]
  • 중요한 API에 대한 접근이나 레지스트리 쓰기가 금지되었다.[6]
4.x 2002년 1월 출시 MSCE4.[6] 코드네임 "Talisker/Jameson/McKendric".[7] 드라이버가 크게 변경되었으며,
기능도 늘어났다.이름 끝에 ".NET"이 붙었다.
5.x 2004년 8월 출시[7] 수많은 기능 추가. 코드네임 "Macallan".[7]
  • 제조사에게 자동 오류 보고 기능 추가.[9] 이름에서 ".NET"은 다시 떨어졌다.
  • Direct3D 모바일 탑재, Windows XP의 DirectX 멀티미디어 API의 COM 기반 버전.[9]
  • 2D 그래픽 지원을 위한 DirectDraw, 카메라와 비디오 지원을 위한 DirectShow 탑재.[9]
  • 원격 데스크톱 연결 (RDP) 지원.(어라? 4.1의 넥시오는 원래 되잖아?)[10]
6.0 2006년 9월 출시. 코드네임 "Yamazaki".[7]
  • 프로세스 주소 크기가 32 MB에서 2 GB로 증가. 프로세스 제한 완화.
  • 최대 프로세스 개수 제한이 32개에서 32768개로 증가.[11]
  • 유저 모드와 커널 모드 드라이버가 가능.
  • 실제 메모리(RAM) 관리 512MB
  • Device.exe, filesys.exe, Gwes.exe 가 커널 모드로 옮겨졌다.
  • SetKMode 와 프로세스 권한 변경이 불가해졌다.
  • 시스템 응답 속도가 개선되었다.[12]
7.0 2010년 4분기 출시. 제품명이 Embedded 7 Compact로 Windows 7 Embedded의 일부가 되었다. 이름만
  • 듀얼 코어 CPU 지원 (SMP, ARMv6)
  • WIFI 위치 정보 시스템
  • 블루투스 3.0 + HS
  • 셀코어
  • DLNA (Digital Living Network Alliance)
  • DRM 기술
  • 미디어 전송 프로토콜
  • IE8 렌더링 Rich Media Plug-Ins
  • NDIS 6.1 지원
  • 인상적이고 기능적인 사용자 인터페이스를 위해, Windows Presentation Foundtion과
    Silverlight 기술을 이용한 UX C ++ XAML API 추가
  • 추가 터치 및 제스쳐 입력
2013 2013년 6월 출시. 약칭 Compact 2013
  • DHCPv6 클라이언트 주소 자동 생성/임의 자동 생성 지원
  • IPv6 VPN 연결을 통한 L2TP/IPsec
  • 스냅샷 부팅
  • 익스프레션 블렌드 지원을 위한 향상된 XAML 데이터 바인딩
  • 메모리(RAM) 초과 모델 향상
  • 2023년 10월 10일까지 지원
  • HTML 도움말 추가

현재 상황[편집 | 원본 편집]

산업용 PDA에 널리 쓰이는 임베디드 운영 체제로, 이를 기반으로 한 윈도우 모바일이 사실상 폭망 최후를 맞이했음에도 불구하고, 휴대용 결제기나 택배 배달 고객 서명 장치, 전화기(!) 등으로 여전히 산업 기반에서 현역 활동중이다. 다만, 대부분의 제품에 탑재된 Windows CE 6.0의 출시 년도가 한참 된 관계로, 근래에는 안드로이드 커스텀 버전을 쓰거나 그냥 스마트폰OTG블루투스를 십분 활용하여 외부 장치를 연계시키는 방식으로 만드는 추세에 있다.

내비게이션에도 잔뜩 탑재되던 적이 있었으나, 당장 아이나비 전용기만 봐도 윈도우 CE 대신 안드로이드를 넣어서 출시하는 것을 알 수 있다. 일반 소비자에게 친숙한 윈도우 모바일과 윈도우 폰 역시 8 버전 이후로 윈도우 CE와 관계가 완전히 끊겼고, Windows 10 Raspberry 버전까지 출시하면서 윈도우 8의 ARM 아키텍쳐 등 호환성 강화 및 경량화, 휴대기기 탑재가 매우 진전된 탓에 윈도우 CE의 설자리는 점점 좁아지고 있다.

x86 아키텍쳐를 위한 Windows XP Embedded와 같은 임베디드 변형을 지속적으로 출시해왔다. 특징은 PC용 OS와 같은 외관을 갖고 있음에도, 기기에 미리 설치하는 OS라는 점으로, 임베디드 OS답게 필요한 기능만 골라서 Platform Builder에서 빌드하고 배포하는 형식을 갖고 있다. Windows 8에 이르러서는 Industry 버전을 내놓아서 기존의 계보를 잇고 있다. 다만, 소형 기기에 대해서는 상기한 Windows 10 변형 버전을 따로 배포하되 대부분 하나의 Windows 제품으로 라이선스만 나눠서 통합되는 방향으로 진행중이다.

같이 보기[편집 | 원본 편집]

관련 사이트[편집 | 원본 편집]

각주