42
RTOS, Linux & Virtualization ta e y ong .kim @windrive r.com

RTOS, Linux & Virtualizationimg.etnews.com/ics_etnews/etc/__icsFiles/afieldfile/2012/01/30/2_win... · 4 © 2008 Wind River Systems, Inc. LG Nortel Starex 1800 CDMA (IS95C) BSC

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: RTOS, Linux & Virtualizationimg.etnews.com/ics_etnews/etc/__icsFiles/afieldfile/2012/01/30/2_win... · 4 © 2008 Wind River Systems, Inc. LG Nortel Starex 1800 CDMA (IS95C) BSC

© 2008 Wind River Systems, Inc.

RTOS, Linux & Virtualization

[email protected]

Page 2: RTOS, Linux & Virtualizationimg.etnews.com/ics_etnews/etc/__icsFiles/afieldfile/2012/01/30/2_win... · 4 © 2008 Wind River Systems, Inc. LG Nortel Starex 1800 CDMA (IS95C) BSC

2 © 2008 Wind River Systems, Inc.

Simple Board

Simple Code

Page 3: RTOS, Linux & Virtualizationimg.etnews.com/ics_etnews/etc/__icsFiles/afieldfile/2012/01/30/2_win... · 4 © 2008 Wind River Systems, Inc. LG Nortel Starex 1800 CDMA (IS95C) BSC

3 © 2008 Wind River Systems, Inc.

start:/* disable interrupts in CPU and switch to SVC32 mode */

MRS r1, cpsrBIC r1, r1, #MASK_MODEORR r1, r1, #MODE_SVC32 | I_BIT | F_BITMSR cpsr, r1

MOV r13, r0/* Save starttype in r13 so that r0 can be used for other purposes */

/** CPU INTERRUPTS DISABLED** disable individual interrupts in the interrupt

controller*/

LDR r2, L$_SndsIntmsk

/* R2->interrupt controller */MVN r1, #0

/* &FFFFFFFF */STR r1, [r2]

/* disable all interrupt soucres */

/** If not BOOT_COLD, bypass memory configuration,

memory region* switching etc.*/CMP r0, #BOOT_COLDBNE HiPosn

Page 4: RTOS, Linux & Virtualizationimg.etnews.com/ics_etnews/etc/__icsFiles/afieldfile/2012/01/30/2_win... · 4 © 2008 Wind River Systems, Inc. LG Nortel Starex 1800 CDMA (IS95C) BSC

4 © 2008 Wind River Systems, Inc.

LG Nortel Starex 1800 CDMA (IS95C) BSC

Page 5: RTOS, Linux & Virtualizationimg.etnews.com/ics_etnews/etc/__icsFiles/afieldfile/2012/01/30/2_win... · 4 © 2008 Wind River Systems, Inc. LG Nortel Starex 1800 CDMA (IS95C) BSC

5 © 2008 Wind River Systems, Inc.

Page 6: RTOS, Linux & Virtualizationimg.etnews.com/ics_etnews/etc/__icsFiles/afieldfile/2012/01/30/2_win... · 4 © 2008 Wind River Systems, Inc. LG Nortel Starex 1800 CDMA (IS95C) BSC

6 © 2008 Wind River Systems, Inc.

Page 7: RTOS, Linux & Virtualizationimg.etnews.com/ics_etnews/etc/__icsFiles/afieldfile/2012/01/30/2_win... · 4 © 2008 Wind River Systems, Inc. LG Nortel Starex 1800 CDMA (IS95C) BSC

7 © 2008 Wind River Systems, Inc.

Page 8: RTOS, Linux & Virtualizationimg.etnews.com/ics_etnews/etc/__icsFiles/afieldfile/2012/01/30/2_win... · 4 © 2008 Wind River Systems, Inc. LG Nortel Starex 1800 CDMA (IS95C) BSC

8 © 2008 Wind River Systems, Inc.

VDC Survey for Embedded OS Trend

* source: VDC report, Linux in Embedded Market, September, 2007

Page 9: RTOS, Linux & Virtualizationimg.etnews.com/ics_etnews/etc/__icsFiles/afieldfile/2012/01/30/2_win... · 4 © 2008 Wind River Systems, Inc. LG Nortel Starex 1800 CDMA (IS95C) BSC

9 © 2008 Wind River Systems, Inc.

