330 likes | 833 Views
무선 인터넷 미들웨어. 인터넷 컴퓨팅 연구실 김광요. 목차. 무선 인터넷 미들웨어 플랫폼 GVM BREW 요약 및 향후 전망 참고문헌. 무선 인터넷 미들웨어 플랫폼 (1/9). 무선 인터넷 광의적 개념 무선 LAN 이나 B-WLL 등 고정 무선 인터넷 서비스를 포함하여 무선을 통해 인터넷에 접속하는 것 협의적 개념 휴대형 단말기를 통해 무선으로 인터넷에 접속하여 데이터 통신이나 인터넷 서비스를 이용하는 것. 무선 인터넷 미들웨어 플랫폼 (2/9).
E N D
무선 인터넷 미들웨어 인터넷 컴퓨팅 연구실 김광요
목차 • 무선 인터넷 미들웨어 플랫폼 • GVM • BREW • 요약 및 향후 전망 • 참고문헌
무선 인터넷 미들웨어 플랫폼 (1/9) • 무선 인터넷 • 광의적 개념 무선 LAN이나 B-WLL 등 고정 무선 인터넷 서비스를 포함하여 무선을 통해 인터넷에 접속하는 것 • 협의적 개념 휴대형 단말기를 통해 무선으로 인터넷에 접속하여 데이터 통신이나 인터넷 서비스를 이용하는 것
무선 인터넷 미들웨어 플랫폼 (2/9) • 무선 인터넷 미들웨어네트워크와 단말기 그리고 응용프로그램 사이에서 중재해 주는 프로그래밍 서비스 • 무선 인터넷 (미들웨어) 플랫폼일반적으로 단말기의 운영체제와 응용프로그램 사이에 위치하여 단말기 내에서 응용프로그램을 구동 시켜주는 미들웨어 소프트웨어
무선 인터넷 미들웨어 플랫폼 (3/9) • 자바 또는 C기반 미들웨어 플랫폼 비교 • 자바 기반 : 코드 및 컴포넌트의 재사용 및 우수한 보안성을 제공하나 메모리 부담, 느린 처리속도, 고급형 단말기 요구라는 단점을 가짐 (예: GVM) • C기반 : 적은 메모리 사용, 빠른 처리속도 및 보급형 단말에 적용할 수 있는 장점을 가지나 보안성에 취약하고 개발에 대한 전문성을 요구하는 단점을 가짐 (예: BREW)
무선 인터넷 미들웨어 플랫폼 (4/9) • 미들웨어 플랫폼이 제공 가능한 컨텐츠 • 게임 다운로드 (빠른 화면전환이 필요한 게임, 스토리가 연결되는 어드벤쳐 게임) • 멀티미디어 다운로드 (노래방, DDR, 스포츠 중계 서비스) • 기타 서비스 (주식정보, 어학교육 컨텐츠, 지리/위치 정보 서비스)
무선 인터넷 미들웨어 플랫폼 (5/9) • 바이너리 다운로드 (Binary Download) 방식 • 바이너리 파일은 단말기에서 직접 실행 가능한 기계어 코드로 작성(다운로드 서버에서 단말기의 하드웨어 사양에 맞게 링크함)되어 있고, 프로그램 실행에 필요한 이미지, 사운드, 텍스트 정보를 포함 • 바이너리 파일은 가상머신과 같이 중간 해석단계가 없이 단말기에서 직접 실행 가능한 파일이기 때문에 현재 선보이고 있는 어떤 방식보다 더 빠른 스피드를 얻을 수 있다.
무선 인터넷 미들웨어 플랫폼 (6/9) • 스크립트(Script) 방식 • 어플리케이션의 바이트 코드를 인터프리팅 하여 명령을 실행하는 방식
무선 인터넷 미들웨어 플랫폼 (7/9) • 가상 머신(Virtual Machine) • 독립적인 환경에서 응용프로그램 등이 실행될 수 있는 환경을 의미 • 이 기종 간의 자유로운 이식성과 사용자의 추상화 API 제공 • VM 이 포팅 되어진 단말기에서는 동일한 실행환경을 가짐. 즉, 개발 자에게는 단말기가 어떠한 종류라도 단말기 OS 및 개발환경과는 무관하게 독립적인 개발환경 제공
Application Module OEM Drives Platform Socket Wireless Internet LaunchPad Suite EFS CallMgr REX [ VM 플랫폼 구조 ] 무선 인터넷 미들웨어 플랫폼 (8/9) • 가상머신 플랫폼 구조
무선 인터넷 미들웨어 플랫폼 (9/9) • VM 플랫폼 방식의 장점 • 동적 어플리케이션 다운로드 기능 VM 기반의 무선 어플리케이션은 실시간으로 그리고 동적으로 다운로드 될 수 있다. 애플릿처럼 VM은 실행 코드의 네트워크 이동 / 실행을 제공하는 우수한 솔루션으로 인정 받고 있음 • 비연결성 제공 네트워크에 연결되지 않았을 때에도 기존에 다운로드 했던 응용 프로그램 들을 실행 시켜서 작업을 할 수 있음 • 향상된 서비스로 인한 사용자의 만족도를 높임 동적으로 다운로드 된 어플리케이션은 보다 향상된 그래픽과 다양성으로 인해 사용자들의 만족도 높여 줄 수 있음
GVM(General Virtual Machine) (1/11) • 신지 소프트에서 개발한 모바일 폰을 위한 가상 머신 • 모바일 C를 기반으로 하는 무선 응용프로그램 다운로드 플랫폼 • 협의의 의미로는 모바일 폰에 내장되는 가상머신 • 단말기 소프트웨어의 사용자 인터페이스 쪽에 위치하여 전화 통화와 같은 모바일 폰의 기본 기능에는 영향을 주지 않고 유휴 컴퓨팅 자원에 의해 동작할 수 있도록 설계 됨
GVM(General Virtual Machine) (2/11) • GVM 플랫폼의 전체 시스템 구성도 • 모바일 폰에 탑재되는 GVM 모듈뿐만 아니라 GVM 응용프로그램 개발을 위한 GVM SDK와 응용프로그램 다운로드, 네트워크 클라이언트 응용프로그램의 연결 기능을 수행하는 GVM 서버로 구성
GVM(General Virtual Machine) (3/11) • GVM 모듈 • 모바일 폰에 탑재되는 소프트웨어로서 포팅의 용이성을 고려하여 블랙박스 형태로 제공 됨 • 포팅 시에도 기존 모바일 폰의 소프트웨어 구조를 변경하지 않고 쉽게 포팅이 가능 • 모바일 폰 제조사에서는 GVM 모듈 코드를 모바일 폰 소프트웨어에 포함시키고 모바일 폰 하드웨어 의존적인 부분에 대해서만 수정하여 포팅하면 됨
GVM(General Virtual Machine) (4/11) • GVM SDK • PC에서 GVM 응용프로그램을 작성하는 도구를 총칭 • SDK 실행환경 • 윈도우 95, 98, ME, 2000 • VGA 1024x768, 24bit 컬러 이상
GVM(General Virtual Machine) (5/11) • SDK 도구 • 이미지 도구 • “이미지 마스터”라는 이미지 편집도구를 제공 • BMP 등의 이미지를 VDI(Variable Depth Image) 포맷으로 정의하여 모바일 C 소스 형태로 변환하는 기능을 제공 • 오디오 도구 • “오디오 마스터”와 “부저 마스터”라는 두 가지 종류의 오디오 도구를 제공 • 부저 마스터를 이용하여 모바일 C 프로그램에서 사용할 수 있는 형태로 음원 데이터를 변환 • 오디오 마스터를 이용하여 모바일 C 소스 형태로 변환
GVM(General Virtual Machine) (6/11) • SDK 도구 (계속) • 모바일 C 컴파일러 • 모바일 C로 작성된 프로그램을 컴파일하여 오브젝트 파일(*.SGS)을 생성 • SGS 파일은 단말기에 다운로드 되어 GVM 가상머신에 의해 실행 됨 • SGS 파일은 내부적으로 헤더 영역, 코드 영역, 데이터 영역으로 구성 • GVM 에뮬레이터 • 컴퓨터에서 GVM 응용프로그램의 동작을 모바일 폰 단말기와 동일한 상황으로 시뮬레이션 하는 기능을 제공 • 다양한 하드웨어 사양, 실시간 운영체제의 이벤트 레벨까지 에뮬레이션 가능
GVM(Game Virtual Machine) (7/11) • GVM 플랫폼 구조 • 단말기에 일관된 인터페이스를 제공, 단말 기 인터페이스에 대한 수정작업 없이 응용 컨텐츠를 제작할 수 있도록 구성 • General Virtual Machine 단말기의 Script buffer에 저장되어 있는 응용프로그램 스크립트를 실행하는 역할 • Mobile Interface Device Driver Timer 호출이나 LCD 출력 등 단말기의 Device 제어를 위해 제공되는 API • Host MMI(Man-Machine Interface) 단말기의 RS-232C 포트를 통해 컴퓨터나 기타 외부 기기와 연결, 응용 기능을 수행
GVM(General Virtual Machine) (8/11) • GVM 특징 • 단말기의 운영체제나 하드웨어의 종류에 관계없이 동작GVM는 하드웨어에 독립적인 구조로 되어 있으며 운영체제나 하드웨어가 다른 다양한 단말기 플랫폼에 영향을 받지 않고 동일한 기능을 제공한다 • CDMA 단말기 및 GSM단말기, PDA등에 탑재되어 동일한 기능을 제공 • 단말기의 리소스를 최적화 하여 사용다른 플랫폼이나 가상머신에 비하여 적은 사이즈의 응용프로그램에 의해 동일한 기능을 제공할 수 있도록 설계
GVM(General Virtual Machine) (9/11) • 기타 기능 • 단문 메시지 서비스 발신 API를 포함 게임 결과 통보 등과 같은 단문 메시지 서비스 발신기능을 이용한 컨텐츠 구성이 가능 • NetConnect(), NetDisconnect() 함수를 지원 위의 함수를 통해 현재의 네트워크 설정을 변경하는 등의 서비스 구성이 가능 • 실행 중 음성통화 기능 지원 스크립트 실행을 일시 중지하고 지정된 전화번호로 음성통화를 연결하는 기능을 제공
GVM(Game Virtual Machine) (10/11) • GVM 플랫폼 동작방식
GVM(Game Virtual Machine) (11/11) • 참고자료 • NATE에서 경로 찾아 접속하기 • NATE에서 경로 찾아 다운로드하기 • “보관함” 에 다운로드된 “M-Agent” 를 실행하기
BREW(Binary Runtime Environment of Wireless) (1/9) • CDMA용 무선 장치들을 위한 퀄컴의 응용 프로그램 개발용 플랫폼 • 기존 2세대 무선 인터넷 서비스 대비 멀티미디어 기능을 대폭 강화 • 윈도우, 매킨토시, X 윈도우(Unix)와 유사한 이벤트 중심의 아키텍쳐 지원 [ BREW가 지원되는 휴대폰 UI 예 ]
BREW(Binary Runtime Environment of Wireless) (2/9) • BREW의 구조 및 특징 • 디바이스의 운영체제와 응용프로그램 사용자 인터페이스 등을 중간에서 컨트롤 하면서 응용프로그램이 실행될 수 있는 환경의 구조 • 단말기 자체의 적은 메모리와 처리속도에 적합한 MSM(Mobile Standard Mode) Chip을 사용하는 COM(Component Object Model) 기반의 미들웨어 플랫폼
BREW(Binary Runtime Environment of Wireless) (3/9) • BREW의 구조 및 특징 (계속) • API 셋의 추가 및 업그레이드가 가능하고 가상머신을 BREW에 탑재하여 자바로 작성된 응용 프로그램도 실행 • 다양한 서비스 제공을 위하여 응용프로그램의 다운로드와 설치는 모바일 샵(Mobile Shop)이라는 내장된 응용프로그램이 사용 • 일반적인 C 또는 C++로 개발된 프로그램은 프로그램 크기가 크고 처리 부담이 큰 자바보다 고속 어플리케이션 개발이 용이
BREW(Binary Runtime Environment of Wireless) (4/9) • BREW 구조
BREW(Binary Runtime Environment of Wireless) (5/9) • 내부구조 기본 API 클래스들과 Extention 플랫폼, 이 기종 가상머신으로 구성 • 주요기능 Application 실행 과정을 관리하며, UI 및 단말기 OS와의 연동 을 담당 • 파일구조 BREW는 C++의 COM을 기반으로 하는 플랫폼으로서 기본적인 BREW 전용 Application은 C++형태의 파일을 취한다. 하지만 기존의 JAVA Application도 실행 가능
BREW(Binary Runtime Environment of Wireless) (6/9) • BREW SDK • 응용프로그램 개발자가 다양한 모바일 폰을 위한 응용프로그램을 빠르고 효율적이며 적은 비용으로 개발하고 배포하는 데 사용 할 수 있는 도구 및 서비스 제품군 • BREW 에뮬레이터, 리소스 편집기, MIF 편집기, 장치 구성자로 구성
BREW(Binary Runtime Environment of Wireless) (7/9) • BREW SDK (계속) • BREW 에뮬레이터 • 애플릿을 로드하고 테스트하는데 사용하는 그래픽 사용자 인터페이스 • 리소스 편집기 • 응용프로그램을 위한 리소스를 생성하는 기능을 제공하는 툴 • MIF 편집기 • 애플릿을 로드하는데 필요한 모듈 및 애플릿 관련 정보를 포함하는 모듈정보파일(MIF)을 생성하는 기능을 제공 • 장치 구성자 • 모바일 단말기에 필요한 새로운 장치를 만들거나 기존 구성을 편집할 수 있는 기능을 제공
BREW(Binary Runtime Environment of Wireless) (8/9) • BREW의 동작방식
Idle 화면에서의 Mobile Shop “시작” 선택 시 ADS에 접속 모바일샵 메인화면 게임 메뉴 메인 화면 BREW 초기화면의 한 메뉴로 Mobile Shop 위치 Mobile Shop 메인화면으로 ADS에 접속한 후에는 HTML page로 처리 각 게임 명을 선택하면 게임 요금 표시 및 다운로드 여부 확인 후 다운처리 BREW(Binary Runtime Environment of Wireless) (9/9) • 참고자료 [ Mobile Shop 접속 시 초기화면 ]
요약 및 향후 전망 • 무선 데이터망 속도 및 대역폭 등 기술적인 진보와 더불어 동영상, 멀티미디어를 포함한 사용자의 다양한 컨텐츠 욕구를 수용하는 무선단말기 플랫폼 • 표준 정립을 위한 업체들의 경쟁 심화 • 표준 플랫폼의 기술 사양을 합의하여 한 단계 발전된 형태로 단말기 OS 위에 정리된 형태의 플랫폼을 만들고 그 위에 VM이나 각종 솔루션을 올릴 수 있는 구조로 발전
참고문헌 [1] 원정욱, 전학성, 박태웅, “무선인터넷 특허 분석”, 전자통신동향분석 제 17권 제 5호, 2002.10 [2] 김충남, “차세대 무선 인터넷 서비스”, 전자신문사, 2002.12 [3] 한국정보통신기술협회, “모바일 플랫폼(WIPI) 표준개론”, 진한도서, 2003.4 [4] 양성수, 장민철, 염태선,”모바일 자바프로그래밍 J2ME”,혜지원, 2002.9 [5] 안태효, 강성민, 권지훈, “무선인터넷 미들웨어”, http://www.tta.or.kr/StdInfo/jnal/jnal77/07-4.pdf, TTA 저널, 2001. [6] 박은정, “WIPI의 탄생과 그 가능성”, http://www.mobilelab.co.kr/table/content.asp?num=231&tname=data_tel, 마이크로소프트웨어, 2002.10 [7] QUALCOMM, ”BREW 소개”, 기술백서, http://qualcomm.com/brew/ko/about/whitepaper.html, 2003. 9 [8] 배석희, “모바일 플랫폼 표준화 동향 및 향후 발전방향”, http://www.tta.or.kr/StdInfo/jnal/jnal82/PDF/4.PDF, TTA 저널, 2002.8 [9] “이동통신 단말”, 50대 품목 기술/시장 통합 요약 보고서, http://kidbs.itfind.or.kr/KIDBS/ITStrategy/50sum/15-mobile.pdf, 2002. [10] 배석희, “모바일 플랫폼 표준화 현황 및 주요이슈”, http://webzine.kt.co.kr/s-trends/200209/0501.asp, 표준화 토픽, 2002. [11] 문형돈, 이재환, “국내외 무선인터넷 시장 동향”, 전자통신동향분석, http://stat.nic.or.kr/allym/report/mobile-etri.pdf, 2002년 6월.