Upload
bess
View
77
Download
1
Embed Size (px)
DESCRIPTION
임베디드 소프트웨어 기술소개. 목차. 임베디드 시스템 개요 임베디드 소프트웨어 기술 임베디드 운영체제 RTOS Embedded Linux Microsoft Windows CE Embedded OS 의 동향 임베디드 미들웨어 (Embedded Middleware) J2ME(JAVA to Micro Edition) 개발환경 및 툴 응용소프트웨어 기술 임베디드 소프트웨어 적용 분야 결론. 임베디드 시스템 개요. 임베디드 시스템 개념 - PowerPoint PPT Presentation
Citation preview
임베디드 소프트웨어 기술소개
목차
임베디드 시스템 개요임베디드 소프트웨어 기술
임베디드 운영체제 RTOS Embedded Linux Microsoft Windows CE Embedded OS 의 동향
임베디드 미들웨어 (Embedded Middleware) J2ME(JAVA to Micro Edition) 개발환경 및 툴 응용소프트웨어 기술
임베디드 소프트웨어 적용 분야결론
임베디드 시스템 개요
임베디드 시스템 개념 Embedded System = Computers Inside a Product
(or a System) 일반적으로 특정 하드웨어나 소프트웨어가 다른 ware 에
속해있는 것을 의미 전자제품에 들어가는 칩에 내장되는 운영체제 마이크로 시스템을 구동하여 미리 정해진 특정한 기능을
수행하도록 프로그램이 내장되어 있는 시스템 개인 휴대 정보 단말 , 지리 정보 시스템 , 의료 정보
단말 , 주식 시장 정보 단말 , 의료 및 산업 원격 조종 장비 등의 시스템을 총칭
임베디드 시스템 개요 (cont’d)
Embedded System 구조 하드웨어 (I/O Subsystem) 운영체제
선점형 스케쥴링 세밀한 스케쥴 단위 지원
디바이스 드라이버 I/O 시스템 연동
Middleware 기본 프로그램 응용 프로그램
ApplicationApplication
Shell & UtilityShell & Utility
Middleware & Device DriverMiddleware & Device Driver
Operating SystemOperating System
HardwareHardware
임베디드 시스템 개요 (cont’d)
Embedded System 의 4 가지 일반적인 형태 General Computing
Video games, set-top boxes, wearable computer, automatic tellers
Signal ProcessingRadar, Sonar, video compression
Communication & NetworkingTelephone system, Internet
Control SystemsIntelligent vehicle, chemical processes, nuclear
power, flight control
임베디드 시스템 개요 (cont’d)
Embedded System 의 특성 Small Size, Low Weight Low Power Harsh Environment Safety-critical Operation/ Real-time
Operation/ Dependable Operation/ QoS Support
Extreme Cost Sensitivity
임베디드 시스템 개요 (cont’d))
임베디드 시스템 분야 Post-PC(PDA, 웹패드 , 웹폰 , 셋톱박스 등 ), 사이버 아파트의 홈 관리 시스템 , 홈 네트워크 게이트웨이 장치 , 교통관리 시스템 , 주차관리 시스템 , 홈 관리 시스템 , 엘리베이터 시스템 , 현금 지급기 (ATM), 항공 관제 시스템 , 우주선 제어 장치 , 군사용 제어 장치 등
Ubiquitous Computing[8] A New Computer Class Emerging
year
log
(p
eo
ple
pe
r c
om
pu
ter)
Mainframe
Minicomputer
Workstation
PC
Laptop
PDA
???
임베디드 소프트웨어 개요 (1)
임베디드 소프트웨어 특징들 Networked Operation/Distributed Operation Mobility Real-time Operation Dependability (Fault-tolerance 등 ) Multimedia & QoS Support Pervasive Computing Support etc.
임베디드 소프트웨어 개요 (2)
임베디드 소프트웨어 기술 Embedded OS 및 Device Driver Embedded Middleware 개발환경 및 툴 (Modeling, Analysis,
Design, Testing, Debugging) 응용 소프트웨어 /서비스
임베디드 운영체제 (1)
전통적인 임베디드 시스템 Production Code : 개발에 있어서의 보수적 성격으로
인한 발전 속도의 지체 원자력 잠수함 , 스페이스 셔틀 , 군사적 목적의 시스템Ex) pSOS, OS-9, VxWorks, QNX, VRTX, Lynx, etc.
최근의 임베디드 시스템 정보가전을 축으로 폭발적인 성장 예상 TV 세톱 박스 , 홈서버 , DTV, …..Ex) Windows CE, Linux, JAVA
임베디드 운영체제 (2)
춘추전국 시대를 맞고 있는 Embedded OS 다양한 종류의 하드웨어 플랫폼과 제품사양 및
요구사항의 다양화 사용하고자 하는 시스템에 최적화된 OS 를 채택
임베디드 운영체제 (2)
Embedded OS 를 장악하는 자가 향후 IT 산업을 주도 RTOS 진영
VxWorks, pSOS 등의 실시간 OS 가 여전히 막강한 힘을 발휘 마이크로소프트 진영
Windows CE 로 경쟁에 참여 Embedded Linux 진영
Embedded OS 중에 가장 주목 받는 OS 중 하나 기타
Sun Microsystems 의 자바 OS 는 다크호스 유럽의 ePOC 일본의 xTRON
임베디드 운영체제 (4)
RTOS 산업용 실시간 시스템을 위한 고가의 OS 에서 출발 우주 · 항공 · 산업용 등의 주력 시장에서 정보가전과 같은
Embedded 에 대한 마켓팅 전략을 새롭게 준비 중 산업용 시스템의 노하우를 정보가전 시장까지 확장 기대 “ 결국은 가격보다는 Time to Market 을 얼마나 잘
실현시켜주냐 하는 문제에 의해 개발자의 선택이 좌우될 것” ETRI 에서 개발한 정보가전 용 OS Qplus (Qplus-T 와 Qplus-
P) Lynx Real-Time Systems 사의 LynxOS ISI 사의 pSOS (WindRiver 에 합병 ) WindRiver 사의 VxWorks
임베디드 운영체제 (5)
Qplus-P Embedded Linux v2.4 기반 연성 실시간 운영체제
Qplus-PQplus-P
ApplicationsApplications
JVM(JDK1.1.8+swing)JVM(JDK1.1.8+swing)
자바 웹 브라우저자바 웹 브라우저
시스템 콜 인터페이스시스템 콜 인터페이스
저전력 지원저전력 지원
Fast BootFast Boot 디바이스 드라이버디바이스 드라이버
실시간 스케줄러실시간 스케줄러
GTKGTK
Tiny-XTiny-X네트워크 매니저네트워크 매니저
윈도우 매니저윈도우 매니저
시스템 설정 및 구축툴킷
시스템 설정 및 구축툴킷
GUI 빌더 GUI 빌더
화일 매니저화일 매니저
FFS FFS
임베디드 운영체제 (6)
Embedded Linux 정보가전 및 Post-PC 등의 Embedded 시스템을 위한
리눅스 기반의 운영체제 Hard Real-Time 기능 제공 가능 안정적이고 신뢰성 있는 프로세스 환경
POSIX 준수의 Multi-Process 와 Multi-Thread 제공 PalmPalm 의 Tynux, LynuxWorks, Lineo, ELKS,
uClinux, Etlinux, EMJlinux 등의 소형 Embedded Linux WINY(Window Tiny): Linux OS 에서 호환 가능한 Win32
API 형태의 Embedded GUI MicroWindow: 소형 X-Window 기반 시스템
임베디드 운영체제 (7)
Microsoft Windows CE Microsoft 가 PDA 시장을 겨냥하여 개발한 Embedded OS 기존의 윈도우 플랫폼 상의 PC 와 Embedded 시스템과의
호환성을 강조 .Net 전략을 발표하며 윈도우 Embedded 사업에 박차 Windows CE.net
Windows CE 3.0 의 차기 버전으로 강력한 멀티미디어 기능과 다양한 인터넷 연결 기능 제공
스마트 모바일 디바이스를 위한 실시간 OS Windows XP Embedded
Windows NT Embedded 4.0 의 차기 버전으로 안정된 성능과 보안기술 제공
개선된 멀티미디어 및 Embedded 기능 제공
임베디드 운영체제 (8)
Embedded OS 의 동향 실시간성 , 경량성 , Power Management, 저전력 기능을
기본적으로 지원 Internet, Mobility, Wireless Communication 지원을
기본 기능으로 추가하는 추세 Post-PC 와 같은 이동성 단말기에 필요한 소프트웨어
수준의 저전력 기술 개발 및 지원 정보 단말기에 포함된 개인 정보 유출이나 시스템 파괴를
막기 위한 네트워크 보안 기술 개발 및 적용 멀티미디어 응용 서비스의 비중이 높아짐에 따라 적절한
QoS 보장 기술 개발 및 적용 메모리 상주형 Database 개발 및 지원 상위 자바 미들웨어에 대한 최적화 기술 개발 및 성능 개선
임베디드 운영체제 (9)
미래 Embedded Application(multimedia 응용 , cyber space 응용 , online game, safety-critical 응용 등 ) 에서 요구되는 고 수준의 Quality 는 Real-time Operation (Timeliness, Time-
triggered Action)/ Dependability/ Pervasive Computing Support 에 의해 결정됨
⇒ 현재 Embedded OS 에서의 지원은 거의 없거나 미흡
임베디드 운영체제 (10)
Embedded OS의 현 상황 다음 페이지 참조
Time to develop an Embedded Real-time OS supporting timeliness, time-triggered action, dependable operation, and pervasive computing.
⇒ Long-term, continuous support is needed.
구분 RTOSPalm OS
Embedded Linux
Windows CE
실시간성 Medium N/A Weak Weak
DependabilityMedium/
WeakN/A Weak Weak
QoS support N/A N/A N/A Weak
Multimedia Support
N/A N/A Weak Medium
범용성 Weak Weak Medium Medium
Size Medium LightHeavy/Medium
Heavy
Dynamic Connectivity
N/A N/A Weak Medium
Applications FA, 정보가전 PDAPDA,
정보가전 PDA
임베디드 미들웨어 (1)
Embedded Java 와 J2ME 전세계 무선 시장에서 무선 자바 기술인 「 J2ME(Java 2 Platform, Micro Edition)」가 급속히 확산
Posc-PC 에 최적화 될 수 있도록 경량화 , 실시간 , 성능을 고려한 컴포넌트 개발
JAVA 를 이용한 임베디드 인터넷 개발 ( 인터넷을 통한 분산 제어 같은 , Embedded 인터넷 어플리케이션 개발 )
임베디드 미들웨어 (2)
현재 개발 중인 경량 미들웨어 MULTE-ORB: 프로토콜 프레임워크에 기반한 적응형
멀티미디어 ORB Open-ORB: 컴포넌트 기반의 reflective 미들웨어 GOPI(Generic Object Platform Infrastructure): QoS
제공으로 멀티미디어 응용을 지원하는 분산 객체기반 미들웨어 TMOSM/WTMOS/LTMOS: 실시간 객체 모델인 TMO (Time-
triggered Message-triggered Object) 의 분산 실시간 실행을 지원하는 미들웨어
TAO: 실시간 QoS 와 고성능 기능을 고려한 미들웨어 HAVi: 디지털 정보 가전 기기의 상호운용성을 위한 표준으로
이를 미들웨어 형태로 여러 곳에서 개발 중
임베디드 미들웨어 (3)
Timeliness(Real-time Operation)/ Dependability/ QoS/ Pervasive Computing 지원이 미들웨어
형태로 가능하고 보다 많은 Application-Specific 또는 Platform-Independent 한 미들웨어가
필요할 것임
J2ME(JAVA to Micro Edition) J2ME 는 기존 자바 기술을
가전 제품이나 모바일 기기 등에 적합하도록 개발한 Sun 의 자바 어플리케이션 환경
경량 미들웨어 및 컴포넌트 기반의 미들웨어
시스템 독립성 , 이식성 , 확장성 제공
핵심 컴포넌트인 KVM 을 셀룰러 폰 , 호출기 , PDA 등의 단말기에 적용
개발환경 및 툴 (1)
각 Embedded/Real-time OS 회사에서 나름대로의 개발 환경 제공 Esto
ETRI 에서 개발한 Qplus 통합 개발 환경 Tonado
VxWorks 의 개발 툴로써 교차 개발환경을 지원하는 통합 개발환경을 제공
Hawk IDE OS-9 의 개발 툴
Qt/Embedded 트롤테크의 임베디드 리눅스용 개발도구
통합 개발 환경(Esto)
IDE 메인프레임IDE 메인프레임
프로젝트관리자
프로젝트관리자
원격디버거원격
디버거
원격 쉘원격 쉘
저전력지원원격모니터저전력지원원격모니터
호스트에이전트호스트
에이전트
크로스컴파일러크로스컴파일러
타겟
에이전트
타겟
에이전트
그외Tynux box, Velix IA (DoAll), Linu@ (Mizi Research), BlueCat (Lynx), Fast Light Tool Kit 등이 있음
개발환경 및 툴 (2)
▣ 종래의 대형 임베디드 시스템 개발을 위한 환경은 각 회사 독자적
으로 개발 사용하고 있으며 Application-Specific 함 .
개발 환경 및 툴 (3)
Microsoft eMbedded Visual Tools 3.0 구성
Microsoft eMbedded Visual C++ 3.0• MFC 제공 , SDI 프로그래밍
Microsoft eMbedded Visual Basic 3.0
개발자에 친숙한 Visual Interface의 제공 (like Visual Studio)
에뮬레이터의 제공 : 하드웨어 없이 프로그램 작성가능
개발 환경 및 툴 (4)
Embedded Software 개발을 위한 방법론 정립 필요
분석 , 설계 , 구현에 공통적으로 적용될 수 있는 확고한 모델 기반 하에 Specification으로부터 구현까지 사용자 위주로 지원할 수 있는 개발 환경이 필요 개발 방법론과 접목된 개발 환경 저전력 소프트웨어를 위한 Compiler 및 분석 도구 Real-time Characteristics(Timeliness)/ Dependability/
QoS 분석 및 모니터링 도구 Device Driver 개발에 관한 지원 (API 형태 ) 포함
개발 환경 및 툴 (5)
개발환경 및 툴 지원이 시장 선점 열쇠 Embedded OS 시장의 부상과 더불어 개발환경 및 툴의
중요성이 강조 윈드리버와 함께 MS, Embedded Linux 진영 역시 OS 개발과
함께 개발환경 및 툴 기술 발전에 힘을 쏟고 있음 Embedded Market 의 거품 현상은 항상 예측을 불허 . 하지만 , 올해도 20% 이상 성장될 것으로 예측 . 무엇보다 , 자유 경쟁을 통한 거품 현상을 없애는 것이 급선무
⇒ 제품의 질 및 Time-to-Market 이 중요
⇒ 사용하기 쉽고 효율적인 개발환경 및 툴이 필수
응용 소프트웨어 기술 (1)
브라우저 Embedded 시스템에 내장시킬 수 있는 고성능 브라우저 기술
개발 다양한 기기 (Post-PC) 에 적용 가능한 초경량의 브라우저 모든 운영체제에서 사용 가능한 범용적 , 독립적인 브라우저 다양한 인터넷 표준언어 (HTML, XHTML, CSS, DOM 등 )
지원 멀티미디어 기능 , JavaScript 그리고 다양한 Plug-In 지원 안정성과 신뢰성 3D 브라우징 기능 제품명은 "DB2 Everyplace", 지원 OS 는 Windows CE,
Embedded Linux, EPOC, Neutrino
응용 소프트웨어 기술 (2)
XML 경량화 , 고속처리 , 장치 독립성을 지원하는 XML 개발 내장형 XML 툴킷 ( 편집기와 변환기 ) 개발
IBM 의 Embedded 시스템용 DB2 메인 프레임 컴퓨터에 전부 Linux 가 운영되도록
하겠다고 선언한바 있는 IBM 에서 DB2 데이터베이스를 Embedded 용으로 출시
보다 나은 GUI 와 다양한 형태의 HCI 기능이 대두 ( 예 , 감성 컴퓨터 )
임베디드 소프트웨어 적용 분야 (1)
From Small Devices To Factory Automation and Safety-Critical System
정보가전 PDA 를 비롯해 스마트폰 , 포켓 PC 등의 Post-PC PC, 세톱박스 , 에어컨 , 냉장고 등의 정보가전을
연결한 홈 네트워킹가전 /조명 /방범 /난방 제어 , 홈뱅킹 , 홈쇼핑
통신 및 방송 인터넷 방송 , 디지털 TV, 영상 원격회의
임베디드 소프트웨어 적용 분야 (2)
엔터테인먼트 네트워크 게임 , 원격교육
산업용 자동화 및 우주항공 자동항법장치 , 군사무기 , 위성통신 , 의료 기계 장치의 자동화 , 생산라인의 시스템 제어
Monitoring & Control System Intelligent Traffic Control System Automobile
Control Automation Patient Monitoring System Nuclear Reactor Control System
요약 (1)
Embedded Software(또는 System) 의 응용 분야가 다양화 되고 있고 시장이 급성장하고 있음 . ( 연간 20% 이상 ) 미국 United Technology Research Center 의 경우
향후 5 년 이내 80% 이상의 Software 수요는
Embedded System 관련 분야로 예측
국내 경우 2005년 30억불 Software 수출 (2001년 3
억불 ) 을 달성하기 위한 핵심 분야
요약 (2)
선진국에서 Embedded Software 기술 (OS, 미들웨어 , 개발환경 및 툴 , 서비스 ) 에 대한 연구 개발에 박차를 가하고 있음 . 미국 DARPA NEST(Networked Embedded Software
Technology), PCES(Program Composition for Embedded Systems) 프로그램
미국 NSF NGS(Next-Generation Software) 프로그램 미국 ONR MURI 프로그램 EU 자동차 회사 ( 차세대 자동차 프로젝트 ) 와 Telecommunication
회사들의 움직임 . Microsoft(Windows Embedded Platform), Sun
Microsystems(Embedded/Personal JAVA), J Consortium(Newmonics, HP, etc.) 등 대형 컴퓨터 회사의 움직임
etc.
요약 (3)
앞으로의 국내뿐만 아니라 세계적으로 정보 산업을 주도할 분야의 하나임 . Embedded Software 는 제조업과 밀접한 관계가 있음 ; 국내
제조업의 강한 경쟁력을 십분 활용할 수 있음 Mobility/ Wireless Communication 지원에 국내 기반 기술은
상당히 앞서 있음 . Embedded Linux 개발 및 응용은 상당히 활성화 되어 있음 .
선진국과의 기술적 격차가 크지 않음 Real-time Operation/ Dependability/ QoS/ Pervasive
Computing Support 는 선진국도 시작 단계임 . 전반적으로 Embedded Software 기반 기술이 취약함 (OS,
Device Driver, 미들웨어 , Software Engineering 기술 등 ).
요약 (4)
국내 Embedded Software 산업의 조기 첨단화 및 활성화 필요 Advanced Embedded OS 의 개발 및 지속적 개선은 기본 효과적인 Embedded Software (또는 System) 개발방법 , 개발환경
및 미들웨어는 필수⇒ 이를 통해 국내 S/W 업체들이 응용 /서비스 개발에 전념할 수 있도록 함 개발환경의 표준화 필요⇒ 장기적으로 세계 Embedded S/W 시장의 표준을 선도
전반적인 Embedded Software 기술 분야의 연구 /개발 /상품화에 통합 집중된 노력이 필요► 시급한 정부 지원 대규모 국책 사업화► Embedded Software 관련 표준화► Embedded Software 전문 인력 양성