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