• No results found

Deepak Bhole Sr. Software Engineer, Red Hat Inc. May

N/A
N/A
Protected

Academic year: 2021

Share "Deepak Bhole Sr. Software Engineer, Red Hat Inc. May"

Copied!
148
0
0

Loading.... (view fulltext now)

Full text

(1)
(2)

05/06/11

Deepak Bhole

Sr. Software Engineer, Red Hat Inc.

May 5

th

2011

Java - From OpenJDK to Red Hat Enterprise Linux

and What Lies Ahead

(3)

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

Red Hat's role

The future of Java

Version 7

Version 8

Questions

Agenda

Persistent index will always show current point

This presentation is designed to be used with audio as a primary mode of content delivery. If you have downloaded it,

see notes section for rough notes on applicable slides (draft quality). For pdf, it should be at the end of the slide deck.

(4)

History of Java

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

Red Hat's role

The future of Java

Version 7

Version 8

Questions

Timeline:

1997

Java 1.1

Java 1.2

1998

2002

Java 1.4

Java 5

2004

Java 6

2006

2011

Java 7

1999

LibGCJ

Classpath

2003

GCJ

Plugin

2006

Java

sources

GPLd

2012?

Java 8

+

GCJ stands for

G

NU

C

ompiler for

J

ava

(5)

OpenJDK

Community

OpenJDK/IcedTea

History of Java

OpenJDK

What?

vs JDK

IcedTea

Red Hat's Role

The future of Java

Version 7

Version 8

Questions

Apple

+

JDK stands for

J

ava

D

evelopment

K

it

(6)

OpenJDK vs JDK (current)

OpenJDK/IcedTea

History of Java

OpenJDK

What?

vs JDK

Current

Future

IcedTea

Red Hat's Role

The future of Java

Version 7

Version 8

Questions

JDK

OpenJDK

HotSpot Virtual machine

Interpreter

JIT (

J

ust

I

n

T

ime) compiler

Tools (javac, javadoc, etc.)

Class libraries

Public API (

A

pplication

P

rogramming

I

nterface)

Deployment tools

(7)

OpenJDK vs JDK (future)

OpenJDK/IcedTea

History of Java

OpenJDK

What?

vs JDK

Current

Future

IcedTea

Red Hat's Role

The future of Java

Version 7

Version 8

Questions

JDK

OpenJDK

HotSpot Virtual machine

Interpreter

JIT compiler

Tools (javac, javadoc, etc.)

Class libraries

Public API

Deployment tools

Serviceability tools

(8)

OpenJDK6 vs JDK6

OpenJDK/IcedTea

History of Java

OpenJDK

What?

vs JDK

6

7

IcedTea

Red Hat's Role

The future of Java

Version 7

Version 8

Questions

JDK6 (closed)

OpenJDK (7)

OpenJDK6

JDK7

Proprietary

Semi-open (development in open + some proprietary patches)

Open

(9)

OpenJDK7 vs JDK7

JDK

OpenJDK

HotSpot Virtual machine

Interpreter

JIT compiler

Tools (javac, javadoc, etc.)

Class libraries

Public API

Deployment tools

Serviceability tools?

95%

+

5%

+

+

As heard at JavaOne

Closed

OpenJDK/IcedTea

History of Java

OpenJDK

What?

vs JDK

6

7

IcedTea

Red Hat's Role

The future of Java

Version 7

Version 8

Questions

(10)

What is IcedTea?

IcedTea

…...

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

What?

Why?

IcedTea-Web

Red Hat's Role

The future of Java

Version 7

Version 8

Questions

Image sources:

http://www.openclipart.org/detail/22436

http://www.openclipart.org/detail/22712

(11)

Some of the contributors...

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

What?

Who is involved?

Why?

IcedTea-Web

Red Hat's Role

The future of Java

Version 7

Version 8

Questions

(Indirectly through OpenJDK)

All logos are copyright by their respective owners

(12)

Some of the users...

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

What?

Who is involved?

Why?

IcedTea-Web

Red Hat's Role

The future of Java

Version 7

Version 8

Questions

(13)

Why was IcedTea created?

(For the first release...)

Build

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

What?

Why?

IcedTea-Web

Red Hat's Role

The future of Java

Version 7

Version 8

Questions

Image sources:

(14)

To fix the build...

Build

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

What?

Why?

IcedTea-Web

Red Hat's Role

The future of Java

Version 7

Version 8

Questions

Image sources:

(15)

To fill what's missing...

JDK

HotSpot Virtual machine

Interpreter

JIT compiler

Tools (javac, javadoc, etc.)

Class libraries

...

Deployment tools

Deployment tools

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

What?

Why?

IcedTea-Web

Red Hat's Role

The future of Java

Version 7

Version 8

Questions

(16)

To back patch fixes...

JDK

HotSpot Virtual machine

Interpreter

JIT compiler

Tools (javac, javadoc, etc.)

Class libraries

...

Deployment tools

Deployment tools

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

What?

Why?

IcedTea-Web

Red Hat's Role

The future of Java

Version 7

Version 8

Questions

(17)

To support additional architectures...

JDK

HotSpot Virtual machine

Interpreter

JIT compiler

Tools (javac, javadoc, etc.)

Class libraries

...

Deployment tools

Deployment tools

Shark/Zero

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

What?

Why?

IcedTea-Web

Red Hat's Role

The future of Java

Version 7

Version 8

Questions

Implemented independently

Image sources:

http://www.openclipart.org/detail/132973

(18)

To support additional tools...

JDK

HotSpot Virtual machine

Interpreter

JIT compiler

Tools (javac, javadoc, etc.)

Class libraries

...

Deployment tools

Deployment tools

Implemented independently

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

What?

Why?

IcedTea-Web

Red Hat's Role

The future of Java

Version 7

Version 8

Questions

(19)

Fixes (with OpenJDK)

I found a bug, here

is the patch!

Thanks! It will be in

the next update

whenever it

happens*

* OpenJDK has a slower release cycle and it is not set in advance

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

What?

Why?

IcedTea-Web

Red Hat's Role

The future of Java

Version 7

Version 8

Questions

