9
Java MIDP implementation on HTML5 and Flash Yu Kobayashi (yukoba)

Firefox Developers Conference 2010

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: Firefox Developers Conference 2010

Java MIDP implementationon

HTML5 and Flash

Yu Kobayashi(yukoba)

Page 2: Firefox Developers Conference 2010

Who am I?

□“Virtual Machines on JavaScript and ActionScript” OTAKU

□My 4th project of screen sharing implemented by JavaScript and ActionScript

Page 3: Firefox Developers Conference 2010

Web Browser

HTML5 Flash

Java MIDP Implementation

Application

Page 4: Firefox Developers Conference 2010

My Compiler

Java class file

JavaScript ActionScript

Java source code

Page 5: Firefox Developers Conference 2010

Demo

Page 6: Firefox Developers Conference 2010

http://orto-app.com/

Just release now!Alpha Version

Page 7: Firefox Developers Conference 2010

Control Flow Graph

Page 8: Firefox Developers Conference 2010

Java Source codea = 1b = 1while (true) { c = a + b; System.out.println(c); a = b; b = c;}

a = 1b = 1

Is thread resume?

ResumeSystem.out.println(c)

c = a + bSystem.out.println(c)

a = bb = c

Page 9: Firefox Developers Conference 2010

Java mnemoniciload 2istore 1iload 3istore 2

Java source codea = bb = c

JavaScriptstack.push(localVar2)localVar1 = stack.pop()stack.push(localVar3)localVar2 = stack.pop()

More Optimized JavaScriptlocalVar1 = localVar2localVar2 = localVar3

JIT x86mov eax, [0004h]mov [0000h], eaxmov eax, [0008h]mov [0004h], eax

Optimized JavaScriptstack1 = localVar2localVar1 = stack1stack1 = localVar3localVar2 = stack1