Cloud computing based Chrome
This presentation is the property of its rightful owner.
Sponsored Links
1 / 29

Cloud computing based Chrome os PowerPoint PPT Presentation


  • 113 Views
  • Uploaded on
  • Presentation posted in: General

Cloud computing based Chrome os. Name - Geunsik Lim e-Mail - leemgs.at.gmail.com Nick - invain ( 인베인 ) Blog - http://blog.naver.com/invain‏/. Oct-15-2010, Fri. 본 문서는 자유롭게 수정 및 재배포가 가능 하나 , 자료 이용시 “ 자료출처 : 6 회 Kandroid Seminar( Geunsik Lim)” 내용을 명시해야 합니다 . CONTENTS.

Download Presentation

Cloud computing based Chrome os

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Cloud computing based chrome os

Cloud computing based Chrome os

  • Name - Geunsik Lim

  • e-Mail - leemgs.at.gmail.com

  • Nick - invain (인베인)

  • Blog - http://blog.naver.com/invain‏/

Oct-15-2010, Fri

  • 본문서는 자유롭게 수정 및 재배포가 가능 하나, 자료 이용시“자료출처: 6회 Kandroid Seminar(Geunsik Lim)” 내용을 명시해야 합니다.


Contents

CONTENTS

Technology Session

What is ChromeOS?

Why do ChromeOS needs in Embedded Env?

Chrome webOS Demonstration

Chrome App Store for Business Model

Zygote based ChromeOS

WebOS Limitation

Open-sources for Chrome Web-browser

Linux Kernel for ChromeOS

Operating System-level virtualization: Container

Booting Sequence for ChromeOS

Summary

Q&A


What is chrome os

What is Chrome OS?

  • What is the official Name of Chrome OS?

    • Chromium OS  Chromium Project + Ubuntu based on Debian

    • Chromium OS  Chromium webOS

    • Chrome OS Chrome webOS

  • Chromium OS is an open-source project that aims to provide a fast, simple, and more secure computing experience for people who spend most of their time on the web. 

  • Chrome’s support for HTML5 and its JavaScript engine(V8).

    - http://dev.w3.org/html5/spec/Overview.html

  • Chromium Project : http://www.chromium.org


Zygote based chromeos 1 3

Zygote based ChromeOS 1/3

What is the major role of Zygote for Android platform?

