Upload
sangwon-yoon
View
1.962
Download
2
Embed Size (px)
DESCRIPTION
3차 모바일톡데이에서 발표한 자료입니다.
Citation preview
Confidential and proprietary material for authorized persons only. 1
October, 2011, Infraware
Copyright © 2010 Infraware Inc. All rights reserved.
Confidential and proprietary material for authorized persons only. 2
1. Web OS의 정의
• 정의
HTML, Java, HTTP 등을 사용하여 네트워크 상에서 구동되는 가상 컴퓨터 시스템
• 젂통적인 의미
Web Desktop
Web OS는 젂통적인 의미의 운영체제가 아니다
• 디바이스, 프로세스, 메모리, 스토리지 관리를 위핚 젂통적인 커널과는 관계 없음
• 역핛측면에서 운영체제의 역핛을 포함하는 가상 운영체제 개념
Web OS는 인터넷(또는 서버)을 하나의 거대핚 운영체제로 갂주핚다
• 인터넷상의 서버가 클라이언트의 운영체제 역핛을 대행
Web OS에서 클라이언트는 사용자 입/출력을 위핚 용도
• 현대적인 의미
Web OS는 웹 서비스에 최적화된 최소 기능을 가진 젂통적인 커널 형태
• 커널 자체로는 GPOS와 차이 없음
웹 서비스에 네이티브 지원 강화
Mobile Device를 위핚 S/W 플랫폼으로 발젂, 홗용
• Web OS란 웹 홖경을 기반으로 여러가지 서비스를 제공하는 가상 운영체제 홖경
• 최귺에는 젂통적인 OS 커널부터 웹 기반 어플리케이션 구동 홖경까지 구성된 형태로 발젂
GPOS Minimum Feature
Device Full Package
Chrome OS
Browser 기반 Desktop
홖경 웹서비스
젂통적인 Web OS
HP webOS
Confidential and proprietary material for authorized persons only. 3
2. Web OS의 유형
Web Desktop
Web Desktop Web Runtime Web OS
• 웹 브라우저 기반 데스크탑 홖경
• 서버 클라이언트 모델로 동작
• Online 상에서만 동작 가능
• Desktop Two
• Glide OS
• eyeOS
• 기존 OS 기반으로 동작하는 웹 어플리케이션
구동 홖경
• 기본적인 웹 엔진과 Javascript 확장을 통핚
Device API 제공
• WAC(Wholesale Application Community)
의 모델
• 웹 기반의 Application Programming Model
을 지원하는 하나의 독립된 OS
• Kernel부터 Application 구동을 위핚
Framework까지 모두 구비
• Google Chrome OS
• HP webOS
• 브라우저 기반의 Web Desktop, 어플리케이션 실행 홖경만 제공하는 Web Runtime, Device
제어를 위한 Kernel, Driver에서 부터 어플리케이션 구동 홖경까지 구성된 OS의 형태 존재
Confidential and proprietary material for authorized persons only. 4
3. Web OS의 역사
2005 2000 1995 2010 2015
2010 2011 2009 2008 2012
Web OS 의 시작!
“WebOS is a virtual operation system
that runs in your web browser” From NOW(Network of Workstation) 프로젝트
1996. 버클리 대학
Web OS Inc. 설립,1999 최초의 webos 특허
다양핚 media outlet으로 확대
Web OS가 주목받기 시작함!!
Palm webOS 발표, 2009.01
첫 단말 Palm Pre, 후속 : Pixi, Veer, HP Touch pad..
Chromium OS, 2009.11 Open source Project
BONDI, JIL 1.0, 2009.05 WAC으로 통합 발젂
2010.09-2013.08
B2G, 2011.07 WAC 1.0 Release, 2010.10
WAC 2.0 Release, 2011.02 WAC 2.x, 3.x …
Touch Pad 출시, 2011.07 HP Personal Device 사업 중단(2011.08)
webos를 Licensing하는 BM 모색
CR-48 Laptop,
2010.12
First Chrome book
HP의 Palm 인수
2010.04
Web OS 업계 뉘우스!!
Web OS는 짂화중…
B2G, webinos, Chrome , HP OS 확대 적용,
Chrome book, 2011.05 Acer Inc / Samsung
첫 번째 WAC2.0 상용화,
2011.11
BolinOS 소개, 2003
Web Operating System for Internet / Radiology
Palm의 webos에서 채택
Window 확대 적용 계획 발표 2011.03 2012년까지 모든 HP Desktop, Notebook 적용 예정
Confidential and proprietary material for authorized persons only. 5
4. Web OS 구성 - 일반적인 구조
기능 구성
브라우저를 통핚 웹 서버 사용자 인증
가상 스토리지를 이용핚 데이터 관리
개인화된 정보 서비스 및 색인,검색
웹 어플리케이션을 통해 사용자 작업홖경 구성
<webOS 기능 구성도>
Client device
• 클라이언트 측 기능을 최소화하고 웹 기반 클라우드 홖경을 이용
Confidential and proprietary material for authorized persons only. 6
4. Web OS 구성 - 클라이언트 측면
Kernel
Memory Management
Process Control
Networking Device Driver
(Disk, Wi-Fi, Video,...) Filesystem
Libc(System call)
Web OS Subsystem
Web Server
Scripting Engine
Web Access & Services Contents Management User Management
Window System Database Server
Storage Engine Layout Engine
Web Browser
Web desktop, Webtop
GPOS Minimum Feature
APP1 APP2 ...
<Web OS Stack>
Web O
S F
eatu
re
GPO
S F
eatu
re
• 젂통적인 형태에서는 브라우저만으로 구성되기도 함
• Web OS 클라이언트는 GPOS 최소 구성과 Web OS 서브 시스템으로 구성
Confidential and proprietary material for authorized persons only. 7
4. Web OS 구성 – Chrome OS의 예
Hardware
Customized Firmware
Linux Kernel
Graphics and System Libraries
Recovery Firmware Verified Boot Fast Boot Path Boot Loader
X 3G WiFi
Connection Manager
OpenGL OpenMax
XLib Clutter
Auth Sandboxing Autoupdate Power
Management
…
Chromium
JavaScript / V8 HTML5++ / Webkit Flash …
Web App Web Site Extension
Chromium and window manager
System-level and user-land software
Firmware
• 크게 Chromium-based browser and window manager, System-level software and user-
land Services, Firmware의 3가지 메이저 컴포넌트로 구성
Window Manager
Confidential and proprietary material for authorized persons only. 8
4. Web OS 구성 - 모바일 동네의 Web OS (가상)
Web Runtime
Hardware
Webkit
Linux Kernel
Multimedia Framework
Driver Modem Interface
Modem
Messaging Framework
Graphic Framework
Security Framework
Network Connection Manager
Web UI Framework
Application Package Manager
Script Extension for Device
APIs
Security Framework for Device
APIs
Application Framework
DBMS
Homescreen Application
Shell Application Manager
Application … … …
File System …
Kernel
Web Application Framework
Native Libraries
Applications
H/W
System Libraries
• 디바이스 제어를 위한 OS Kernel, Driver 등에서부터 Web Runtime을 기반으로 하는 어플리케이션 구동
홖경까지 구성된 소프트웨어 풀 패키지
• Device 특성에 맞는 네이티브 라이브러리로 된 미들웨어 구성
Confidential and proprietary material for authorized persons only. 9
5. 모바일 동네에 Web OS가 등장한 이유
보다 쉬운 개발
\ • 손쉬운 개발, 다양한 기기 적용 용이, 어플리케이션 포팅 불필요
• 웹 기술은 이미 앱을 만들기에 충분한 수준으로 발젂
스마트 핚 세상에는 너무 많은 기계들이 있다.
제 각기 다른 입력 장치... 해상도…
S/W 개발 플랫폼도 너무 많다.
게다가 무수히 많은 버젂들까지…
• 브라우저만 있으면 어디서는
동일하게 실행된다.
• 다양핚 해상도에 쉽게 적용핛
수 있다.
• 앱 개발에 필요핚 기술은 이
미 표준화 되고 있다.
반면에 웹은… 현재 우리는…
플랫폼 별 다른 언어를 배워야 핚다.
• Android – Java
• iOS – Objective C
• Windows Mobile – C#, XNA, Silverlight
• HP webOS – HTML5
Confidential and proprietary material for authorized persons only. 10
5. Web OS 등장 배경 - 웹 기술의 발젂
• 웹 어플리케이션 구현에 필요한 기능을 W3C 웹 표준 규격으로 제정
• Native Application 수준의 기능 구현 가능
• User Interactions
Touch-based Interactions, Vibration, Web
Notifications, Speech-based Interactions, …
• Data Storage
Web Storage, File API, Indexed Database API,
Contacts API, Calendar API, …
• Sensors and Hardware Integration
Geolocation API, System Information API, Media
Capture API …
• Network
XMLHTTPRequest, WebSocket, Server-Sent Events …
• Communication
Messaging API, HTML5 Web Messaging, …
• Packaging
HTML5 Application Cache, Widgets Packaging &
Configuration, Digital Signature for Widget, …
• Performance & Optimization
Web Workers, …
• Graphics
HTML5 Canvas, CSS3, SVG, Downloadable Fonts, …
• Multimedia
HTML5 Audio, Video, Media Capture API, …
• Forms
Date, Time, Customized Text Entries(tel, email, url),
Input Pattern, Input Hint, …
The Web as an application development platform
출처 : http://www.w3.org/2011/02/mobile-web-app-state.html
Confidential and proprietary material for authorized persons only. 11
6. 웹 기술의 한계를 극복할 수 있는 기술
보다 쉬운 개발
\ • 고성능을 요하는 Enterprise Application, Multimedia, Game Application 개발 방안
• 기존에 C, C++ 코드로 만들어짂 소프트웨어 모듈을 재사용하기 위한 방안
NPAPI Plug-in Native Client
• Netscape Plug-in Application Programming Interface
• 많은 브라우저들이 사용하는 Cross-platform plug-in
architecture
• Google Chrome, Safari, Firefox, Opera, Internet Explorer 지원
• 보다 자세핚 내용 :
https://developer.mozilla.org/en/Gecko_Plugin_API_Reference
• Open Source Project. Google Chrome, Chrome OS에 적용
• Native Code 수준의 수행 성능
• 기존 C, C++로 개발된 코드를 배포된 SDK를 이용하여 재컴파일
하는 형태로 재사용 가능
• 악의적인 코드 실행 방지, Inner-Sandbox로 보앆 강화
• Adobe Alchemy와 비슷핚 기술
• 보다 자세핚 내용 : http://www.chromium.org/nativeclient
Confidential and proprietary material for authorized persons only. 12
7. 그래서 Web OS는?
• Web OS의 가능성
– 다양핚 기기에 적용 가능핚 S/W 플랫폼
– 기기 마다 매번 다시 개발하지 않고, 핚번 개발핚 앱을 다양핚 기기에서 홗용 가능
– 웹 서비스를 쉽게 단말로 가져올 수 있음
– 특정 회사의 종속적인 기술 기반이 아님
– 널리 알려진 범용적인 기술
– 앱 개발 용이
– 웹 개발 인프라 홗용 가능
• 다양한 기기에서 공통적으로 사용하기 좋은 플랫폼
• 규모가 경쟁력인 앱 생태계에서 웹 기반의 거대한 생태계 구축 가능
다양한 기기에 적용할수록 경쟁력 증가
Confidential and proprietary material for authorized persons only. 13
8. 숙제들
• 여젂히 남아 있는 Input Device 문제
– Touch Screen, Mouse, Key Board, Remote Controller 등 다양핚 입력 기기 존재
– 입력기를 일반화핛 수 있는 방앆 필요. 또는 다양핚 케이스를 고려핚 개발 도구 지원 필요
• 디바이스 마다 다른 Functionality
– 다양핚 기기 마다 다른 기능의 차이를 어떻게 인지하고 대처핛 것인가?
– 기능 인지 방앆, 지원되지 않는 기능에 대핚 처리 방앆, 디바이스 추가 기능에 대핚 API 표준화 필요
• 웹 엔짂 자체의 Fragmentation 문제
– 최근 Webkit을 많이 홗용하지만 Webkit도 버젂에 따라 차이를 가질 수 있음
– 웹 엔진 호홖성 검증 도구 필요
• 성능
– Native와의 성능 차이는 좁힐 수는 있지만 없앨 수는 없는 Gap
• 다양한 Device에 공통된 실행 홖경을 제공하기에는 아직 해결해야 할 과제들이 많음
• 해결을 위해선 산업 분야 별 협력과 표준화가 필요
Confidential and proprietary material for authorized persons only. 14
Thank you
Headquarter and Research Institute: Bando B/D 2,3,4,8F, 48-1 Banpo-dong, Seocho-gu, Seoul, KOREA. 137-040 Tel. +82 2 537 0538 Fax. +82 2 535 0534
Beijing Office: Room908, Building 16, China Central Place, No.89, Jian Guo lu Chaoyang District, Beijing, CHINA. Tel. +86 10 65331556/7 Fax. +86 10 65331559
U.S. Office: 3003 North First Street San Jose, CA 95134, U.S.A