Transcript 2 - Oracle

Standard Disclaimer
The following is intended to outline our general
product direction. It is intended for informational
purposes only, and may not be incorporated into any
contract. It is not a commitment to deliver any
material, code, or functionality, and should not be
relied upon in making purchasing decisions.
The development, release, and timing of any
features or functionality described for Oracle’s
products remains at the sole discretion of Oracle.
2
2
<Insert Picture Here>
Java SE Update
Adam Messinger
VP Engineering
Java Platform Group
Java SE Agenda
•
•
•
•
Oracle and Java SE
OpenJDK
JDK and JVM roadmap
Community Participation
4
4
Oracle JDK
• Oracle JDK and JRE continue as free downloads
–
–
Based on OpenJDK with additional components
• 3rd party code that was replaced in OpenJDK
• Further components from Oracle
– Example: Java browser plugin
Licensed under Binary Code License
• Gratis, but not open source
• Oracle plans to continue to provide enterprise grade
support for a fee (à la Java for Business)
• Oracle will continue to provide Oracle JDK and JRE to
source licensees (commercial and non-commercial)
5
5
OpenJDK
• Oracle remains committed to OpenJDK
–
–
–
the best open source Java implementation
Oracle JDK is built on OpenJDK source code
Oracle will continue to improve OpenJDK
• Oracle continues to welcome external contributors
–
Companies, researchers, individuals, and more!
• Oracle plans JDK 7 & JDK 8 based on OpenJDK
–
Planned for 2011 and 2012, respectively
• Oracle plans to continue to provide OpenJDK 6
–
–
In collaboration with the OpenJDK Community
With Java SE 6 TCK access under OCTLA
• Oracle has no plans to change licensing of OpenJDK
6
6
Proposed JDK 7 Features
• InvokeDynamic byte code + supporting features
–
Multi-lang support, Rhino performance work
• Concurrency and Collections APIs
–
Improved multi-threaded Java code
• Small Language Enhancements (Project ”Coin”)
–
Some parts to be pulled into JDK 7
• SDP and SCTP Support
–
Telco/Financial/HPC
• New I/O APIs
–
–
Filesystem, async I/O
Improved performance, interoperability with OSes
• JVM Improvements
–
Performance and serviceability (from JRockit)
7
7
Proposed JDK 8 Major Features
• Lambda Expressions (”Closures”)
• Multi-Core, Developer Productivity
• Enables parallelization of library and user code
• Small Language Enhancements (Project ”Coin”)
• Developer Productivity
• Enables cleaner, more concise Java code
• Annotations enhancements for Java EE etc
• (Anything not going into JDK 7)
• Modules
• Focus on Java SE developers
• Support required Java EE container features
• Coarse-grained Java API modularity – reduce download size
• JVM Improvements
• Start-up time and ergonomics improvements
8
8
Java SE Futures (Ideas)
• Fully modularize JDK
– Allows subsetting for different target deployments
– Examples: Embedded, Headless, Light-weight Client
• Better integration
– Hardware devices, OSes
– Candidates: Location, Payment APIs
• Interoperability
– With native, non-Java languages
• Multi-core
– Parallelized APIs for bulk data processing etc
– Improved development, diagnostic and profiling tools
• Hardware trends
– Leverage HW profiling in SPARC, upcoming Intel chips
• Data bindings
– Simpler, more consistent access over different data sources such
as databases, caches and XML
9
9
JVM Strategy
HotSpot and JRockit Convergence
• As of the Sun acquisition, Oracle has two mainstream JVMs
• HotSpot - Versatile, Market share leader, High quality and
performance
• JRockit - Specialized - Focus on Serviceability, server-side
performance and the Oracle stack. Base of value-adds like
JRMC, JRRT and JRVE
• Converged JVM Strategy
• Merge into one codebase with the best of both worlds
• Converged JVM will be open sourced through OpenJDK
• Premium JRMC, JRRT and JRVE features will remain
closed source
• Oracle committed to continued investment
• The HotSpot and JRockit teams have been merged and
started working on the converged JVM.
10
10
JVM Convergence Roadmap
• Converged JVM 2011 (JDK7 or later)
• Enhanced management agent (from JRockit)
• Enhanced JVM MBean(s) (from JRockit)
• Improved startup time
• Converged JVM 2012
•
•
•
•
•
•
•
Extensible Permgen
Improved JVM logging (from JRockit)
Native memory usage tracking
Enhanced runtime JVM controls
“All” performance enhancements from JRockit
Further startup time improvements
…and much more
11
11
Feedback Welcome
What do you think about the proposed JDK 7/8
division?
What do you think about the proposed JVM
convergence plan?
How should we collect and prioritize feature requests
from the community? Highest #votes? Merit?
We want to make our priorities and progress
transparent. How should we do that?
12
12
Q&A
13
13