Page 10: RTOS, Linux & Virtualizationimg.etnews.com/ics_etnews/etc/__icsFiles/afieldfile/2012/01/30/2_win... · 4 © 2008 Wind River Systems, Inc. LG Nortel Starex 1800 CDMA (IS95C) BSC

10 © 2008 Wind River Systems, Inc.

0

0.4

0.8

1.2

1.6

2

Max. Freq. 80% Max. Dual-Core

Performance Power

Page 11: RTOS, Linux & Virtualizationimg.etnews.com/ics_etnews/etc/__icsFiles/afieldfile/2012/01/30/2_win... · 4 © 2008 Wind River Systems, Inc. LG Nortel Starex 1800 CDMA (IS95C) BSC

11 © 2008 Wind River Systems, Inc.

50% More Performance Needed

CPU

OS

Uniprocessor

CPUFreq. x 1.5

(= Vol. x 1.5)

300%PowerConsumption

Core 1

OS

Core 2

Multicore

Core 1Freq. x 0.8

(= Vol. x 0.8)

Core 2Freq. x 0.8

(= Vol. x 0.8)

80%PowerConsumption

Page 12: RTOS, Linux & Virtualizationimg.etnews.com/ics_etnews/etc/__icsFiles/afieldfile/2012/01/30/2_win... · 4 © 2008 Wind River Systems, Inc. LG Nortel Starex 1800 CDMA (IS95C) BSC

12 © 2008 Wind River Systems, Inc.12

CPU

OS

Wasn’t life simple?

Core 1

OS

Core 2

Single-OS: SMP

Core 1

OS

Core 2

OS

Multi-OS : AMP

Multicore

CPU

OS OS

Hypervisor

Single Core Virtualization

VirtualizationOS OS

Hypervisor

Core 2Core 1

Multicore Virtualization

OS

Page 13: RTOS, Linux & Virtualizationimg.etnews.com/ics_etnews/etc/__icsFiles/afieldfile/2012/01/30/2_win... · 4 © 2008 Wind River Systems, Inc. LG Nortel Starex 1800 CDMA (IS95C) BSC

© 2008 Wind River Systems, Inc.

What’s the point?

Decision criteria for Operating System

Page 14: RTOS, Linux & Virtualizationimg.etnews.com/ics_etnews/etc/__icsFiles/afieldfile/2012/01/30/2_win... · 4 © 2008 Wind River Systems, Inc. LG Nortel Starex 1800 CDMA (IS95C) BSC

14 © 2008 Wind River Systems, Inc.

Performance

Page 15: RTOS, Linux & Virtualizationimg.etnews.com/ics_etnews/etc/__icsFiles/afieldfile/2012/01/30/2_win... · 4 © 2008 Wind River Systems, Inc. LG Nortel Starex 1800 CDMA (IS95C) BSC

15 © 2008 Wind River Systems, Inc.

Page 16: RTOS, Linux & Virtualizationimg.etnews.com/ics_etnews/etc/__icsFiles/afieldfile/2012/01/30/2_win... · 4 © 2008 Wind River Systems, Inc. LG Nortel Starex 1800 CDMA (IS95C) BSC

16 © 2008 Wind River Systems, Inc.

Feature

Page 17: RTOS, Linux & Virtualizationimg.etnews.com/ics_etnews/etc/__icsFiles/afieldfile/2012/01/30/2_win... · 4 © 2008 Wind River Systems, Inc. LG Nortel Starex 1800 CDMA (IS95C) BSC

17 © 2008 Wind River Systems, Inc.

Samsung AnyCall SPH-M1000CDMA HTML Smart Phone

Samsung AnyCall SGH-i900Omnia Smart Phone

HTC “Dream”Google Android Phone

Page 18: RTOS, Linux & Virtualizationimg.etnews.com/ics_etnews/etc/__icsFiles/afieldfile/2012/01/30/2_win... · 4 © 2008 Wind River Systems, Inc. LG Nortel Starex 1800 CDMA (IS95C) BSC

18 © 2008 Wind River Systems, Inc.

Quality

Page 19: RTOS, Linux & Virtualizationimg.etnews.com/ics_etnews/etc/__icsFiles/afieldfile/2012/01/30/2_win... · 4 © 2008 Wind River Systems, Inc. LG Nortel Starex 1800 CDMA (IS95C) BSC

19 © 2008 Wind River Systems, Inc.