Source - http://www.kandroid.org/board/board.php?board=kandroidseminar4&command=body&no=5

  • Chrome browser launches the zygote (#>chrome --type=zygote) which

    then forks of an instance of the renderer (#>chrome --type=renderer)

    or extension (#>chrome --type=extension)

    for each rendered (tab menu) or extension that it needs.


Zygote based chromeos 2 3

Zygote based ChromeOS 2/3

The zygote process is triggered by the “--type=zygote” command line flag, which causes ZygoteMain (in ./chrome/browser/zygote_main_linux.cc) to be run. The zygote is launched from ./chrome/browser/zygote_host_linux.cc.

Signaling the zygote for a new renderer happens in ./chrome/browser/child_process_launcher.cc.

You can use the “--zygote-cmd-prefix” flag to debug the zygote process. If you use “--renderer-cmd-prefix” then the zygote will be bypassed and renderers will be exec'ed afresh every time.

SELinux is preventing /opt/google/chrome/chrome-sandbox "write" access on oom_adj.

/usr/lib/chromium-browser/chromium-browser --type=zygote

Source - http://code.google.com/p/chromium/wiki/LinuxZygote


Cloud computing based chrome os

Zygote based ChromeOS 3/3

init

PPID PID

bash

Channel(26609.0x*******.********)

Chromium-broswer

chromium-browser (Ancestor)

Chromium-broswer

fork

chromium-browser for plugin module

Plugin Thread

(e.g: Flash)

chromium-browser --type=plugin

exec

Chromium-broswer

chromium-browser --type=zygote

Renderer Thread1

(Tab Browser)

chromium-browser --type=renderer

Renderer Thread2

(Tab Browser)

Renderer Thread3

(Tab Browser)

. . . . . .


Chrome os entire layout

Chrome OS의 Entire Layout

1. UI = Chrome Browser

2. Local Web Server

3. User Application Runs On Web Server

4. Good Bye Files

5. Robust Security

Network

YoutubeGbooksGdocs Gmail Picasa Gcalendar

Google

Cloud

Infrastructure

Internet

Chrome Web Browser

Chrome Window Manager

Xorg

Contents

System Libraries

SSL

OpenGL

Freetype

Xlib

Collector

Webkit

glibc

Sound

Network

Linux Kernel

Telephony

WebCam

Devices

Hardware


Cloud computing based chrome os

임베디드에서 왜 크롬OS가 필요한가?

  • 21세기 대부분의 소비자들은 인터넷을 사용하기 위해 컴퓨터를 ON하는 경우가 점진적으로 증가하고 있다.

  • 소니의 인터넷TV: 구글 안드로이드 기반의 TV플랫폼에 크롬 브라우저, Intel Chipset을 장착함으로써인터넷 검색은 물론 안드로이드마켓 다양한 애플리케이션 등을 다운로드를 목표로 함.다만, 현재의 안드로이드마켓이 스마트폰용 위주여서 TV용을 위한 소프트웨어개발도구(SDK) 공개 및 고해상도 앱개발 등이 필요.

  • 따라서, 로컬 애플리케이션 비즈니스모델을 가진 안드로이드와웹애플리케이션 비즈니스모델을 가진 크롬OS는 상호 보완적으로 융복합을 통해 성장해 나갈수 있음.


Chrome webos android win win

Chrome webOS와 Android의 Win-Win전략


Chrome webstore for business model

Chrome WebStore for Business Model

  • Chrome WebStore

     http://code.google.com/intl/ko/chrome/webstore/

     http://code.google.com/intl/ko-KR/chrome/apps/docs/developers_guide.html

    • If you charge for your app, you can use either Chrome Web Store Payments or your own custom payment system.

    • Or it can be more specialized, such as a Google Chrome Extension or a web app that's been modified to be downloaded and run on the user's computer.

  • Google Chrome Extensions

    • http://code.google.com/chrome/extensions/devguide.html

Webapp.json

Source

Webapp.crx

Package

Webapp.pem

  • JSON (JavaScript Object Notation)

  • CRX (Google Chrome extension)


Cloud computing based chrome os

모바일플랫폼별 주요 특징 비교내역


Native vs web based application

Native vs. Web-based Application

Next Generation

Android Market

Native apps

Few APIs between apps

No Recurring Revenue

Client Storage(=Local Storage)

Chrome WebStore

Web-based apps

Services & Mashups

Software as Service

ServerStorage

( = Cloud Computing )

Source - http://www.flickr.com/photos/civisi/2611679744/sizes/o/


Limitations of webos

Limitations of WebOS

  • UX Support

    - The effective support of User interface (Haptic, Augmented Reality, Gesture, Video, Voice Recognition)

  • Speed & Performance

    - Java-script, Parsing, Network latency (WIFI Infra)

  • Security

    - Security & Privacy

  • Unstability

    - Offline Mode, Asynchronous communication support

  • Hardware Control

    - Low-level device control


Operating system market trend

Operating System Market Trend


Chromeos demonstration 1 2

ChromeOS Demonstration 1/2

Environment: i-BuddieNetBook&Core2Q9400의 VirtualBox 3.X

Estimation :Chrome Webos를 Power On시 로그인화면까지 평균3~5초 소요됨.

Linux Distribution : Ubuntu 8.04 or Newer(9.10 Recommended)


Chromeos demonstration 2 2

ChromeOS Demonstration 2/2


Linux kernel for chromeos 1 3

Linux Kernel for ChromeOS 1/3

  • Intel Mobiln Patches(Menlow) + Ubuntu Patches(9.10 –Kamic)

    - Chromium webOS용 커널은넷북 하드웨어를 목표로 하고 있으므로, 인텔의 모블린(멘로우)용 커널패치들과우분투 커뮤니티의 커널패치를리눅스2.6.30 + 기반으로 하나의 커널로머지하는 방법으로 오픈소스를 비즈니스 모델에 활용.

  • Source Tree

    - git clone http://{src|git}.chromium.org/git/kernel.git

    - firefox http://{src|git}.chromium.org/cgi-bin/gitweb.cgi

    - http://kernel.ubuntu.com/git-repos/ubuntu/ubuntu-karmic.git/


Linux kernel for chromeos 2 3

Linux Kernel for ChromeOS 2/3

  • 저장장치는 Disk I/O Speed를 고려하여 부팅시SSD 저장장치를기본으로 이용.

  • KMS(Kernel mode setting)

    - 커널부팅시에커널모드셋팅(Intel I915 Graphics Kernel Mode Setting)을 기본으로 사용하기때문에 Xorg와 콘솔화면 간의 전환이 1초 이내로 가능.

  • Chrome WebOS또한 넷북을 주요타겟으로 하고 있기 때문에

    SWAP 메모리 기술을 사용하지 않음.

Without multihead setups, hotplug, etc

- Linux 2.6.29 adds kernel based graphic mode setting

- Linux 2.6.31 adds Kernel Mode Setting (KMS) support for ATI


Linux kernel for chromeos 3 3

Linux Kernel for ChromeOS 3/3

Maintainer = The Chromium OS Author . e-mail : [email protected] . Mandeep Singh Baines : config file for 2.6.31 . Will Drewry : config file for 2.6.30


Open sources for chrome web browser

Open-sources for Chrome Web-browser


Cloud computing based chrome os

Operating System-level virtualization: Container

To provide process aggregations in the Linux kernel, mainly for resource tracking purposes.

The basic notion of a grouping/partitioning of processes

- e.g: cpusets, ResGroups, User Bean Counters, virtual server namespaces, NSProxy containers, and others .

User ID

Cgroup

Merged into vanilla kernel 2.6.24 by Paul Menage at Jan-15-2007


Group scheduling with userid

Group Scheduling with UserID

Target#> echo 2048 > /sys/kernel/uids/497/cpu_share


Group scheduling with control groups cgroup

Group Scheduling with control groups(cgroup)

App9

Target#> mount –t cgroup–o cpucpu /cgroups

Target#> mkdir /cgroups/webbrowser

Target#> mkdir /cgroups/db

Target#> mkdir /cgroups/media

Target#> pidof `firefox` > /cgroups/webbrowser/tasks

Target#> echo 2048 > /cgroups/webbrowser/cpu.shares

App7

App8

App4

App5

App6

Container4

App1

App2

App3

Container3

Container2

Configuration Manager

Container1


Booting sequence for chromeos

Booting Sequence for ChromeOS

  • GRUB BootLoaderconfiiguration setting information

    label chromeos-hdmenu label chromeos-hdkernel vmlinuzappend quiet console=tty2 init=/sbin/init boot=local rootwait root=HDROOT

    ronoresumenoswapi915.modeset=1loglevel=1

Linux Kernel

Scheduler Initialization

Memory Initialization

Device Initialization

And so on . . .


Booting sequence for chromeos1

Booting Sequence for ChromeOS

/sbin/init

/sbin/chromeos_startup

Mounting Task

Initialization Script

Xorg

/usr/bin/chromeos-wm

Log-in Screen


Booting sequence for chromeos2

Booting Sequence for ChromeOS


Summary

Summary

  • Chromium OS는 인터넷을 주로 이용하는 사용자들을 위해서 기업의 클라우딩 인프라스트럭쳐를가볍고, 빠르고, 안전한 컴퓨팅 환경을제공하기 위한 Linux커널 기반으로 크롬 웹브라우져를 개발하는 오픈소스 프로젝트임.

  • 로컬 애플리케이션 비즈니스모델을 가진 안드로이드와웹애플리케이션 비즈니스모델을 가진 크롬OS는 상호 보완적으로 융복합을 통해 성장 가능함.

  • 웹브라우저에서 실행되는 애플리케이션들을 해당 목적에 맞게 그룹화 함으로써 효과적으로 태스크들을스케쥴 및 컨트롤할수 있는 OS레벨의 가상화인 리눅스 컨테이너 “cgroup”이 활용이 증가될 것임.

  • Linux 커널과Ubuntu 커뮤니티의 커널패치를 하나의 커널로머지하는 방법 등을 통해 모바일플랫폼으로 공개된 Android처럼 오픈소스를 비즈니스 모델의 Best Practice으로 활용하는 또 하나의 사례 (Open Innovation).


References

References

  • http://www.chromium.org/chromium-os

  • http://codereview.chromium.org/

  • http://www.google.com/chrome

  • http://www.chromium.org/

  • http://googlechromereleases.blogspot.com/

  • http://blog.chromium.org/


Cloud computing based chrome os

THANKS

지금까지 없던 새로운 시대를 열기 위해서는 끊임없이 도전하고 파괴하며,다른 기회를 만들어야 내야 한다 .이러한 사고방식이 얼마나 혁신적임을 보여주는지 이 시점에서 우리들은 깊이 생각해보아야 한다.


  • Login