Image sources:

(20)

Fixes (with IcedTea)

I found a bug,

here is the

patch!

Thanks! It will be in

the next update

soon*!

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

What?

Why?

IcedTea-Web

Red Hat's Role

The future of Java

Version 7

Version 8

Questions

(21)

Fixes (with IcedTea)

I found a bug,

here is the

patch!

Thanks! It will be in

the next update

soon!

Here is a nice

patch from Mr.

Green.

Thanks! It will be

in the next update!

…...

No problem! We will

maintain it locally till then.

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

What?

Why?

IcedTea-Web

Red Hat's Role

The future of Java

Version 7

Version 8

Questions

(22)

Co-ordinated security

JDK

OpenJDK

IcedTea

Distros

Update

planned

Patches

sent

Distros

notified

Public release

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

What?

Why?

IcedTea-Web

Red Hat's Role

The future of Java

Version 7

Version 8

Questions

Not in code base

In code base, not public

In code base, public

(23)

IcedTea-Web

Web Browser Plugin

Web Start (javaws)

Settings tool (itweb-settings)

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

What?

Why?

IcedTea-Web

Red Hat's Role

The future of Java

Version 7

Version 8

Questions

Image sources:

http://www.openclipart.org/detail/25999

http://www.openclipart.org/detail/86059

http://www.openclipart.org/detail/112249

(24)

Fully Open Source

+

Classpath Exception

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

What?

Why?

IcedTea-Web

Red Hat's Role

The future of Java

Version 7

Version 8

Questions

+

GPL stands for GNU

G

eneral

P

ublic

L

icense

++

LGPL stands for GNU

L

esser

G

eneral

P

ublic

L

icense

Image source: http://www.gnu.org/graphics/official%20gnu.svg

GPL

(25)

Completeness

Plugin is almost fully complete

Web Start is slightly lagging, but has support for all of

the widely used features

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

What?

Why?

IcedTea-Web

Red Hat's Role

The future of Java

Version 7

Version 8

Questions

(26)

Co-ordinated security

IcedTea

Distros

Update

planned

Distros

notified

Public release

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

What?

Why?

IcedTea-Web

Red Hat's Role

The future of Java

Version 7

Version 8

Questions

Not in code base

In code base, not public

In code base, public

(27)

Settings configuration tool

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

What?

Why?

IcedTea-Web

Red Hat's Role

The future of Java

Version 7

Version 8

Questions

(28)

Settings configuration tool

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

What?

Why?

IcedTea-Web

Red Hat's Role

The future of Java

Version 7

Version 8

Questions

(29)

IcedTea6

Red Hat

Others

0

500

1000

1500

2000

2500

IcedTea6 commits

Total Red Hat commits: 2159 out of 2587*

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

Red Hat's Role

IcedTea

IcedTea-Web

Upstream

RHEL/Fedora

The future of Java

Version 7

Version 8

Questions

(30)

IcedTea (7)

Red Hat

Others

0

500

1000

1500

2000

2500

IcedTea (7) commits

Total Red Hat commits: 1988 out of 2432*

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

Red Hat's Role

IcedTea

IcedTea-Web

Upstream

RHEL/Fedora

The future of Java

Version 7

Version 8

Questions

(31)

Role in IcedTea-Web

Red Hat

Others

0

50

100

150

200

250

IcedTea-Web commits

Total Red Hat commits: 223 out of 234*

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

Red Hat's Role

IcedTea

IcedTea-Web

Upstream

RHEL/Fedora

The future of Java

Version 7

Version 8

Questions

(32)

OpenJDK7 OpenJDK6

Majority of OpenJDK6 commits are backports

The backport process

Red Hat is the primary backporter for

OpenJDK6

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

Red Hat's Role

IcedTea

IcedTea-Web

Upstream

RHEL/Fedora

The future of Java

Version 7

Version 8

Questions

(33)

OpenJDK7 contribution

* Figures are approximate, and do not account for merge commits

** Apple's contributions have been normalized from 81/8889 (OSX port) to 76/8337

Oracle+Community

Google

Red Hat

Apple

1

10

100

1000

10000

OpenJDK7 commits

As of 2011-04-28, 16:00 EDT*

Total: 8337

Oracle + community: 7998

Google: 136 (1.63%)

Red Hat: 127 (1.52%)

Apple: 76** (0.09%)

(

Logarithmic

)

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

Red Hat's Role

IcedTea

IcedTea-Web

Upstream

RHEL/Fedora

The future of Java

Version 7

Version 8

Questions

(34)

IcedTea* contribution

Red Hat

Others

0

500

1000

1500

2000

2500

IcedTea6 commits

Red Hat

Others

0

500

1000

1500

2000

IcedTea (7) commits

Red Hat

Others

0

50

100

150

200

250

IcedTea-Web commits

2159 out of 2587, 83.4%

1988 out of 2431, 81.7%

223 out of 234, 95.3%

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

Red Hat's Role

IcedTea

IcedTea-Web

Upstream

RHEL/Fedora

The future of Java

Version 7

Version 8

Questions

(35)

OpenJDK RPM in RHEL

OpenJDK

IcedTea

RPM

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

Red Hat's Role

IcedTea

IcedTea-Web

Upstream

RHEL/Fedora

The future of Java

Version 7

Version 8

Questions

(36)

Upstream first policy

OpenJDK

IcedTea

RPM

Accepted upstream

IcedTea release

RHEL release

OpenJDK release

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

Red Hat's Role

IcedTea

IcedTea-Web

Upstream

RHEL/Fedora

The future of Java

Version 7

Version 8

Questions

Red Hat Enterprise Linux release is subject to results of:

TCK tests

(api, compiler, dev)

Jtreg tests

(regression)

Mauve tests

(class library)

Spec* tests

(performance)

Java2dBenchmark tests

(drawing perf.)

(37)

Prioritized release

OpenJDK

IcedTea

RPM

Accepted upstream

IcedTea release

Prioritized release

OpenJDK release

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

Red Hat's Role

IcedTea

IcedTea-Web

Upstream

RHEL/Fedora

The future of Java

Version 7

Version 8

Questions

Release subject to results of:

TCK (api, compiler, dev) tests

JTreg (regression) tests

Mauve (class library) tests

Spec* (performance) tests

Java2dBenchmark (drawing perf.) tests

JFCMark (swing perf.) tests

(38)

Links

I will be at Campground 3 from 2PM to 3PM today

OpenJDK:

http://openjdk.java.net/

IcedTea:

http://icedtea.classpath.org/

IcedTea-Web:

http://icedtea.classpath.org/wiki/IcedTea-Web

IcedTea Bugs:

http://icedtea.classpath.org/bugzilla/

RHEL/Fedora bugs:

http://bugzilla.redhat.com

Mailing List:

[email protected]

IRC:

irc.oftc.net, #openjdk

Deepak Bhole

[email protected]

dbhole on irc

(39)
(40)

JMX Enhancements

ManagementFactory.getAllPlatformMXBeanInterfaces()

Everything inherits from PlatformManagedObject

New MBeans

java.lang.management.BufferPoolMXBean

java.lang.management.PlatformLoggingMXBean

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

Red Hat's Role

The future of Java

Version 7

JMX enhancements

Language changes

nio2

Fork/Join framework

Rest..

Version 8

Questions...

(41)

Switches in String

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

Red Hat's Role

The future of Java

Version 7

JMX enhancements

Language changes

Strings in switch

try-with-resources

Diamond operator

Numeric literals

multi-catch

@SafeVarArgs

...

...

...

(42)

Switches in String

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

Red Hat's Role

The future of Java

Version 7

JMX enhancements

Language changes

Strings in switch

try-with-resources

Diamond operator

Numeric literals

multi-catch

@SafeVarArgs

...

...

...

(43)

try-with-resources – try1

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

Red Hat's Role

The future of Java

Version 7

JMX enhancements

Language changes

Strings in switch

try-with-resources

Diamond operator

Numeric literals

multi-catch

@SafeVarArgs

...

...

...

(44)

try-with-resources – try2

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

Red Hat's Role

The future of Java

Version 7

JMX enhancements

Language changes

Strings in switch

try-with-resources

Diamond operator

Numeric literals

multi-catch

@SafeVarArgs

...

...

...

(45)

try-with-resources – try3

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

Red Hat's Role

The future of Java

Version 7

JMX enhancements

Language changes

Strings in switch

try-with-resources

Diamond operator

Numeric literals

multi-catch

@SafeVarArgs

...

...

...

(46)

try-with-resources in JDK7

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

Red Hat's Role

The future of Java

Version 7

JMX enhancements

Language changes

Strings in switch

try-with-resources

Diamond operator

Numeric literals

multi-catch

@SafeVarArgs

...

...

...

(47)

What JDK7 does (approximately)

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

Red Hat's Role

The future of Java

Version 7

JMX enhancements

Language changes

Strings in switch

try-with-resources

Diamond operator

Numeric literals

multi-catch

@SafeVarArgs

...

...

...

(48)

The AutoCloseable Interface

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

Red Hat's Role

The future of Java

Version 7

JMX enhancements

Language changes

Strings in switch

try-with-resources

Diamond operator

Numeric literals

multi-catch

@SafeVarArgs

...

...

...

(49)

Diamond operator

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

Red Hat's Role

The future of Java

Version 7

JMX enhancements

Language changes

Strings in switch

try-with-resources

Diamond operator

Numeric literals

multi-catch

@SafeVarArgs

...

...

...

(50)

Diamond operator

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

Red Hat's Role

The future of Java

Version 7

JMX enhancements

Language changes

Strings in switch

try-with-resources

Diamond operator

Numeric literals

multi-catch

@SafeVarArgs

...

...

...

(51)

Diamond operator

// prints 1

// prints 2

Example posted to coin-dev list by Neal Gafter ([email protected])

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

Red Hat's Role

The future of Java

Version 7

JMX enhancements

Language changes

Strings in switch

try-with-resources

Diamond operator

Numeric literals

multi-catch

@SafeVarArgs

...

...

...

(52)

Binary Literals

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

Red Hat's Role

The future of Java

Version 7

JMX enhancements

Language changes

Strings in switch

try-with-resources

Diamond operator

Numeric literals

multi-catch

@SafeVarArgs

...

...

...

(53)

Binary Literals

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

Red Hat's Role

The future of Java

Version 7

JMX enhancements

Language changes

Strings in switch

try-with-resources

Diamond operator

Numeric literals

multi-catch

@SafeVarArgs

...

...

...

(54)

Underscores in numeric literals

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

Red Hat's Role

The future of Java

Version 7

JMX enhancements

Language changes

Strings in switch

try-with-resources

Diamond operator

Numeric literals

multi-catch

@SafeVarArgs

...

...

...

(55)

Regular catch

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

Red Hat's Role

The future of Java

Version 7

JMX enhancements

Language changes

Strings in switch

try-with-resources

Diamond operator

Numeric literals

multi-catch

@SafeVarArgs

...

...

...

(56)

Multi-catch in JDK 7

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

Red Hat's Role

The future of Java

Version 7

JMX enhancements

Language changes

Strings in switch

try-with-resources

Diamond operator

Numeric literals

multi-catch

@SafeVarArgs

...

...

...

(57)

Precise re-throw in JDK7

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

Red Hat's Role

The future of Java

Version 7

JMX enhancements

Language changes

Strings in switch

try-with-resources

Diamond operator

Numeric literals

multi-catch

@SafeVarArgs

...

...

...

(58)

Safe var-args

With JDK6 (-Xlint:unchecked):

warning: [unchecked] unchecked generic array creation of type

java.util.List<java.lang.String>[] for varargs parameter

printAll(l1, l2);

^

With JDK7 (-Xlint:unchecked):

warning: [unchecked] Possible heap pollution from parameterized vararg type T

public <T> void printAll(T... params) {

^

warning: [unchecked] unchecked generic array creation for varargs parameter of

type List<String>[]

printAll(l1, l2);

^

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

Red Hat's Role

The future of Java

Version 7

JMX enhancements

Language changes

Strings in switch

try-with-resources

Diamond operator

Numeric literals

multi-catch

@SafeVarArgs

...

...

...

(59)

Safe var-args

With JDK6 (-Xlint:unchecked):

No warnings

With JDK7 (-Xlint:unchecked):

warning: [unchecked] Possible heap pollution from parameterized vararg type T

public <T> void printAll(T... params) {

^

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

Red Hat's Role

The future of Java

Version 7

JMX enhancements

Language changes

Strings in switch

try-with-resources

Diamond operator

Numeric literals

multi-catch

@SafeVarArgs

...

...

...

(60)

Safe var-args

With JDK6 (-Xlint:unchecked):

No warnings

With JDK7 (-Xlint:unchecked):

No warnings

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

Red Hat's Role

The future of Java

Version 7

JMX enhancements

Language changes

Strings in switch

try-with-resources

Diamond operator

Numeric literals

multi-catch

@SafeVarArgs

...

...

...

(61)

Safe var-args

With JDK6 (-Xlint:unchecked):

Error due to @SafeVarargs not being defined

Warning at line 110

With JDK7 (-Xlint:unchecked):

No warnings

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

Red Hat's Role

The future of Java

Version 7

JMX enhancements

Language changes

Strings in switch

try-with-resources

Diamond operator

Numeric literals

multi-catch

@SafeVarArgs

...

...

...

(62)

NIO2

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

Red Hat's Role

The future of Java

Version 7

JMX enhancements

Language changes

nio2

Fork/Join framework

Rest..

Version 8

Questions...

(63)

File actions

Actions provided by class

Files

copy()

move()

delete()

create[Symbolic]Link()

walkFileTree()

etc.

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

Red Hat's Role

The future of Java

Version 7

JMX enhancements

Language changes

nio2

Fork/Join framework

Rest..

Version 8

Questions...

(64)

Attributes

File/Directory

creation time

access time

modification time

size

isFile

isDirectory

isLink

Basic

POSIX

get/setPermissions

get/setGroup

FileOwner

getOwner

setOwner

*AttributeView(s)

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

Red Hat's Role

The future of Java

Version 7

JMX enhancements

Language changes

nio2

Fork/Join framework

Rest..

Version 8

Questions...

(65)

Asynchronous I/O

Application thread

I/O thread (sys)

I/O request

Process I/O request

Process callback

handler

Continue normal

execution

Application thread

I/O request (returns Future<Integer>)

Continue normal execution, process

Future<Integer> later

... OR ...

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

Red Hat's Role

The future of Java

Version 7

JMX enhancements

Language changes

nio2

Fork/Join framework

Rest..

Version 8

Questions...

(66)

Change notification

Application Thread

JVM

Thread

Use WatchService

Continue normal

execution

sleep/wait

OS/Poll

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

Red Hat's Role

The future of Java

Version 7

JMX enhancements

Language changes

nio2

Fork/Join framework

Rest..

Version 8

Questions...

(67)

Fork/Join Framework

class Foo extends RecursiveAction {

public Foo(data) { ... }

public void compute() {

if (small) doLocally();

else invokeAll(new Foo(halfData), // first half

new Foo(otherHalfData)); // remaining

}

}

Thread 1:

Foo.compute()

...

Fork/Join Framework

invokeAll()

Thread 2:

Foo.compute()

Thread 1:

Foo.compute()

Foo.compute()

Thread N:

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

Red Hat's Role

The future of Java

Version 7

JMX enhancements

Language changes

nio2

Fork/Join framework

Rest..

Version 8

Questions...

(68)

Additional Java 7 features

JSR-292 (

invokedynamic

)

JDBC 4.1

Unicode 6.0

Full list at

http://openjdk.java.net/projects/jdk7/features

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

Red Hat's Role

The future of Java

Version 7

JMX enhancements

Language changes

nio2

Fork/Join framework

Rest..

Version 8

Questions...

(69)
(70)

Jigsaw

JDK broken into modules based on functionality

No more CLASSPATH

New format to replace JAR files

RPM auto-dependency writing (would be done

by distros)

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

Red Hat's Role

The future of Java

Version 7

Version 8

Jigsaw

Lambda

Language changes

Questions...

(71)

Lambda (Closures)

Not yet finalized

Cleaner syntax and more scalable than

Anonymous Inner Classes

Defender methods

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

Red Hat's Role

The future of Java

Version 7

Version 8

Jigsaw

Lambda

Language changes

Questions...

(72)

Language Changes (Project Coin)

Collections enhancements

Collection literals

final

List

<Integer> digits = [4, 3, 4];

final

Set

<Integer> primes = { 2, 3, 5, 7 };

final

Map

<Integer, String> platonicSolids =

{ 4 : "tetrahedron",

6 : "cube",

8 : "octahedron",

12 : "dodecahedron",

20 : "icosahedron" };

Numeric suffixes for byte(y/Y) and short (s/S)

byte

b = 0xA0y;

short

s = 0xA0s;

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

Red Hat's Role

The future of Java

Version 7

Version 8

Jigsaw

Lambda

Language changes

Questions...

(73)

Questions?

OpenJDK/IcedTea

History of Java

OpenJDK

IcedTea

Red Hat's Role

The future of Java

Version 7

Version 8

Questions...

I will be at Campground 3 from 2PM to 3PM today

OpenJDK:

http://openjdk.java.net/

IcedTea:

http://icedtea.classpath.org/

IcedTea-Web:

http://icedtea.classpath.org/wiki/IcedTea-Web

IcedTea Bugs:

http://icedtea.classpath.org/bugzilla/

RHEL/Fedora bugs:

http://bugzilla.redhat.com

Mailing List:

[email protected]

IRC:

irc.oftc.net , #openjdk

Deepak Bhole

[email protected]

dbhole on irc

(74)
(75)
(76)

05/06/11

Deepak Bhole

Sr. Software Engineer, Red Hat Inc.

May 5

th

2011

Java - From OpenJDK to Red Hat Enterprise Linux

and What Lies Ahead

(77)

●OpenJDK/IcedTea ●History of Java ●OpenJDK ●IcedTeaRed Hat's roleThe future of Java

Version 7Version 8Questions

Agenda

Persistent index will always show current point

This presentation is designed to be used with audio as a primary mode of content delivery. If you have downloaded it,

see notes section for rough notes on applicable slides (draft quality). For pdf, it should be at the end of the slide deck.

(78)

History of Java

●OpenJDK/IcedTea

●History of Java ●OpenJDK ●IcedTea ●Red Hat's role ●The future of Java

●Version 7 ●Version 8 ●Questions

Timeline:

1997

Java 1.1

Java 1.2

1998

2002

Java 1.4

2004

Java 5

2006

Java 6

2011

Java 7

1999

LibGCJ

Classpath

2003

GCJ

Plugin

2006

Java

sources

GPLd

2012?

Java 8

+

GCJ stands for

G

NU

C

ompiler for

J

ava

++

GPL stands for GNU

G

eneral

P

ublic

L

icense

Only critical releases mentioned:

1.1 Feb 96

1.2 in 98

1.4 in 2002

Java 5 (Generics, major syntax changes) in 2004

Java 6 in 2006

OSS dev continued with GCJ release in 1999 and

classpath started picking up around then

GCJ WebPlugin in 2003

In Nov. 2006, Java/GPL announcement was made

No release since then, breaking the 2-yr cycle

Java 7 set for July 28

th

, 2011

(79)

OpenJDK

Community

●OpenJDK/IcedTea ●History of Java ●OpenJDK ●What? ●vs JDKIcedTea ●Red Hat's Role ●The future of Java

●Version 7 ●Version 8 ●Questions

Apple

+

JDK stands for

J

ava

D

evelopment

K

it

All company logos are copyright by their respective owners

This is where most of Java is now developed

Oracle, Red Hat, Google, Apple, IBM and others

contribute here

Most of the code base is identical to that of

proprietary JDK

Certain things are missing, like the plugin, javaws and

(80)

OpenJDK vs JDK (current)

OpenJDK/IcedTea ●History of Java ●OpenJDK ●What? ●vs JDKCurrent ●Future ●IcedTeaRed Hat's RoleThe future of Java

Version 7Version 8Questions

JDK

OpenJDK

HotSpot Virtual machine

Interpreter

JIT (Just In Time) compiler

Tools (javac, javadoc, etc.)

Class libraries

Public API (Application Programming Interface)

Deployment tools

Current state:

Class library, VM, compiler, etc. are open

Same public API

Deployment tools (plugin, webstart, etc.) will remain

(81)

OpenJDK vs JDK (future)

OpenJDK/IcedTea ●History of Java ●OpenJDK ●What? ●vs JDKCurrent ●Future ●IcedTeaRed Hat's RoleThe future of Java

Version 7Version 8Questions

JDK

OpenJDK

HotSpot Virtual machine

Interpreter

JIT compiler

Tools (javac, javadoc, etc.)

Class libraries

Public API

Deployment tools

Serviceability tools

Future:

Most of the items will stay open

In addition to deployment tools, serviceability tools

(e.g Mission Control), will stay closed

(82)

OpenJDK6 vs JDK6

OpenJDK/IcedTea ●History of Java ●OpenJDK ●What? ●vs JDK ●6 ●7 ●IcedTeaRed Hat's RoleThe future of Java

Version 7Version 8Questions

JDK6 (closed)

OpenJDK (7)

OpenJDK6

JDK7

Proprietary

Semi-open (development in open + some proprietary patches)

Open

JDK6 and OpenJDK6 development is not parallel,

and hence the divergence

OpenJDK6 was created from OpenJDK7 by removing

the Java 7 specific parts

(83)

OpenJDK7 vs JDK7

JDK

OpenJDK

HotSpot Virtual machine

Interpreter

JIT compiler

Tools (javac, javadoc, etc.)

Class libraries

Public API

Deployment tools

Serviceability tools?

95%

+

5%

+ +

As heard at JavaOne

Closed

OpenJDK/IcedTeaHistory of Java ●OpenJDK ●What? ●vs JDK ●6 ●7 ●IcedTeaRed Hat's RoleThe future of Java

Version 7Version 8Questions

Siblings from same codebase

(84)

What is IcedTea?

IcedTea

…...

OpenJDK/IcedTeaHistory of Java ●OpenJDK ●IcedTea ●What? ●Why?IcedTea-Web ●Red Hat's Role ●The future of Java

●Version 7 ●Version 8 ●Questions

Image sources:

http://www.openclipart.org/detail/22436

http://www.openclipart.org/detail/22712

OpenJDK Based

Contains OpenJDK core, plus build scripts, plus

(85)

Some of the contributors...

OpenJDK/IcedTeaHistory of Java ●OpenJDK ●IcedTea ●What? ●Who is involved? ●Why? ●IcedTea-Web ●Red Hat's Role ●The future of Java

●Version 7 ●Version 8 ●Questions

(Indirectly through OpenJDK)

All logos are copyright by their respective owners

(IcedTea-Web only)

Oracle is an indirect contributor via OpenJDK

RedHat is biggest contributor to IcedTea

(86)

Some of the users...

OpenJDK/IcedTeaHistory of Java ●OpenJDK ●IcedTea ●What? ●Who is involved? ●Why? ●IcedTea-Web ●Red Hat's Role ●The future of Java

●Version 7 ●Version 8 ●Questions

(IcedTea-Web only)

Used by almost all major Linux distros:

Fedora, RHEL, Ubuntu, Debian, SuSE, etc.

(87)

Why was IcedTea created?

(For the first release...)

Build

OpenJDK/IcedTeaHistory of JavaOpenJDK ●IcedTea ●What? ●Why?IcedTea-Web ●Red Hat's Role ●The future of Java

●Version 7 ●Version 8 ●Questions

Image sources:

http://www.openclipart.org/detail/30223

Initial OpenJDK drop did not build easily

(88)

To fix the build...

Build

OpenJDK/IcedTeaHistory of JavaOpenJDK ●IcedTea ●What? ●Why?IcedTea-Web ●Red Hat's Role ●The future of Java

●Version 7 ●Version 8 ●Questions

Image sources:

http://www.openclipart.org/detail/30217

IcedTea was primarily created to fix the build issues

and create a re-distributable JDK based on

OpenJDK.

(89)

To fill what's missing...

JDK

HotSpot Virtual machine

Interpreter

JIT compiler

Tools (javac, javadoc, etc.)

Class libraries

...

Deployment tools

Deployment tools

OpenJDK/IcedTeaHistory of JavaOpenJDK ●IcedTea ●What? ●Why?IcedTea-Web ●Red Hat's Role ●The future of Java

●Version 7 ●Version 8 ●Questions

Implemented independently

IcedTea has gradually taken on other roles...

(90)

To back patch fixes...

JDK

HotSpot Virtual machine

Interpreter

JIT compiler

Tools (javac, javadoc, etc.)

Class libraries

...

Deployment tools

Deployment tools

OpenJDK/IcedTeaHistory of JavaOpenJDK ●IcedTea ●What? ●Why?IcedTea-Web ●Red Hat's Role ●The future of Java

●Version 7 ●Version 8 ●Questions

Implemented independently

It provides backward patch maintenance for up to n-2

(91)

To support additional architectures...

JDK

HotSpot Virtual machine

Interpreter

JIT compiler

Tools (javac, javadoc, etc.)

Class libraries

...

Deployment tools

Deployment tools

Shark/Zero

OpenJDK/IcedTeaHistory of JavaOpenJDK ●IcedTea ●What? ●Why?IcedTea-Web ●Red Hat's Role ●The future of Java

●Version 7 ●Version 8 ●Questions

Implemented independently

Image sources:

http://www.openclipart.org/detail/132973

It provides additional runtime support. Most notably

Shark/Zero so that OpenJDK can run on other

platforms.

Almost all of the Shark/Zero porting work was done

by Red Hat.

IcedTea also supports Cacao and JamVM (as an

alternate to the HotSpot VM, with the OpenJDK class

libraries)

(92)

To support additional tools...

JDK

HotSpot Virtual machine

Interpreter

JIT compiler

Tools (javac, javadoc, etc.)

Class libraries

...

Deployment tools

Deployment tools

Implemented independently

OpenJDK/IcedTeaHistory of JavaOpenJDK ●IcedTea ●What? ●Why?IcedTea-Web ●Red Hat's Role ●The future of Java

●Version 7 ●Version 8 ●Questions

Shark/Zero

It provides additional tooling support, like for

VisualVM (now via a separate visualvm-harness

project under the IcedTea umbrella)

(93)

Fixes (with OpenJDK)

I found a bug, here

is the patch!

Thanks! It will be in

the next update

whenever it

happens*

* OpenJDK has a slower release cycle and it is not set in advance

OpenJDK/IcedTeaHistory of JavaOpenJDK ●IcedTea ●What? ●Why?IcedTea-Web ●Red Hat's Role ●The future of Java

●Version 7 ●Version 8 ●Questions

Image sources:

http://www.openclipart.org/detail/34957

Patches submitted to OpenJDK can take an arbitrary

amount of time depending on when the next release

happens.

(94)

Fixes (with IcedTea)

I found a bug,

here is the

patch!

Thanks! It will be in

the next update

soon*!

OpenJDK/IcedTeaHistory of JavaOpenJDK ●IcedTea ●What? ●Why?IcedTea-Web ●Red Hat's Role ●The future of Java

●Version 7 ●Version 8 ●Questions

* IcedTea has a faster release cycle dictated by importance of fixes since last release

Patches submitted to IcedTea have a faster

turnaround as IcedTea releases more frequently, and

depending on the severity of the issue, can do a

(95)

Fixes (with IcedTea)

I found a bug,

here is the

patch!

Thanks! It will be in

the next update

soon!

Here is a nice

patch from Mr.

Green.

Thanks! It will be

in the next update!

…...

No problem! We will

maintain it locally till then.

OpenJDK/IcedTeaHistory of JavaOpenJDK ●IcedTea ●What? ●Why?IcedTea-Web ●Red Hat's Role ●The future of Java

●Version 7 ●Version 8 ●Questions

Behind the scenes, IcedTea developers make sure

that the patch is okay for OpenJDK, and then take on

the responsibility of local patch maintenance until the

next OpenJDK update (assuming it was accepted)

Sometimes fixes are not accepted, in which case

(96)

Co-ordinated security

JDK

OpenJDK

IcedTea

Distros

Update

planned

Patches

sent

Distros

notified

Public release

OpenJDK/IcedTeaHistory of JavaOpenJDK ●IcedTea ●What? ●Why?IcedTea-Web ●Red Hat's Role ●The future of Java

●Version 7 ●Version 8 ●Questions

Not in code base

In code base, not public

In code base, public

All company logos are copyright by their respective owners

When a security update is planned, Oracle gets the

patches ready and notifies Red Hat and select

others.

IcedTea developers then put together a release, and

send a preview copy to trusted distro maintainers for

testing.

On a preset date and time, Oracle makes the

vulnerabilities public and distros release updates

thereafter

(97)

IcedTea-Web

Web Browser Plugin

Web Start (javaws)

Settings tool (itweb-settings)

OpenJDK/IcedTeaHistory of JavaOpenJDK ●IcedTea ●What? ●Why?IcedTea-Web ●Red Hat's Role ●The future of Java

●Version 7 ●Version 8 ●Questions

Image sources:

http://www.openclipart.org/detail/25999

http://www.openclipart.org/detail/86059

http://www.openclipart.org/detail/112249

IcedTea-Web contains:

The plugin

Webstart

itweb-settings

(98)

Fully Open Source

+

Classpath Exception

OpenJDK/IcedTeaHistory of JavaOpenJDK ●IcedTea ●What? ●Why?IcedTea-Web ●Red Hat's Role ●The future of Java

●Version 7 ●Version 8 ●Questions

+

GPL stands for GNU

G

eneral

P

ublic

L

icense

++

LGPL stands for GNU

L

esser

G

eneral

P

ublic

L

icense

Image source:

http://www.gnu.org/graphics/official%20gnu.svg

GPL

LGPL

All the code is IcedTea-Web is Open Source. Parts

from NetX are under LGPL, the plugin/javaws is

GPL+Classpath, while the settings tool is GPL

(99)

Completeness

Plugin is almost fully complete

Web Start is slightly lagging, but has support for all of

the widely used features

OpenJDK/IcedTeaHistory of JavaOpenJDK ●IcedTea ●What? ●Why?IcedTea-Web ●Red Hat's Role ●The future of Java

●Version 7 ●Version 8 ●Questions

Chart is more to show comparative completeness.

WebStart is slightly lagging.

However, both components contain the widely used

features. Most of the missing features are

(100)

Co-ordinated security

IcedTea

Distros

Update

planned

Distros

notified

Public release

OpenJDK/IcedTeaHistory of JavaOpenJDK ●IcedTea ●What? ●Why?IcedTea-Web ●Red Hat's Role ●The future of Java

Version 7 ●Version 8 ●Questions

Not in code base

In code base, not public

In code base, public

As with IcedTea, when a security release is due,

distros are notified earlier and sent an encrypted

tarball so that they can test the fixes.

(101)

Settings configuration tool

OpenJDK/IcedTeaHistory of JavaOpenJDK ●IcedTea ●What? ●Why?IcedTea-Web ●Red Hat's Role ●The future of Java

Version 7 ●Version 8 ●Questions

(102)

Settings configuration tool

OpenJDK/IcedTeaHistory of JavaOpenJDK ●IcedTea ●What? ●Why?IcedTea-Web ●Red Hat's Role ●The future of Java

Version 7 ●Version 8 ●Questions

Screenshot of settings tool showing security

(103)

IcedTea6

Red Hat Others

0 500 1000 1500 2000 2500

IcedTea6 commits

Total Red Hat commits: 2159 out of 2587*

OpenJDK/IcedTea

History of JavaOpenJDK ●IcedTea ●Red Hat's Role

●IcedTea ●IcedTea-Web ●Upstream ●RHEL/Fedora ●The future of Java

●Version 7 ●Version 8 ●Questions

* Approximate numbers as of 17:00 EDT on 2011-04-28

#!/bin/bash

USERS="ahughes|aph|dbhole|fitzsim|fkung|gbenson|iivan|jon.vanalten|

jsumali|keiths|kgallowa|langel|mwong|omajid|ptisnovs|jvanek|asu|

dlila|[email protected]"

TOTAL=`hg log | grep "user:" | grep -E "$USERS" | wc -l`

TOTALCOMMITS=`hg log | grep changeset | wc -l`

# Filter out Andrew's commits before he joined Red Hat

ANDREWS_RH_COMMITS=`hg log --date "2008-10-20 to 2011-04-28" | grep

"user:" | grep andrew | grep -v redhat.com | wc -l`

TOTAL=`echo $TOTAL + $ANDREWS_RH_COMMITS | bc -l`

echo "Total: $TOTAL"

(104)

IcedTea (7)

Red Hat Others

0 500 1000 1500 2000 2500

IcedTea (7) commits

Total Red Hat commits: 1988 out of 2432*

OpenJDK/IcedTea

History of JavaOpenJDK ●IcedTea ●Red Hat's Role

●IcedTea ●IcedTea-WebUpstream ●RHEL/Fedora ●The future of Java

●Version 7 ●Version 8 ●Questions

* Approximate numbers as of 17:00 EDT on 2011-04-28

(105)

Role in IcedTea-Web

Red Hat Others

0 50 100 150 200 250

IcedTea-Web commits

Total Red Hat commits: 223 out of 234*

OpenJDK/IcedTea

History of JavaOpenJDK ●IcedTea ●Red Hat's Role

●IcedTea ●IcedTea-WebUpstream ●RHEL/Fedora ●The future of Java

●Version 7 ●Version 8 ●Questions

* Approximate numbers as of 17:00 EDT on 2011-04-28

(106)

OpenJDK7 OpenJDK6

Majority of OpenJDK6 commits are backports

The backport process

Red Hat is the primary backporter for

OpenJDK6

OpenJDK/IcedTea

History of JavaOpenJDK ●IcedTea ●Red Hat's Role

●IcedTea ●IcedTea-WebUpstream ●RHEL/Fedora ●The future of Java

●Version 7 ●Version 8 ●Questions

(107)

OpenJDK7 contribution

* Figures are approximate, and do not account for merge commits

** Apple's contributions have been normalized from 81/8889 (OSX port) to 76/8337

Oracle+Community Google Red Hat Apple 1 10 100 1000 10000

OpenJDK7 commits

As of 2011-04-28, 16:00 EDT*

Total: 8337

Oracle + community: 7998

Google: 136 (1.63%)

Red Hat: 127 (1.52%)

Apple: 76** (0.09%)

(

Logarithmic

)

OpenJDK/IcedTeaHistory of JavaOpenJDK ●IcedTea ●Red Hat's Role

●IcedTea ●IcedTea-WebUpstream ●RHEL/Fedora ●The future of Java

●Version 7 ●Version 8 ●Questions

#!/bin/bash

if [ "$1" == "redhat" ]; then

USERS="langel aph andrew gbenson ptisnovs omajid dlila dbhole mwong"

elif [ "$1" == "google" ]; then

USERS="ahe hiroshi jjb rasbold"

elif [ "$1" == "apple" ]; then

USERS="astrange bino kmiller loefty rhoover swingler"

else

USERS="$*"

fi

TEMP_FILE="/tmp/jdk.commits.log"

TOTAL=0

TOTALDUPLICATES=0

TOTALCOMMITS=0

for dir in . corba hotspot jaxp jaxws jdk langtools; do

hg log -v -R $dir | grep -E "^user:|^Reviewed-by|^Contributed-by:|summary:" | grep -vi merge |

grep -E "^user:|^Reviewed-by|^Contributed-by:" | tr '\n' ' ' | perl -p -e s/user:/\\nuser:/g >

$TEMP_FILE

for uid in $USERS; do # for each user

USERS_TO_EXCLUDE=`echo $USERS | sed -e s:$uid::g | sed -e s:" ":" ":g -e s:"^ "::g -e s:"

$"::g | tr ' ' '|'`

USERTOTAL=0

COUNT=`grep " $uid" $TEMP_FILE | wc -l`

DUPLICATED_USERS=`grep " $uid" $TEMP_FILE | grep -E " $USERS_TO_EXCLUDE" | wc -l`

USERTOTAL=`echo $USERTOTAL + $COUNT | bc -l`

TOTALDUPLICATES=`echo $TOTALDUPLICATES + $DUPLICATED_USERS | bc -l`

TOTAL=`echo $TOTAL + $USERTOTAL | bc -l`

done

COMMITS_IN_DIR=`wc -l $TEMP_FILE | awk '{print $1}'`

TOTALCOMMITS=`echo $TOTALCOMMITS + $COMMITS_IN_DIR | bc -l`

done

rm -f $TEMP_FILE

# Account for commits by Chris Phillips after he started at Red Hat (2011-02-01+)

if [ "$1" == "redhat" ]; then

TOTAL=`echo $TOTAL + 1 | bc -l`

fi

TOTAL=`echo $TOTAL - "($TOTALDUPLICATES/2)" | bc -l` # assume duplicates == max 2 users

echo "Total: $TOTAL"

echo "Total duplicates: $TOTALDUPLICATES"

echo "Total commits: $TOTALCOMMITS"

(108)

IcedTea* contribution

Red Hat Others 0 500 1000 1500 2000 2500

IcedTea6 commits

Red Hat Others 0 500 1000 1500 2000

IcedTea (7) commits

Red Hat Others 0 50 100 150 200 250

IcedTea-Web commits

2159 out of 2587, 83.4%

1988 out of 2431, 81.7%

223 out of 234, 95.3%

OpenJDK/IcedTeaHistory of JavaOpenJDK ●IcedTea ●Red Hat's Role

●IcedTea ●IcedTea-Web ●Upstream ●RHEL/Fedora ●The future of Java

●Version 7 ●Version 8 ●Questions

(109)

OpenJDK RPM in RHEL

OpenJDK

IcedTea

RPM

OpenJDK/IcedTeaHistory of JavaOpenJDK ●IcedTea ●Red Hat's Role

●IcedTea ●IcedTea-Web ●Upstream ●RHEL/Fedora

●The future of Java ●Version 7 ●Version 8 ●Questions

+

RPM stands for

R

PM

P

ackage

M

anager

RPM contains IcedTea which in turn contains

(110)

Upstream first policy

OpenJDK

IcedTea

RPM

Accepted upstream

IcedTea release

RHEL release

OpenJDK release

●OpenJDK/IcedTea ●History of Java ●OpenJDK ●IcedTea ●Red Hat's Role

IcedTea ●IcedTea-Web ●Upstream ●RHEL/Fedora

The future of Java ●Version 7 ●Version 8 ●Questions

Red Hat Enterprise Linux release is subject to results of:

TCK tests

(api, compiler, dev)

Jtreg tests

(regression)

Mauve tests

(class library)

Spec* tests

(performance)

Java2dBenchmark tests

(drawing perf.)

JFCMark tests

(swing perf.)

Upstream first policy

(111)

Prioritized release

OpenJDK

IcedTea

RPM

Accepted upstream

IcedTea release

Prioritized release

OpenJDK release

OpenJDK/IcedTeaHistory of JavaOpenJDK ●IcedTea ●Red Hat's Role

●IcedTea ●IcedTea-Web ●Upstream ●RHEL/Fedora

●The future of Java ●Version 7 ●Version 8 ●Questions

Release subject to results of:

TCK (api, compiler, dev) tests

JTreg (regression) tests

Mauve (class library) tests

Spec* (performance) tests

Java2dBenchmark (drawing perf.) tests

JFCMark (swing perf.) tests

Upstream first policy

Early backports into RPMs if needed

(112)

Links

I will be at Campground 3 from 2PM to 3PM today

OpenJDK:

http://openjdk.java.net/

IcedTea:

http://icedtea.classpath.org/

IcedTea-Web:

http://icedtea.classpath.org/wiki/IcedTea-Web

IcedTea Bugs:

http://icedtea.classpath.org/bugzilla/

RHEL/Fedora bugs:

http://bugzilla.redhat.com

Mailing List:

[email protected]

IRC:

irc.oftc.net, #openjdk

Deepak Bhole

[email protected]

dbhole on irc

(113)
(114)

JMX Enhancements

ManagementFactory.getAllPlatformMXBeanInterfaces()

Everything inherits from PlatformManagedObject

New MBeans

java.lang.management.BufferPoolMXBean

java.lang.management.PlatformLoggingMXBean

OpenJDK/IcedTea ●History of Java ●OpenJDKIcedTea ●Red

References

Related documents

The present study reports an excellent intra- and inter-observer reproducibility and a good inter-scanner agreement of coronary CAC assessment between a 64-slice MDCT and a

max(Collection&lt;? extends T&gt; coll, Comparator&lt;? super T&gt; comp) Returns the maximum element of the given collection, according to the order induced by

The framing of the teacher’s lived experience in this study captures the teacher’s understanding, belief, feeling, intention, and action which are elaborated by the

Glo ydius inter medius Gl oydius tsushima ensis Glo ydius b lomhoffi Glo ydius bre vicaudus Glo ydius ussur iensis Bothr iechis nigro vir idis Bothr iechis guif arroi

NetFlow &amp; sFlow are technologies supported by most major router and switch vendors whereby packet analyzer like details are pushed to a collector.. This paper provides

(obj &lt;ssl-client-context|ssl-listener&gt;) (pathname &lt;string&gt;) #!optional ((rsa? &lt;bool&gt;) #t) ((asn1? &lt;bool&gt;) #f)) =&gt; &lt;void&gt; Loads the first private

Our principal finding is that increasing the minimum wage raises wages and prices with small adverse employment effects in Brazil.. This suggests a general wage-price

For two types T and U, if common_reference_t&lt;const remove_cvref_t&lt;T&gt;&amp;, const remove_cvref_t&lt;U&gt;&amp;&gt; is well-formed and denotes a type C such that