• 1,930,000 SLOC • BSPs and Drivers:

800,000 SLOC• Network: 250,000• Assembly: 300,000 (15%)

– Math Routine Emulation: 120,000

– Kernel: 80,000– BSPs and Drivers:

100,000

Debian 4.0 (April 2007) VxWorks 5.4

Page 20: RTOS, Linux & Virtualizationimg.etnews.com/ics_etnews/etc/__icsFiles/afieldfile/2012/01/30/2_win... · 4 © 2008 Wind River Systems, Inc. LG Nortel Starex 1800 CDMA (IS95C) BSC

20 © 2008 Wind River Systems, Inc.

Cost

Page 21: RTOS, Linux & Virtualizationimg.etnews.com/ics_etnews/etc/__icsFiles/afieldfile/2012/01/30/2_win... · 4 © 2008 Wind River Systems, Inc. LG Nortel Starex 1800 CDMA (IS95C) BSC

21 © 2008 Wind River Systems, Inc.

Page 22: RTOS, Linux & Virtualizationimg.etnews.com/ics_etnews/etc/__icsFiles/afieldfile/2012/01/30/2_win... · 4 © 2008 Wind River Systems, Inc. LG Nortel Starex 1800 CDMA (IS95C) BSC

22 © 2008 Wind River Systems, Inc.

BusinessImplication

Page 23: RTOS, Linux & Virtualizationimg.etnews.com/ics_etnews/etc/__icsFiles/afieldfile/2012/01/30/2_win... · 4 © 2008 Wind River Systems, Inc. LG Nortel Starex 1800 CDMA (IS95C) BSC

23 © 2008 Wind River Systems, Inc.

Page 24: RTOS, Linux & Virtualizationimg.etnews.com/ics_etnews/etc/__icsFiles/afieldfile/2012/01/30/2_win... · 4 © 2008 Wind River Systems, Inc. LG Nortel Starex 1800 CDMA (IS95C) BSC

24 © 2008 Wind River Systems, Inc.

Portability

Development Tools

Engr. Preference

Scalability

ReliabilityEcosystem

Page 25: RTOS, Linux & Virtualizationimg.etnews.com/ics_etnews/etc/__icsFiles/afieldfile/2012/01/30/2_win... · 4 © 2008 Wind River Systems, Inc. LG Nortel Starex 1800 CDMA (IS95C) BSC

© 2008 Wind River Systems, Inc.

What’s happening out there…

Page 26: RTOS, Linux & Virtualizationimg.etnews.com/ics_etnews/etc/__icsFiles/afieldfile/2012/01/30/2_win... · 4 © 2008 Wind River Systems, Inc. LG Nortel Starex 1800 CDMA (IS95C) BSC

26 © 2008 Wind River Systems, Inc.

Lessons Learned

Automotive

Mobile

• Vendor Lock-in • Hard to Innovate• Expensive Development• Long Dev. Cycle• Lack of Standards• Some Differentiation at

all levels –> outside core competency

• Choice is fragmented - Wild West

• Some innovation, still costly

• Few middleware or HW standards

• Differentiation outside core competency

• Architected, structured

• Common OS – Linux• Common Middleware

– CGL• Common HW

Standard – ATCA• Differentiation in core

competencies

Time 1998 2002 2008

Telecom

Realization of UnsustainableRequirements

Linux Experiments Solution Creation thru Community and IndividualCompanies

WidespreadAdoption

• Cost optimization• Revenue maximization• Innovation and

differentiation

Digital TV / Setop Box

Page 27: RTOS, Linux & Virtualizationimg.etnews.com/ics_etnews/etc/__icsFiles/afieldfile/2012/01/30/2_win... · 4 © 2008 Wind River Systems, Inc. LG Nortel Starex 1800 CDMA (IS95C) BSC

27 © 2008 Wind River Systems, Inc.

One Common Mobile Handset

Distribution

• Linux Distributions• Linux Distribution Variants

3611444

mobile

Page 28: RTOS, Linux & Virtualizationimg.etnews.com/ics_etnews/etc/__icsFiles/afieldfile/2012/01/30/2_win... · 4 © 2008 Wind River Systems, Inc. LG Nortel Starex 1800 CDMA (IS95C) BSC

28 © 2008 Wind River Systems, Inc.

LiMo (Tier 1OEMs)

29%

Access4%

Android24%

Other7%

Qt (Nokia)12%

