windows ce 운영체제 개요 -...
TRANSCRIPT
Windows CE 운영체제개요
Windows CE.NET 2
개 요
초기부터 임베디드 운영체제 시장을 위해 설계
임베디드 시스템을 위한 실시간 운영체제차세대 스마트 모바일 장치 및 메모리를 적게 차지하는 장치를 신속하게 개발할 수 있도록 지원
풍부한 운영체제 기능 및 완벽한 개발 환경을 제공다양한 네트워킹 기능, 하드 실시간, 적은 메모리 점유율, 풍부한 멀티미디어, 웹 브라우징 기능 등
사용자 정의 Windows CE 기반 장치를 개발하는 데 필요한 모든 기능을 포함
Windows CE.NET 3
역 사
Q4 2006
WinCE V6.0
Windows CE.NET 4
특 징 (1)
작은 시스템을 위한 OS
기능 메모리 용량
Kernel + File system 200KB
+ Communication 800KB
+ Graphics and Shell 1.3MB
+ Applications (Pocket Word) 4MB
+ Internet Explorer 8MB
Windows CE.NET 5
특 징 (2)
다양한 하드웨어 지원
Core Model
ARM ARM720T, ARM920T, ARM1020T, StrongARM, Xscale
MIPS MIPS II/32 w/FP, MIPS II/32 w/o FP, MIPS16, MIPS IV/64 w/FP, MIPS IV/64 w/o FP
SHx SH-3, SH-3 DSP, SH-4
x86 486, 586, Geode, Pentium I/II/III/IV
PPC PPC403, MPC823, MPC850, MPC860 -> .NET부터 미지원.
(참고) - WinCE 5.0부터는 제한된 MPU만 지원
- 추가적으로 삼성 S3C2410을 지원
Windows CE.NET 6
특 징 (3)
표준 API, 프로그래밍 모델 및 도구 사용Win32 API 제공
지원 안함 : MS-DOS, Win 3.X , ODBC, OLE
지원 : 데이터베이스, MFC, COM, ATL
OS 구성의 모듈화 및 ROM 부팅200여개의 모듈로 되어 있음
각 모듈은 LIB 형태로 나뉘어 있음
압축되지 않은 운영체제 이미지는 ROM에서 실행가능
Windows CE.NET 7
특 징 (4)
실시간 지원(Real Time Support)이전 버전 Windows CE :일부 실시간
Windows CE 3.0 : 커널부터 실시간
Windows CE.NET : 다양한 실시간 기능
256 levels of thread priority, Nested Interrupts
Per thread quantum, improved timer accuracy
Priority Inheritance Protocol to overcome Priority Inversion Problem
다기능(강력한) 제품에 사용 – 고급기능
고급응용서비스, 통신, 데이터베이스, 브라우저, 지역화, 멀티미디어, 디스플레이, 보안
Windows CE.NET 8
특 징 (5)
효과적인 개발환경플랫폼 빌더(Platform Builder)
정의: Windows CE 운영체제 이미지를 만들기 위한 개발 도구
운영 체제의 구성 요소(components)들을 선택하고 하드웨어에 맞는 드라이버들을 빌드하여 운영체제 이미지 만듬
에뮬레이터, 보드 지원 패키지(BSP) 마법사, 커널 디버거, 원격 도구, Windows CE 테스트 키트, 카탈로그 등의 기능이 포함
Windows CE.NET 9
특 징 (6)
효과적인 개발환경 (계속)
eMVT (eMbedded Visual Tools)
CE 운영체제용 응용프로그램 개발도구
eMbedded Visual C/C++와 eMbedded Visual Basic을 포함
Windows CE용 MFC 및 ATL을 지원
원격 프로세스 뷰어 또는 원격 레지스트리 편집기와 같이 응용프로그램 개발할 때 유용한 일련의 원격 도구와 원격 디버거를포함
eMVT는 독립된 IDE로 홀로 설치될 수도 있으며, 기존 Visual Studio.NET(사실상 Visual Studio 7.0 버전)과 함께 설치
Windows CE.NET 10
특 징 (7)
강력한 제품 사용고급 응용 서비스: DCOM, Active X, MSMQ (Message Queue Service)
통신: 직렬, TAPI, 인터넷 연결 공유(ICS), PPTP, IrDA, TCP/IP, FTP, HTTP, 웹 서버, UPnP, SNMP, 원격 데스크탑 프로토콜
데이터베이스: CE 데이터베이스 API(Win32), OLEDB, ADOCE, SQL Server 2000 Windows CE Edition
브라우저: HTML 3.2 브라우저 또는 Internet Explorer 4.0 호환브라우저 지원
지역화: 유니코드 기반. 한국어, 네덜란드어, 영어, 프랑스어, 독일어, 이탈리아어, 일본어, 포르투갈어(브라질) 등
멀티미디어: DirectX, DirectShow, DirectDraw 및 DirectSound
디스플레이: 터치 스크린, 일반 디스플레이, 흑백으로 픽셀 당32 비트(bpp)로 실행되는 장치 등을 지원
보안: Kerberos 보안 프로토콜 및 SSL(Secure Sockets Layer) 제공
Windows CE.NET 11
특 징 (8)
세밀한 전원관리전원 꺼짐: 이 상태에서는 CPU가 꺼지고 RAM에 전원을 공급하지 않는다. (모든 플랫폼 장치가 꺼져 있는 상태.)
켜짐: 표준 실행 모드. CPU가 실행되어 스레드를 예약하고, RAM과 모든 플랫폼 장치에 전원을 공급한다.
유휴 상태: 이 상태에서는 실행되는 스레드가 없고 CPU는 일시중단 모드에서 인터럽트 예외만 관리한다. RAM에는 전원이 공급되어 모든 값이 유지하지만 그 외 모든 장치가 켜져 있다.
일시 중단: 이 상태에서는 실행되는 스레드가 없고 CPU는 일시중단 모드이며 타이머 인터럽트가 중단된다. RAM에는 전원이공급되어 모든 값이 유지하지만 그 외 모든 장치가 켜져 있다.
위험 전원 꺼짐: 이 상태에서는 CPU가 일시 중단되며, RAM은자동 새로 고침 상태로 에너지 소비가 가장 적다. 모든 플랫폼장치가 꺼져 있다.
Windows CE.NET 12
적용 분야
Overview of Windows CE.NET
Windows CE.NET 14
Overview
Overview of Windows CE.NET
Core Operating System Architecture
Advanced Features of Windows CE.NET
Networking and Communications
Real-Time Communication
Multimedia Support and Architecture
Security Features and Architecture
Internationalization
Windows CE.NET 15
Overview of Windows CE.NET
Windows CE.NET: Design Goals
What is New in Windows CE.NET?
Basic Configurations
Target Hardware Support
Windows CE.NET 16
Windows CE.NET: Design Goals
Modular and compact operating system
Wireless and wired connectivity
Robust real-time capabilities
Rich multimedia and multilingual support
Strong development tool support
Windows CE.NET 17
What Is New in Windows CE.NET?
Internet Explorer 5.5 for CE
Wireless support
Multimedia
Customizable UI
Security Services
Real-time collaboration and communication
Better multi-language support
ClearType
Windows CE.NET 18
Basic Configurations
PDA or mobile handheld deviceVariants with our without applications, such as WordPad
Cell phone/smart phone160x220 nominal display resolution
Web PadTouch-screen user interface and 640x480 or larger display
Internet applianceBrowser-based with a fixed (CRT or LCD) display and a keyboard.
Media appliancePlayback or store music, video, and other electronic media
Digital imaging deviceCamera, projector, and printer
Windows CE.NET 19
Basic Configurations (con’t)
Set-top boxConnects to a TV for display of Internet /media content
Residential gatewayConnects to the internet and shares that connection with a wired or wireless home network
Industrial automation deviceHuman Machine Interface (HMI) or Programmable Logic Controller
Retail Point-of-Sale deviceSelf-service kiosks, electronic payment terminals, POS terminals
Windows thin clientMinimal remote access terminal with constrained shell and RDP
Windows CE.NET 20
Basic Configurations (con’t)
Tiny KernelSmallest functional Windows CE image
Starting point for the most compact, headless devices
Custom DeviceThe most fully customizable configuration
Allows you to choose from all operating system features
Also a variant for devices
Windows CE.NET 21
Target Hardware SupportProcessor Familly CPU SDB BSP Name
ARM
Intel SA1110 Intel SA111x
Assabet SDB
SA11X0BD
ARM920 ARM Integrator
AP SDB
ARMINTEGRATOR
ARM1020
Intel Xscale Intel Lubock SDB TBD
MIPS
NEC Vr4122 NECDDB-Vr4122
Eagle SDB
EAGLE
NEC Vr5432 NEC DDB-Vrc5476
Boston SDB
DDB5476
SHx
SH4-7750 Hitachi SH4
Aspen SDB
ASPEN
SH3-7729 Hitachi SH3
Keywest SDb
KEYWEST
X86
P5/P4/PIII/PII/CelK6x/Athlon
CEPC CEPC
NS Geode National Geode
Reference Platofrm
GEODE
Windows CE.NET 22
Core Operating System Architecture
Applications
Programming Interface
(Win32, COM, MFC, ATL)
Communication Interface
(Winsock, RAS, TAPI)
Kernel GWES
Device
Manager
Filesys Networking
And
Communications
SystemDevice Drivers
OAL
Hardware
Windows CE.NET 23
Core Operating System Architecture (con’t)
OEM Hardware
Embedded Shell
Applications
WIN32 APIsCOREDLL, WINSOCK, OLE, COMMCTRL, COMMDLG, WININET, TAPI
Windows CE Shell ServicesRemote Connectivity
KernelLibrary
IrDAGWES Device
ManagerFile
ManagerTCP/IP
OALBootloader Drivers Device
drivers File drivers
Windows CE.NET 24
Core Operating System Architecture (con’t)
Windows CE.NET 25
The OEM Adaptation Layer
Layer between the Kernel and the hardware
Set of functions related to system startup, interrupt handling, power management, profiling, time, and clock
Included in BSPs for supported SDBs
Coded by OEMs to adapt windows CE to their own custom platforms
Linked with code provided by Microsoft to build the Kernel
Windows CE.NET 26
The Kernel Module
Portable across supported processorsKernel is portable as most of the operating system is written in C
NK.EXE, COREDLL.DLLNK.EXE contains Kernel code and Coredll.dll is the operating system core DLL module
Saving system resourcesCE loader is designed to save system resources by loading application pages as and when needed and by keeping only one physical copy of a DLL
Demand pagingLoads virtual memory pages into physical memory when needed
Multiple execute in place regionsAllows applications to execute code directly from read-only memory
Windows CE.NET 27
Device Driver System
Device driverLinks an operating system and a device
Built-in Drivers vs. Installable DriversBuilt-in drivers are installed by the platform manufacturerInstallable drivers are third-party peripheral devices that end users can connect to a windows CE-based platform
Native Drivers vs. Stream DriversAll of the device drivers managed by GWES are native device driversDevice manager loads stream interface drivers when the system boots, if those drivers are listed in the registry
Monolithic Drivers vs. Layered DriversMonolithic drivers implement interface directly in terms of actions on the device they controlLayered drivers separated the implementation into two layers
Windows CE.NET 28
The GWES Modules
Graphics, Windowing, and Event SubsystemGraphics output: display and printer
User input: keyboard, stylus, and mouse
Window management: message routing
Graphic Device Interface (GDI)Is the drawing subsystem of GWES
Control how text and graphics are displayed
Uses a device context to store drawing attributes for a specified device
Windows CE.NET 29
The Filesys Module
The Filesys ModuleImplements the object store
File systems
Registry
Property Database
Substitutes for a hard drive on an embedded drive
Resides in ROM, RAM, or both
Can have a maximum size of 256 MB
Windows CE.NET 30
The Filesys Module (con’t)
Storage managerIs responsible for all external storage items, including all the file systems and block drivers
Installable file systemsCan provide access to a floppy diskette, a hard drive, a flash file system on a PC Card, or to other external storage devices
File-shadowing mechanismAllows a file to be stored both in RAM and ROM.
Differences from other Windows file systemsNo letters assigned to file systemsNo concept of current directoryNo support for overlapped I/OAll files stored in Ram are automatically compressed
Windows CE.NET 31
The Filesys Module (con’t)
RegistryProvides a common repository for system settings, application data, and user preferences
Resides in RAM, if not present in RAM, the registry can be reloaded from persistent storage or rebuilt from ROM
Registry functions specific to Windows CE
Property DatabaseProvides a lightweight database management system
Accessible using a new set of Win32 API functions specific to Windows CE
Data stored in a flat model
Accessible to ActiveX Data objects for Windows CE (ADOCE)
Supports multiple volumes on installable file systems
Windows CE.NET 32
Real Time Operating System
Bounded interrupt response latency
Timer precision configurable (1millisecond default)
System timer tick independent of thread quantum
Nested interrupt support
Priority inheritance
Protected virtual memory
Synchronization objects
Windows CE.NET 33
Power Management Features
Power management features respond to system calls for turning the system off or for idlingDevice level power states, DO-D4
D0-Full on: Full power with full functionalityD1-Low On: Slightly reduced functionality, lower power and/or performanceD2-Standby: Partial power with automatic wakeD3-Sleep: Partial power with device initiated wakeD4-Off: Power off
The only device power state that all devices must support is D0, full on
Windows CE.NET 34
Advanced Features of Windows CE.NET
Networking and Communications
Real-Time Communication
Multimedia
Security
Internationalization
Windows CE.NET 35
Networking and Communications
Networking and Communications Architecture
Wireless Platform Support
Component Object Model
Additional Networking Features
Networking Scenarios
Windows CE.NET 36
Networking and Communications Architecture
Applications
Web server MSMQ COM SNMP WNet WinInet
TAPI RAS IP Helper Winsock
Unimodem PPP Protocol Stacks(TCP/IP, IrDA)
Serial NDIS(LAN, WAN, TR, IrDA)
Network Drivers
Serial Port Ir Port FIR H/W Network Interface
Windows CE.NET 37
Wireless Platform Support
802.11 zero configuration and 802.1xEnables roaming with minimal configuration and logon using user/password and certificate
BluetoothSupports dial up networking, WLAN access and object exchangeNDIS 5.1
Wireless enhancements, battery status
MediaSenseConnect/disconnect, roaming in range/out of range notifications
Windows CE.NET 38
Component Object Model
COM is a platform-independent object-oriented system
OEMs can choose from the different levels of run-time support
Minimal COM (MCOM) provides baseline API set
COM provides a mid-range implementation of COM and OLE automation
COM storage (COM_STG) combines the midrange COM implementation with structured storage functionality
DCOM provides full-featured distributed COM implementation
Marshaling support
Windows CE.NET 39
Additional Networking Features
Dynamic Host Configuration Protocol (DHCP)
Internet Connection Sharing (ICS)
Virtual Private Networking (VPN)
Windows Sockets 2 (Winsock)
Message Queuing (MSMQ)
Object Exchange (OBEX)
Infrared Data Association IrDA
IEEE 1394 (Firewire)
MediaSence
Media Access Control (MAC) Bridging
Windows CE.NET 40
Networking Scenarios
Personal Area Networking (home, office)Scenarios: PDA, Internet Appliance, Networking PrinterFeatures: Bluetooth, IrDA, UPnP
Local Area Networking (office, factory)Scenarios: Thin Client, Enterprise Web Pad, Industrial AutomationFeatures: Ethernet, DCOM
Wireless LAM (office, coffee shop)Scenarios: Cell Phone, PDA, Web PadFeatures: Ethernet, Zero Configuration 802.11/802.1x
Wide Area Networking (WAN)(home, hotel)Scenarios: PDA, Internet Appliance, Web Pad, Residential GatewayFeatures: TAPI, RAS, PPP, Unimodem, VPN, PPTP
Windows CE.NET 41
Real-Time Communication
RTC Support
RTC Architecture
RTC Scenarios
Windows CE.NET 42
RTC Support
Real time Audio Communication (VoIP)
SIP (Session Initiation Protocol) based
Between IP devices- peer to peer or through server
Across gateways to PSTN phones
Instant Messaging
Presence
Contacts
Watchers
Windows CE.NET 43
RTC Architecture
User App Instant Messenger
RTC API
SIP RTP PINT FTP HTTP
TCP / IP
PPP
Serial Driver
NDIS
Hareware
Windows CE.NET 44
RTC Scenarios
Connectivity combinationsCE device-to-CE or XP device
CE device-to-PSTN phone
CE device-controlled PSTN Phone-to-CE or XP device
Application requirementsInstant Messaging over a Network
CE-to-CE or CE-to-XP, no SIP server needed
Monitor a Contact’s Presence or Control Presence Information
CE device on a network with an SIP server
Windows CE.NET 45
Multimedia Support and Architecture
Multimedia Support
Multimedia Architecture
Multimedia Scenarios
Windows CE.NET 46
Multimedia Support
DirectDraw
Direct3D
DirectDVD
DirectMusic 7
DirectShow 6.1
DirectSound® 6.1
Legacy Video Playback
Midi Playback
MP3 Playback
MPEG-1 Video Playback
Digital Rights Management (DRM)
Windows CE.NET 47
Multimedia Architecture
Browsers / Applications
Media Player Control COM Interface
Source Filter(ASF, AVI, etc)
Transform Filter Render Filter
Media Source(Internet or file system)
DirectX foundation
Media destination(audio / video hadrware)
DirectShow filter graph manager
Windows CE.NET 48
Multimedia Scenarios
Stream or play live or recorded audio and video media from local or remote locations on mobile or fixed devices
Possible applicationsDigital Media appliances
Web Pads and Internet portals
Set-top boxes
Telecommunications equipment
Industrial control and medical applications
Education and training
Windows CE.NET 49
Security Features and Architecture
Which Security Features Are Supported?
SSPI Security Architecture
Security Scenarios
Windows CE.NET 50
Which Security Features Are Supported?
Trusted environment
Certified applications
CyptoAPI
Protected registry
Password control
Protected store
LDAP Security Model
Secure Sockets Layer
PPTP
PC/SC
Secure file System
DCOM security
802.11 security
Windows CE.NET 51
SSPI Security Architecture
SSPI-Security Support Provider Interface
Kerberos protocol
NTLM protocol
Windows CE.NET 52
Security Scenarios
Control access to the device
Protect against unauthorized applications
Secure data storage and file systems
Secure network and internet connections
Windows CE.NET 53
Internationalization
Platform localization options:Localization vs. Internationalization
Changing the language of your operating system
Adding locales
Selecting codepages
Creating international Applications:Building for a different Locale
Shared source files
Understanding Unicode and NLS
Windows CE.NET 54
Internationalization (con’t)
Common practice for developing international software:
Use a few target locales for initial development and testingResource Localization: Strict or Non-strict
Translation TipsAvoid using vague words, colloquialisms, jargon, acronyms, and abbreviationsUse good grammarAvoid dynamic concatenation of different stringsAvoid hard-cording file names in a binary filesAvoid including text in image and icons
International ConventionsLocales might have different conventions for expressing informationLocales might have different keyboard conventions
Windows CE.NET 55
Windows CE 5.0의 특징 (1)
제한된 CPU 지원ARM, MIPS, SH4, X86 계열의 CPU만 기본적으로 지원Intel의 전략에 따라 기존의 StrongARM 계열 CPU는 지원하지않음PPC 및 SH3 계열 CPU을 지원하지 않음추가적으로 삼성 S3C2410을 지원함상용 제품 수준의 안정화된 OAL(OEM Adaptation Layer) 제공
확장된 디바이스 드라이브SDIOUSB 2.0PC CARD 32Bit보강된 장치관리자 기능ATAPI 기능 보강양질의 디바이스 드라이브 50여개 지원
Windows CE.NET 56
Windows CE 5.0의 특징 (2)
웹브라우즈 기능 추가팝업 윈도우 차단, URL 자동완성 기능, 상태표시 바, 보강된 TV 렌즈 지원 등의 기능 추가P3P(Plaform for Privacy Preference) 지원
멀티미디어 기능 추가Direct3D Mobile – DirectX 8과 COM 기반의 3D 프로그래밍모델 설계 지원빠른 그래픽 및 텍스트 렌드링과 알파 블렌딩 처리드라이버의 최적화를 위한 테스트 및 벤치마킹 도구재생 시작시간을 줄이기 위한 Fast Start스틸사진 코덱을 위한 단일 라이브러리(JPG, GIF, PNG, TIFF, BMP, ICO)윈도우 미디어 코덱 업데이터
Windows CE.NET 57
Windows CE 5.0의 특징 (3)
안정화된 커널Shared Heap memory 성능 향상64개 시스템 인터럽트 지원워치독 타이머 기능 향상전원관리 스레드 우선순위 조정
셀 기능 확장사용자 인터페이스 기능 향상휴지통 기능 향상
보안 기능 변경보안 관련 기능 향상
편리한 통합 개발 환경기존 IDE 환경과 명령 프롬프트 환경간의 동기화 지원 빌드에 소요되는 시간 및 편의성을 대폭 향상
Windows CE.NET 58
Windows CE 5.0 vs Windows Embeded CE 6.0
프로세스 주소 공간이 32MB에서 1GB로 증가
프로세스의 수가 32개에서 32K로 증가
사용자 모드 및 커널 모드 장치 드라이버가 가능
Device.exe, filesys.exe, GWES.exe 파일이 커널 모드로 이동
SetKMode 및 설정 프로세스 허용이 불가능해짐
System 호출 성능 개선
PC 운영체제 수준의 성능 향상 및 보안 기능 강화