30
© MIPS Technologies 2010 All rights reserved. Presented by MIPS Technologies Powering a Connected World October 2010 Comprehensive Development and Debug Coverage for Linux and Android on the MIPS Architecture

Comprehensive Development and Debug Coverage for Linux and Android … Development and... · Comprehensive Development and Debug Coverage for Linux and Android on the MIPS Architecture

  • Upload
    vandieu

  • View
    228

  • Download
    1

Embed Size (px)

Citation preview

© MIPS Technologies 2010 All rights reserved.

Presented by MIPS TechnologiesPowering a Connected World

October 2010

Comprehensive Development and

Debug Coverage for Linux and Android

on the MIPS Architecture

© MIPS Technologies 2010 All rights reserved.

MIPS TechnologiesPowering a Connected World

Today’s presenters:

• Rick Leatherman

VP Development Tools MIPS Technologies

• Hieu Tran

President & Founder of Viosoft Corporation

• Art Lee

VP of Business Development, Viosoft Corp.

At th

e c

ore

of th

e u

se

r e

xp

erie

nce

3© MIPS Technologies 2010 All rights reserved.

Agenda

Android and its Migration to Non-mobile

Applications

Android and How It Compares to Traditional

Linux Systems

The Challenges of Debugging Android

The Limitations of Traditional Debug Tools

Viosoft Arriba Debugger Overview

Brief Debug Demonstrations

Android System Event Analyzer

Summary

Q & A

At th

e c

ore

of th

e u

se

r e

xp

erie

nce

4© MIPS Technologies 2010 All rights reserved.

Overview of Google Android™ Software Platform

At th

e c

ore

of th

e u

se

r e

xp

erie

nce

5© MIPS Technologies 2010 All rights reserved.

Taking Android beyond Mobile Handsets

At th

e c

ore

of th

e u

se

r e

xp

erie

nce

6© MIPS Technologies 2010 All rights reserved.

Android on Non-Mobile Platforms

HANDSET (99% COMPLETE)

MID (70%)

STB (50%)

Embedded Device (???)

Assuming HW and Linux

SW is EXACTLY the same

Otherwise…only 80% or

less

At th

e c

ore

of th

e u

se

r e

xp

erie

nce

7© MIPS Technologies 2010 All rights reserved.

Android Enables Embedded Devices to

Access the “Cloud”

Connected Content

Devices to experience connected content NOW

At th

e c

ore

of th

e u

se

r e

xp

erie

nce

8© MIPS Technologies 2010 All rights reserved.

Repurposing Android Requires Tools that

can Debug the Full Stack

MIPS’ licensees, partners, and the community will

contribute much of the longer-term effort

At th

e c

ore

of th

e u

se

r e

xp

erie

nce

9© MIPS Technologies 2010 All rights reserved.

Android versus Traditional Linux Systems

Traditional Linux Platforms Android

Single language (some assembly,

mostly C)

Multiple languages (assembly, C/C++,

Java, JavaScript, ActionScript)

Single/few processes Multiple processes, with program logic

straddling process barriers

Applications mostly execute in User

Space

Applications partitioned between User

and Kernel Space

One process per application Multiple processes per application

Android Software Development

Android is a Juggling Act!

At th

e c

ore

of th

e u

se

r e

xp

erie

nce

10© MIPS Technologies 2010 All rights reserved.

Why is Android Development so Difficult?

(1) Android applications

cross language barrier Java

C/C++

Javascript & Actionscript

(2) Android applications

cross process barrier Client/Server

JNI

CORBA/IDL

(3) Android applications

cross protection barrier To and From User / Kernel Space

1

2

3

At th

e c

ore

of th

e u

se

r e

xp

erie

nce

11© MIPS Technologies 2010 All rights reserved.

MIPS Strategic Alliance With Viosoft

Corporation

MIPS has partnered with Viosoft to offer the

Arriba embedded Linux/Android debugger as

part of the MIPS tools portfolio

The Arriba debugger offer a very unique and

powerful set of debug features

Recently awarded a “Best in Show” Award by

VDC for Android Development Tools

We will showcase the Arriba debugger during

today’s Webinar

At th

e c

ore

of th

e u

se

r e

xp

erie

nce

12© MIPS Technologies 2010 All rights reserved.

Traditional Linux Debug Tools Like KGDB and

GDBSERVER are Severely Limited

PROCESS

1

PROCESS

2

T

2

T

3T

4

T

5

T

6

Module

A

Module

C

Module

B

Module

D

Static Kernel (KGDB Version)

Host PC

Kernel

Space

User

Space

Shared

Libs

GDBSERVER GDBSERVERGDB

1

GDB

2

GDB

3

ETH:Port 1

ETH:Port 2

RS-232

T

1

T

2

T

3T

4

T

5

T

6

Host PC

Kernel

Space

User

Space

Shared

Libs

GDBSERVER GDBSERVERGDB

1

GDB

2

GDB

3

Target Platform

Problem

Areas

At th

e c

ore

of th

e u

se

r e

xp

erie

nce

13© MIPS Technologies 2010 All rights reserved.

Android Application Development with

the Arriba Debugger

JAVA

JNI

C/C++

MIDDLEWARE

(DLL)

KERNEL

DRIVERS

JAVA

SOCKET

C/C++