Moblin 26%

Source: Wind River 2008

410

2006 2007 2008 2009 2010 2011 2012

Wind River’s Market Positioning in Linux Mobile Devices

Source: Wind River Market Model, June 2008

Linux Handsets + MIDs, Total Market Vol (m)/Share (%) Linux Stack Landscape, 2012

260(18%)

12(1%)

45(3%)

75(5%)

125(9%)

190(14%)

(27%)

• Selected as Only Linux Commercialization Partner in the Open Handset Alliance

• Engaged in multiple OEM/ODM Android mobile phone projects

• Deploying Wind River Linux Platform and optimizing to Android silicon

• Selected as Linux Platform (CIE) Supplier to LiMo Foundation

• Build system/Layers Technology will be form basis of common development envir.

• Deploying CIE to 5 LIMO OEMs starting in March 2008

OpenMoko

• Exclusive partner to Intel to deliver commercial MID solution on Moblin

• Additionally provide Wind River build system and Common Tool Kit

• Ensure easy migration from Open Source to Commercial Moblin versions

Page 29: RTOS, Linux & Virtualizationimg.etnews.com/ics_etnews/etc/__icsFiles/afieldfile/2012/01/30/2_win... · 4 © 2008 Wind River Systems, Inc. LG Nortel Starex 1800 CDMA (IS95C) BSC

29 © 2008 Wind River Systems, Inc.

Open Handset Alliance

Operator Handset Makers

SoftwareCompanies

CommercializationCompanies

SemiconductorCompanies

Page 30: RTOS, Linux & Virtualizationimg.etnews.com/ics_etnews/etc/__icsFiles/afieldfile/2012/01/30/2_win... · 4 © 2008 Wind River Systems, Inc. LG Nortel Starex 1800 CDMA (IS95C) BSC

30 © 2008 Wind River Systems, Inc.

LiMo Foundation

Page 31: RTOS, Linux & Virtualizationimg.etnews.com/ics_etnews/etc/__icsFiles/afieldfile/2012/01/30/2_win... · 4 © 2008 Wind River Systems, Inc. LG Nortel Starex 1800 CDMA (IS95C) BSC

31 © 2008 Wind River Systems, Inc.

Moblin Community

Page 32: RTOS, Linux & Virtualizationimg.etnews.com/ics_etnews/etc/__icsFiles/afieldfile/2012/01/30/2_win... · 4 © 2008 Wind River Systems, Inc. LG Nortel Starex 1800 CDMA (IS95C) BSC

32 © 2008 Wind River Systems, Inc.

Page 33: RTOS, Linux & Virtualizationimg.etnews.com/ics_etnews/etc/__icsFiles/afieldfile/2012/01/30/2_win... · 4 © 2008 Wind River Systems, Inc. LG Nortel Starex 1800 CDMA (IS95C) BSC

© 2008 Wind River Systems, Inc.

Comparison

Technical, Non Technical & Tools

Page 34: RTOS, Linux & Virtualizationimg.etnews.com/ics_etnews/etc/__icsFiles/afieldfile/2012/01/30/2_win... · 4 © 2008 Wind River Systems, Inc. LG Nortel Starex 1800 CDMA (IS95C) BSC

34 © 2008 Wind River Systems, Inc.

Comparison Point - Technical

VxWorks Linux

Memory Footprint Small Big

Booting Fast Medium ~ Slow

Scheduling Simple Complex

Performance Fast ~ Medium Fast ~ Slow

File System Limited Rich

Graphics Limited Rich

Security Medium Low to High

Page 35: RTOS, Linux & Virtualizationimg.etnews.com/ics_etnews/etc/__icsFiles/afieldfile/2012/01/30/2_win... · 4 © 2008 Wind River Systems, Inc. LG Nortel Starex 1800 CDMA (IS95C) BSC

35 © 2008 Wind River Systems, Inc.

Comparison Point – Non Technical

VxWorks Linux

IP Protection High Ambiguous (GPL)

Developer Community Small Huge

Open Source Apps. Few Many

Maintenance Easy Difficult

In-house Expertise Big Small

Standard Support Medium Good

Responsibility Wind River Depends

Page 36: RTOS, Linux & Virtualizationimg.etnews.com/ics_etnews/etc/__icsFiles/afieldfile/2012/01/30/2_win... · 4 © 2008 Wind River Systems, Inc. LG Nortel Starex 1800 CDMA (IS95C) BSC

