Transcript 슬라이드 1
Windows CE 운영체제 개요 강의 내용 Windows Windows Windows Windows Windows Windows CE 개요 및 특징 CE 역사 CE.NET 4.2 개요 CE 5.0 Embedded CE 6.0 CE 5.0 vs. Windows CE 6.0 임베디드시스템소프트웨어 - Windows CE 2 Windows CE 개 요 초기부터 임베디드 운영체제 시장을 위해 설계 임베디드 시스템을 위한 실시간 운영체제 차세대 스마트 모바일 장치 및 메모리를 적게 차지하는 장 치를 신속하게 개발할 수 있도록 지원 풍부한 운영체제 기능 및 완벽한 개발 환경을 제공 다양한 네트워킹 기능, 하드 실시간, 적은 메모리 점유율, 풍부한 멀티미디어, 웹 브라우징 기능 등 사용자 정의 Windows CE 기반 장치를 개발하는 데 필요 한 모든 기능을 포함 임베디드시스템소프트웨어 - Windows CE 3 특 징 (1) 작은 시스템을 위한 OS 기능 메모리 용량 Kernel + File system 200KB + Communication 800KB + Graphics and Shell 1.3MB + Applications (Pocket Word) 4MB + Internet Explorer 8MB 임베디드시스템소프트웨어 - Windows CE 4 특 징 (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 5 특 징 (3) 표준 API, 프로그래밍 모델 및 도구 사용 Win32 API 제공 지원 안함 : MS-DOS, Win 3.X , ODBC, OLE 지원 : 데이터베이스, MFC, COM, ATL OS 구성의 모듈화 및 ROM 부팅 200여개의 모듈로 되어 있음 각 모듈은 LIB 형태로 나뉘어 있음 압축되지 않은 운영체제 이미지는 ROM에서 실행가능 임베디드시스템소프트웨어 - Windows CE 6 특 징 (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 7 특 징 (5) 효과적인 개발환경 플랫폼 빌더(Platform Builder) 정의: Windows CE 운영체제 이미지를 만들기 위한 개발 도구 운영 체제의 구성 요소(components)들을 선택하고 하드 웨어에 맞는 드라이버들을 빌드하여 운영체제 이미지 만듬 에뮬레이터, 보드 지원 패키지(BSP) 마법사, 커널 디버거, 원격 도구, Windows CE 테스트 키트, 카탈로그 등의 기능 이 포함 임베디드시스템소프트웨어 - Windows CE 8 특 징 (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 9 특 징 (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 10 특 징 (8) 세밀한 전원관리 전원 꺼짐: 이 상태에서는 CPU가 꺼지고 RAM에 전원을 공급하 지 않는다. (모든 플랫폼 장치가 꺼져 있는 상태.) 켜짐: 표준 실행 모드. CPU가 실행되어 스레드를 예약하고, RAM과 모든 플랫폼 장치에 전원을 공급한다. 유휴 상태: 이 상태에서는 실행되는 스레드가 없고 CPU는 일시 중단 모드에서 인터럽트 예외만 관리한다. RAM에는 전원이 공 급되어 모든 값이 유지하지만 그 외 모든 장치가 켜져 있다. 일시 중단: 이 상태에서는 실행되는 스레드가 없고 CPU는 일시 중단 모드이며 타이머 인터럽트가 중단된다. RAM에는 전원이 공급되어 모든 값이 유지하지만 그 외 모든 장치가 켜져 있다. 위험 전원 꺼짐: 이 상태에서는 CPU가 일시 중단되며, RAM은 자동 새로 고침 상태로 에너지 소비가 가장 적다. 모든 플랫폼 장치가 꺼져 있다. 임베디드시스템소프트웨어 - Windows CE 11 적용 분야 임베디드시스템소프트웨어 - Windows CE 12 Windows CE 역사 (1) WinCE V6.0 Q4 2006 임베디드시스템소프트웨어 - Windows CE 13 Windows CE 역사 (2) (1) Windows CE 1.0 - 1995년 초, Windows Pegasus라는 코드명으로 테스트 시작 - 저전력 하드웨어, 32비트 프로세서에서 배터리 문제 해결 요구 - 사양: • ① ② ③ ④ ⑤ ⑥ ⑦ ⑧ 기기의 크기: (18 * 10 * 2.5 cm) 를 초과하지 않아야 함 전원공급: 두 개의 AA사이즈 배터리 무게: 500g 미만 QWERTY 키보드 제공 (Shift, Control, Alt 있어야 함) 4 Gray 색상의 LCD와 터치스크린 탑재 해상도: 480 * 240 RAM: 2MB, ROM: 최소 4MB 적외선 포트, RS-232 시리얼 포트, PCMCIA 슬롯 장착 임베디드시스템소프트웨어 - Windows CE 14 Windows CE 역사 (3) (2) Windows CE 2.0 - 1997년 코드명 Birch로 시작 256컬러 또는 16 Gray 지원 해상도: 640*240 (HPC: High Performance Computing 개념 등장) Pocket PowerPoint 탑재, Pocket Outlook의 동기화 성능 향상 TrueType 폰트, Print 기능 지원 (3) Windows CE 3.0 - 코드명 Cedar로 커널기능 향상, 스레드 우선을 256단계로 확대 - 버전: • ① ② eMbedded HPC 2000- 업무형이라 엑셀, 엑세스, 워드, 파워포인트 포함 ƒPPC 2000 ③ 임베디드시스템소프트웨어 - Windows CE 15 Windows CE 역사 (4) (4) Windows CE 4.0 - 2001년에 출시 Internet Explorer 5.5 채택 Windows Media Player 8.5 , MSN 인스턴트 메신저 내장 Windows CE 3.0보다 나아진 전력관리 신형 CPU (인텔 PXA시리즈 등 ARMV4i 혹은 그 이상 급)에 최적화 버전이 PPC2000에서 PPC2002로 확장 (5) Windows CE 4.1와 Windows CE 4.2 - Windows CE 4.1 (2002년 10월), Windows CE 4.2 (2003년 9월) Internet Explorer 6.0 호환 Windows Media Player 9 내장 기존 PPC와의 호환성 고려 임베디드시스템소프트웨어 - Windows CE 16 Windows CE 역사 (5) (6) Windows CE 5.0 - Windows Media Player 10 지원 - DirectX 라이브러리 추가로 인한 Entertainment 강화 - Windows Mobile과 같은 코드 및 라이브러리 사용 및 라이브러리 대거 추가 (7) Windows CE 6.0 - 2006년 10월 발표함과 동시에 Windows CE 6.0이라는 명칭을 Windows Embedded CE 6.0으로 명명 임베디드시스템소프트웨어 - Windows CE 17 Windows CE 역사 (6) Windows Mobile Windows CE를 기반으로 한 모바일 플랫폼 (모바일 운영체제의 브 랜드 명) Windows CE를 기반으로 하고 있지만, 모바일 플랫폼과 관련한 API와 기능들이 추가되어 단독 운영체제로 인정 Windows CE vs. Windows Mobile Windows CE: PMP, Navigation 또는 산업용 단말기와 같은 단말기 운 영체제 Windows Mobile: Pocket PC, Smart Phone인 모바일 플랫폼으로 한정 Windows Mobile을 만든 이유 모바일 단말기의 표준 플랫폼을 정의 ‚UI, Shell, Development Tools, API를 위한 가이드 라인 제공 Windows용 애플리케이션의 호환성 향상 임베디드시스템소프트웨어 - Windows CE 18 Windows CE 역사 (7) Windows Mobile (계속) Windows Mobile 6.1기반 Mobile Phones 임베디드시스템소프트웨어 - Windows CE 19 Overview of Windows CE.NET 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 21 Overview of Windows CE.NET Windows CE.NET: Design Goals What is New in Windows CE.NET? Basic Configurations Target Hardware Support 임베디드시스템소프트웨어 - Windows CE 22 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 23 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 24 Basic Configurations PDA or mobile handheld device Cell phone/smart phone Browser-based with a fixed (CRT or LCD) display and a keyboard. Media appliance Touch-screen user interface and 640x480 or larger display Internet appliance 160x220 nominal display resolution Web Pad Variants with our without applications, such as WordPad Playback or store music, video, and other electronic media Digital imaging device Camera, projector, and printer 임베디드시스템소프트웨어 - Windows CE 25 Basic Configurations (con’t) Set-top box Residential gateway Human Machine Interface (HMI) or Programmable Logic Controller Retail Point-of-Sale device Connects to the internet and shares that connection with a wired or wireless home network Industrial automation device Connects to a TV for display of Internet /media content Self-service kiosks, electronic payment terminals, POS terminals Windows thin client Minimal remote access terminal with constrained shell and RDP 임베디드시스템소프트웨어 - Windows CE 26 Basic Configurations (con’t) Tiny Kernel Smallest functional Windows CE image Starting point for the most compact, headless devices Custom Device The most fully customizable configuration Allows you to choose from all operating system features Also a variant for devices 임베디드시스템소프트웨어 - Windows CE 27 Target Hardware Support Processor Familly ARM MIPS SHx X86 CPU SDB BSP Name Intel SA1110 Intel SA111x Assabet SDB SA11X0BD ARM920 ARMINTEGRATOR ARM1020 ARM Integrator AP SDB Intel Xscale Intel Lubock SDB TBD NEC Vr4122 NECDDB-Vr4122 Eagle SDB EAGLE NEC Vr5432 NEC DDB-Vrc5476 Boston SDB DDB5476 SH4-7750 Hitachi SH4 Aspen SDB ASPEN SH3-7729 Hitachi SH3 Keywest SDb KEYWEST P5/P4/PIII/PII/CelK6x/At hlon CEPC CEPC NS Geode National Geode Reference Platofrm GEODE 임베디드시스템소프트웨어 - Windows CE 28 Core Operating System Architecture Applications Programming Interface Communication Interface (Win32, COM, MFC, ATL) (Winsock, RAS, TAPI) Device Kernel GWES Manager Device Drivers OAL Filesys Networking And Communications System Hardware 임베디드시스템소프트웨어 - Windows CE 29 Core Operating System Architecture (con’t) Applications Embedded Shell Remote Connectivity Windows CE Shell Services WIN32 APIs COREDLL, WINSOCK, OLE, COMMCTRL, COMMDLG, WININET, TAPI Kernel Library GWES File Manager Device Manager IrDA OAL Bootloader Drivers Device drivers TCP/IP File drivers OEM Hardware 임베디드시스템소프트웨어 - Windows CE 30 Core Operating System Architecture (con’t) 임베디드시스템소프트웨어 - Windows CE 31 The OEM Adaptation Layer(OAL) 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 32 The Kernel Module Portable across supported processors NK.EXE, COREDLL.DLL CE 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 paging NK.EXE contains Kernel code and Coredll.dll is the operating system core DLL module Saving system resources Kernel is portable as most of the operating system is written in C Loads virtual memory pages into physical memory when needed Multiple execute in place regions Allows applications to execute code directly from read-only memory 임베디드시스템소프트웨어 - Windows CE 33 Device Driver System Device driver Built-in Drivers vs. Installable Drivers Built-in drivers are installed by the platform manufacturer Installable drivers are third-party peripheral devices that end users can connect to a windows CE-based platform Native Drivers vs. Stream Drivers Links an operating system and a device All of the device drivers managed by GWES are native device drivers Device manager loads stream interface drivers when the system boots, if those drivers are listed in the registry Monolithic Drivers vs. Layered Drivers Monolithic drivers implement interface directly in terms of actions on the device they control Layered drivers separated the implementation into two layers 임베디드시스템소프트웨어 - Windows CE 34 The GWES Modules Graphics, Windowing, and Event Subsystem Graphics 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 35 The Filesys Module The Filesys Module Implements 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 36 The Filesys Module (con’t) Storage manager Installable file systems Can 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 mechanism Is responsible for all external storage items, including all the file systems and block drivers Allows a file to be stored both in RAM and ROM. Differences from other Windows file systems No letters assigned to file systems No concept of current directory No support for overlapped I/O All files stored in Ram are automatically compressed 임베디드시스템소프트웨어 - Windows CE 37 The Filesys Module (con’t) Registry Provides 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 Database Provides 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 38 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 39 Power Management Features Power management features respond to system calls for turning the system off or for idling Device level power states, DO-D4 D0-Full on: Full power with full functionality D1-Low On: Slightly reduced functionality, lower power and/or performance D2-Standby: Partial power with automatic wake D3-Sleep: Partial power with device initiated wake D4-Off: Power off The only device power state that all devices must support is D0, full on 임베디드시스템소프트웨어 - Windows CE 40 Advanced Features of Windows CE.NET Networking and Communications Real-Time Communication Multimedia Security Internationalization 임베디드시스템소프트웨어 - Windows CE 41 Networking and Communications Networking and Communications Architecture Wireless Platform Support Component Object Model Additional Networking Features Networking Scenarios 임베디드시스템소프트웨어 - Windows CE 42 Networking and Communications Architecture Applications Web server TAPI RAS Unimodem MSMQ COM SNMP IP Helper PPP WNet WinInet Winsock Protocol Stacks(TCP/IP, IrDA) Serial NDIS(LAN, WAN, TR, IrDA) Network Drivers Serial Port 임베디드시스템소프트웨어 - Windows CE Ir Port FIR H/W Network Interface 43 Wireless Platform Support 802.11 zero configuration and 802.1x Bluetooth Supports dial up networking, WLAN access and object exchange NDIS 5.1 Enables roaming with minimal configuration and logon using user/password and certificate Wireless enhancements, battery status MediaSense Connect/disconnect, roaming in range/out of range notifications 임베디드시스템소프트웨어 - Windows CE 44 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 45 Additional Networking Features Dynamic Host Configuration Protocol (DHCP) Internet Connection Sharing (ICS) Virtual Private Networking (VPN) Windows Sockets 2 (Winsock) Message Queuing (MSMQ) 임베디드시스템소프트웨어 - Windows CE Object Exchange (OBEX) Infrared Data Association IrDA IEEE 1394 (Firewire) MediaSence Media Access Control (MAC) Bridging 46 Networking Scenarios Personal Area Networking (home, office) Local Area Networking (office, factory) Scenarios: Thin Client, Enterprise Web Pad, Industrial Automation Features: Ethernet, DCOM Wireless LAM (office, coffee shop) Scenarios: PDA, Internet Appliance, Networking Printer Features: Bluetooth, IrDA, UPnP Scenarios: Cell Phone, PDA, Web Pad Features: Ethernet, Zero Configuration 802.11/802.1x Wide Area Networking (WAN)(home, hotel) Scenarios: PDA, Internet Appliance, Web Pad, Residential Gateway Features: TAPI, RAS, PPP, Unimodem, VPN, PPTP 임베디드시스템소프트웨어 - Windows CE 47 Real-Time Communication RTC Support RTC Architecture RTC Scenarios 임베디드시스템소프트웨어 - Windows CE 48 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 49 RTC Architecture User App Instant Messenger RTC API SIP RTP PINT FTP HTTP TCP / IP PPP NDIS Serial Driver Hareware 임베디드시스템소프트웨어 - Windows CE 50 RTC Scenarios Connectivity combinations CE device-to-CE or XP device CE device-to-PSTN phone CE device-controlled PSTN Phone-to-CE or XP device Application requirements Instant 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 51 Multimedia Support and Architecture Multimedia Support Multimedia Architecture Multimedia Scenarios 임베디드시스템소프트웨어 - Windows CE 52 Multimedia Support DirectDraw Direct3D DirectDVD DirectMusic 7 DirectShow 6.1 DirectSound® 6.1 임베디드시스템소프트웨어 - Windows CE Legacy Video Playback Midi Playback MP3 Playback MPEG-1 Video Playback Digital Rights Management (DRM) 53 Multimedia Architecture Browsers / Applications Media Player Control COM Interface DirectShow filter graph manager Source Filter (ASF, AVI, etc) Transform Filter Media Source (Internet or file system) Render Filter DirectX foundation Media destination (audio / video hadrware) 임베디드시스템소프트웨어 - Windows CE 54 Multimedia Scenarios Stream or play live or recorded audio and video media from local or remote locations on mobile or fixed devices Possible applications Digital Media appliances Web Pads and Internet portals Set-top boxes Telecommunications equipment Industrial control and medical applications Education and training 임베디드시스템소프트웨어 - Windows CE 55 Security Features and Architecture Which Security Features Are Supported? SSPI Security Architecture Security Scenarios 임베디드시스템소프트웨어 - Windows CE 56 Which Security Features Are Supported? Trusted environment Certified applications CyptoAPI Protected registry Password control Protected store 임베디드시스템소프트웨어 - Windows CE LDAP Security Model Secure Sockets Layer PPTP PC/SC Secure file System DCOM security 802.11 security 57 SSPI Security Architecture SSPI-Security Support Provider Interface Kerberos protocol NTLM protocol 임베디드시스템소프트웨어 - Windows CE 58 Security Scenarios Control access to the device Protect against unauthorized applications Secure data storage and file systems Secure network and internet connections 임베디드시스템소프트웨어 - Windows CE 59 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 60 Internationalization (con’t) Common practice for developing international software: Translation Tips Use a few target locales for initial development and testing Resource Localization: Strict or Non-strict Avoid using vague words, colloquialisms, jargon, acronyms, and abbreviations Use good grammar Avoid dynamic concatenation of different strings Avoid hard-cording file names in a binary files Avoid including text in image and icons International Conventions Locales might have different conventions for expressing information Locales might have different keyboard conventions 임베디드시스템소프트웨어 - Windows CE 61 Windows CE 5.0 & Windows Embedded CE 6.0 Windows CE 5.0 구조 (1) Windows CE 5.0 구조 임베디드시스템소프트웨어 - Windows CE 63 Windows CE 5.0 구조 (2) Windows CE 5.0 구조 (1) OAL (OEM Adaptation Layer) 커널과 하드웨어 사이의 계층 (Windows CE의 커널과 하드웨어 사이에 서 상호 간에 정보를 교환해 주는 창고역할) 시스템 시작, 인터럽트 처리, 전원관리, 타이머와 클락 등을 관리 OAL 소스는 BSP (Board Support Package)에 포함되어 OEM에서 제공 커널, OAL, KITL (Kernel Independent Transport Layer) 이 하나의 파일 (nk.exe)로 링크되어 만들어짐 Windows CE 5.0의 OAL: 임베디드시스템소프트웨어 - Windows CE 64 Windows CE 5.0 구조 (3) Windows CE 5.0 구조 (2) 커널모듈 커널코드는 nk.exe로 불리는 파일 안에 포함 메모리 관리, 프로세스 관리, 예외처리, 멀티태스킹/스레드 지원 메모리 확장: DLL 사용 Coredll.dll: 운영체제의 핵심 DLL 모듈 대부분 WIN32 API 함수들을 export할 수 있음 (3) 디바이스 매니저 모든 디바이스 드라이버를 관리 (load / unload) 종류: built-in, install type 임베디드시스템소프트웨어 - Windows CE 65 Windows CE 5.0 구조 (3) Windows CE 5.0 구조 (4) GWES (Graphics, Windowing, Events Subsystem) 모듈 사용자의 입력에 대한 정보를 애플리케이션과 운영체제에 메시지로 전달 User: 키보드, 마우스 등으로부터의 사용자 입력과 메시지 이벤트 처리 GDI: 디스플레이 디바이스로 그래픽과 텍스트를 생성/관리하고 사용자 출력을 처리 윈도우, 대화상자, 컨트롤, 메뉴, 사용자 인터페이스에 의해 만들어진 자 원을 지원 비트맵, 커서, 캐릿, 텍스트형태로 사용자에게 정보를 제공 (5) 파일 시스템 파일 시스템 모듈인 Filesys.exe는 사용자가 설치하거나 생성한 실행파일 과 데이터 파일을 담도 있는 저장소 Object Store 9개의 FAT 볼륨을 지원 각 볼륨은 저장카드로 취급 만약 저장카드가 다중 분할되면 각각의 부분은 분리된 볼륨으로 취급 임베디드시스템소프트웨어 - Windows CE 66 Windows CE 5.0 특징 (1) 제한된 CPU 지원 ARM, MIPS, SH4, X86 계열의 CPU만 기본적으로 지원 Intel의 전략에 따라 기존의 StrongARM 계열 CPU는 지원하지 않음 PPC 및 SH3 계열 CPU을 지원하지 않음 추가적으로 삼성 S3C2410을 지원함 상용 제품 수준의 안정화된 OAL(OEM Adaptation Layer) 제공 확장된 디바이스 드라이브 SDIO, USB 2.0 PC CARD 32Bit 보강된 장치관리자 기능 ATAPI 기능 보강 양질의 디바이스 드라이브 50여개 지원 임베디드시스템소프트웨어 - Windows CE 67 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 68 Windows CE 5.0 특징 (3) 안정화된 커널 Shared Heap memory 성능 향상 64개 시스템 인터럽트 지원 워치독 타이머 기능 향상 전원관리 스레드 우선순위 조정 셀 기능 확장 사용자 인터페이스 기능 향상 휴지통 기능 향상 임베디드시스템소프트웨어 - Windows CE 69 Windows CE 5.0 특징 (4) 보안 기능 변경 보안 관련 기능 향상 편리한 통합 개발 환경 기존 IDE 환경과 명령 프롬프트 환경간의 동기화 지원 빌드에 소요되는 시간 및 편의성을 대폭 향상 임베디드시스템소프트웨어 - Windows CE 70 Windows CE 5.0 메모리 구조(1) 임베디드시스템소프트웨어 - Windows CE 71 Windows CE 5.0 메모리 구조(2) Windows CE 5.0 Application Memory Map 임베디드시스템소프트웨어 - Windows CE 72 Windows CE 5.0 시스템 호출 Windows CE 5.0 시스템 호출 구조 애플리케이션에 의한 호출 - PSL에 의한 커널간의 의사소통 커널 - 파라 미터 유효성 검사 - 슬롯0으로 서비스 매핑하기 - 캐쉬 플러시(Cache Flush) - 서비스(Service) 호출 서비스 - 실행 - 커널로 복귀 커널 - 슬롯0으로 서비스 매핑하기 - 캐쉬 플러시(cache flush) - 애플리케이션으로 복귀 임베디드시스템소프트웨어 - Windows CE 73 Windows CE 6.0 메모리 구조 Windows Embedded CE 6.0 메모리 구조 임베디드시스템소프트웨어 - Windows CE 74 Windows CE 6.0 시스템 호출 Windows Embedded CE 6.0 시스템 호출 구조 애플리케이션에 의한 호출 - PSL에 의한 커널간의 의사소통 커널 - 파라 미터 유효성 검사 - 서비스 호출 서비스 - 실행 - 애플리케이션으로 바로 복귀 임베디드시스템소프트웨어 - Windows CE 75 Windows CE 5.0 vs. Windows Embedded CE 6.0 (1) 프로세스 주소 공간이 32MB에서 1GB로 증가 프로세스의 수가 32개에서 32K로 증가 사용자 모드 및 커널 모드 장치 드라이버가 가능 Device.exe, filesys.exe, GWES.exe 파일이 커널 모드로 이동 SetKMode 및 설정 프로세스 허용이 불가능해짐 System 호출 성능 개선 PC 운영체제 수준의 성능 향상 및 보안 기능 강화 임베디드시스템소프트웨어 - Windows CE 76 Windows CE 5.0 vs. Windows Embedded CE 6.0 (2) Kernel & OAL 구성 Windows CE 5.0 - OAL + Kernel = kern.exe - OAL + Kernel + KITL = kernkitl.exe - OAL + Kernel + KITL + Profiler = kernkitlprof.exe Windows Embedded CE 6.0 - OAL = oal.exe - Kernel = kernel.dll - KITL = kitl.dll 임베디드시스템소프트웨어 - Windows CE 77 Windows CE 5.0 vs. Windows Embedded CE 6.0 (3) 임베디드시스템소프트웨어 - Windows CE 78 Windows CE 5.0 vs. Windows Embedded CE 6.0 (4) Windows CE 5.0 시스템 호출 임베디드시스템소프트웨어 - Windows CE Windows Embedded CE 6.0 시스템 호출 79