MIDDLEWARE

(DLL)

KERNEL

DRIVERS

At th

e c

ore

of th

e u

se

r e

xp

erie

nce

14© MIPS Technologies 2010 All rights reserved.

Arriba Enhanced Android Debug Platform

VMON

Arriba

Ethernet /USB / E)TAG

Native Interface Code

Host

PlatformTarget Platform

Android

SDK

Eclipse based

Arriba SDK

At th

e c

ore

of th

e u

se

r e

xp

erie

nce

15© MIPS Technologies 2010 All rights reserved.

Debug Examples

Kernel and Driver

Dalvik Application

Dalvik VM

At th

e c

ore

of th

e u

se

r e

xp

erie

nce

16© MIPS Technologies 2010 All rights reserved.

Android Platform Run-mode Coverage

Linux Kernel 2.6.33

Native C/C++

Applications

Co

rba/B

ind

er In

terfa

ce

Android Applications

Android Libraries

Serial

Driver

Binder (IPC)

Driver

Ethernet

Driver

Display

Driver

WiFi

Driver

Flash

Driver

GlibC

Libraries

Audio

Driver

Keyboard

Driver

Core Libraries

Dalvik VM

Application FrameworkJNI

At th

e c

ore

of th

e u

se

r e

xp

erie

nce

17© MIPS Technologies 2010 All rights reserved.

Linux Kernel Debug

Linux Kernel 2.6.33

Native C/C++

Applications

Co

rba/B

ind

er In

terfa

ce

Android Applications

Android Libraries

Serial

Driver

Binder (IPC)

Driver

Ethernet

Driver

Display

Driver

WiFi

Driver

Flash

Driver

GlibC

Libraries

Audio

Driver

Keyboard

Driver

Core Libraries

Dalvik VM

Application FrameworkJNI

At th

e c

ore

of th

e u

se

r e

xp

erie

nce

18© MIPS Technologies 2010 All rights reserved.

Insert Kernel Debug Video

At th

e c

ore

of th

e u

se

r e

xp

erie

nce

20© MIPS Technologies 2010 All rights reserved.

Android Application Debug

Linux Kernel 2.6.33

Native C/C++

Applications

Co

rba/B

ind

er In

terfa

ce

Android Applications

Android Libraries

Serial

Driver

Binder (IPC)

Driver

Ethernet

Driver

Display

Driver

WiFi

Driver

Flash

Driver

GlibC

Libraries

Audio

Driver

Keyboard

Driver

Core Libraries

Dalvik VM

Application FrameworkJNI

At th

e c

ore

of th

e u

se

r e

xp

erie

nce

21© MIPS Technologies 2010 All rights reserved.

Insert Java Debug Video

At th

e c

ore

of th

e u

se

r e

xp

erie

nce

23© MIPS Technologies 2010 All rights reserved.

Android VM Debug

Linux Kernel 2.6.33

Native C/C++

Applications

Co

rba/B

ind

er In

terfa

ce

Android Applications

Android Libraries

Serial

Driver

Binder (IPC)

Driver

Ethernet

Driver

Display

Driver

WiFi

Driver

Flash

Driver

GlibC

Libraries

Audio

Driver

Keyboard

Driver

Core Libraries

Dalvik VM

Application FrameworkJNI

At th

e c

ore

of th

e u

se

r e

xp

erie

nce

24© MIPS Technologies 2010 All rights reserved.

Insert JVM Debug Video

© MIPS Technologies 2010 All rights reserved.

Arriba Linux/Android

Event Analyzer

Innovative Tools for Analyzing Linux and

Android Systems

At th

e c

ore

of th

e u

se

r e

xp

erie

nce

27© MIPS Technologies 2010 All rights reserved.

Arriba Linux/Android Analysis Tool

At th

e c

ore

of th

e u

se

r e

xp

erie

nce

28© MIPS Technologies 2010 All rights reserved.

Linux/Android Event Analyzer

Application level profiling

Works with all MIPS-Based™ devices running Linux or

Linux & Android

Captures all Linux/Android events occurring on the

target

Record activity for up to 20+ seconds (or you run out of

memory)

Display events over time with details just a mouse click

away

At th

e c

ore

of th

e u

se

r e

xp

erie

nce

29© MIPS Technologies 2010 All rights reserved.

The Power of Android

Enabling new business models for

service & content providers; OEMs

Bringing innovative technologies to

customers in established markets

Contact [email protected] to schedule

a live Android debug demonstration

MIPS is leading the Android Revolution in the digital home

Android on MIPS source code publicly available: Visit www.mips.com/android

At th

e c

ore

of th

e u

se

r e

xp

erie

nce

30© MIPS Technologies 2010 All rights reserved.

MIPS, MIPS32, MIPS64, MIPS-Based, MIPS-Verified, MIPS Technologies logo are trademarks of MIPS Technologies, Inc. and registered in the U.S. Patent and Trademark Office. MIPS, MIPS32, MIPS64, MIPS-Based, MIPS Logo, MIPS Technologies Logo, CorExtend, Pro Series, M4K, 4KE, 4KEc, 24K, 24KE, 34K, 74K, 1004K, MIPS Navigator, and FS2 are trademarks or registered trademarks of MIPS Technologies, Inc. in the United States and other countries.

Thank You!

www.mips.com/android