36 © 2008 Wind River Systems, Inc.

Development Tools

3rd Party UML Eclipse Plug-in

Source Code Analysis & Navigation

Kernel Space Debug

On-Chip Debug (JTAG)

User Space Debug

System Viewer

ProfileScope

Stethoscope

MemScope

Native Linux Debug

Unit Tester

Diagnostics

Application Software

Code QA& Test

SystemTest

Hardware Bring-Up

Firmware Driver & BSP

Code Editing, Package & Patch Management,Flexible Builds, CVS Integration

Deployment &Field Mgmnt.

Page 37: RTOS, Linux & Virtualizationimg.etnews.com/ics_etnews/etc/__icsFiles/afieldfile/2012/01/30/2_win... · 4 © 2008 Wind River Systems, Inc. LG Nortel Starex 1800 CDMA (IS95C) BSC

37 © 2008 Wind River Systems, Inc.

Page 38: RTOS, Linux & Virtualizationimg.etnews.com/ics_etnews/etc/__icsFiles/afieldfile/2012/01/30/2_win... · 4 © 2008 Wind River Systems, Inc. LG Nortel Starex 1800 CDMA (IS95C) BSC

38 © 2008 Wind River Systems, Inc.

Page 39: RTOS, Linux & Virtualizationimg.etnews.com/ics_etnews/etc/__icsFiles/afieldfile/2012/01/30/2_win... · 4 © 2008 Wind River Systems, Inc. LG Nortel Starex 1800 CDMA (IS95C) BSC

39 © 2008 Wind River Systems, Inc.

Wind River Solution Portfolio

Wind River Workbench

Professional Services Practice

On-ChipDebugging

Workbench Plug-Ins

Management Suite

LinuxPlatforms

VxWorksPlatforms

Optimized IP, SNMP

Real-Time Core

Standard Optional

Partner Hardware

Partner Software

Third Party

Page 40: RTOS, Linux & Virtualizationimg.etnews.com/ics_etnews/etc/__icsFiles/afieldfile/2012/01/30/2_win... · 4 © 2008 Wind River Systems, Inc. LG Nortel Starex 1800 CDMA (IS95C) BSC

40 © 2008 Wind River Systems, Inc.

Two Choices to Accomplish Goal

Benefits• IP protection/control• Compatibility between apps• Compatibility w. Desktop• Broad external developer community (many 100K)

Benefits• Ability to Customize• Business model flexibility• No Vendor Lock-in• Broad external developer community (many 100K)

Considerations• Customization • Footprint, performance • Vendor Lock In• BOM Impact• It is not open source

Considerations• GPL issues• Availability of in-house open source expertise

• Over-customization• Growing community

Microsoft Open Source Platform

Page 41: RTOS, Linux & Virtualizationimg.etnews.com/ics_etnews/etc/__icsFiles/afieldfile/2012/01/30/2_win... · 4 © 2008 Wind River Systems, Inc. LG Nortel Starex 1800 CDMA (IS95C) BSC

41 © 2008 Wind River Systems, Inc.

Standard Linux Architecture

Hardware (x86, PPC, MIPS, ARM)

System Call Interface

DeviceDrivers

Process Scheduling

KernelSub-systems

InterruptManagement

MemoryManagement

Interrupts Shared MemoryTimer

Application Application

C Library

2 to 300MB RAM*

*Memory footprint varies by project

Wind RiverReal-time

Core

~300K RAM*

Page 42: RTOS, Linux & Virtualizationimg.etnews.com/ics_etnews/etc/__icsFiles/afieldfile/2012/01/30/2_win... · 4 © 2008 Wind River Systems, Inc. LG Nortel Starex 1800 CDMA (IS95C) BSC

42 © 2008 Wind River Systems, Inc.

Wind River Real-time Core Architecture

Hardware (x86, PPC, MIPS, ARM)

System Call Interface

DeviceDrivers

Process Scheduling

KernelSub-systems

InterruptManagement

MemoryManagement

Application Application

Interrupts Shared MemoryTimer

Real-timeTimer

Real-time Core

Scheduler

Real-time System Call Interface

Real-timeApplication

Real-timeDriver

Real-timeUser Space

API

User Space Real-time

Application

Real-time Thread

libpsdd.a

Linux Thread

C Library

Real-timeInterrupt

Management