javaguest a research java virtual machine on xen
play

JavaGuest - A Research Java Virtual Machine on Xen Mick Jordan, - PowerPoint PPT Presentation

JavaGuest - A Research Java Virtual Machine on Xen Mick Jordan, Sun Labs Grzegorz Milos, Cambridge University Computer Lab SUN LABS PROJECT: SUN LABS PROJECT: Context Java 6 provides a complete platform for server- side


  1. JavaGuest - A Research Java™ Virtual Machine on Xen Mick Jordan, Sun Labs Grzegorz Milos, Cambridge University Computer Lab

  2. SUN LABS PROJECT: SUN LABS PROJECT: Context • Java™ 6 provides a complete platform for server- side applications • No application-level native code • JVM™ dynamic compiler can generate optimal machine code from Java bytecodes

  3. SUN LABS PROJECT: SUN LABS PROJECT: Problem • Platform libraries are (partly) implemented by JVM native code and operating system code layers • Crossing these layers can be expensive • Dynamic compiler has no visibility into these layers • JVM on bare-metal is a lot of (ongoing) work

  4. SUN LABS PROJECT: SUN LABS PROJECT: Opportunity • Para-virtualization API dramatically reduces barrier to entry for “bare-metal” JVM • Multiple guest allows incremental approach to implementing I/O support • Project Maxwell VM > Sun Labs research JVM written in Java 6 enables an all-Java software stack

  5. SUN LABS PROJECT: SUN LABS PROJECT: Goals • Enable optimized, specialized, server-side Java applications with an all-Java software stack • Exploit access to low-level mechanisms for thread scheduling, memory management • Simplify development, administration of applications

  6. SUN LABS PROJECT: SUN LABS PROJECT: Related Work • BEA LiquidVM > JRockit JVM on “bare-metal” > VMWare/Xen • IBM Libra > J9 JVM on Libra “library operating system” > i.e., Libra is an extended “Mini-OS” > Libra off-loads network/disk to sibling guest

  7. SUN LABS PROJECT: SUN LABS PROJECT: Initial Prototype • Build on enhanced Mini-OS > SMP support > Pre-emptive threading > Debugging support • File I/O delegated to sibling guest > Pseudo device driver • Network stack in domain > Written in Java

  8. SUN LABS PROJECT: SUN LABS PROJECT: Debugging • Project Maxwell Inspector > GUI-based debugger that understands Project Maxwell VM data structures > Uses ptrace (Linux), libproc (Solaris) to communicate with target VM > Ported to Xen using pseudo-device driver > provides ptrace-like support > Uses user-level grant table device driver > Only available for Linux > Inspector has to run as root

  9. SUN LABS PROJECT: SUN LABS PROJECT: Status and Future Work • Status > Simple programs running > Inspector mostly working • Future Work > Network stack > Build up to production application > Application server, Game server > Rewrite Mini-OS in Java > Optimization and specialization > Open Source mid-2008

  10. SUN LABS PROJECT: SUN LABS PROJECT: More Info • Email: mick.jordan@sun.com • Project Maxwell VM: > http://research.sun.com/projects/maxwell • JavaGuest Project: > http://research.sun.com/projects/javaguest

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend