Icedtea and Icedtea-Web
Total Page:16
File Type:pdf, Size:1020Kb
IcedTea and IcedTea-Web Andrew Overholt Principal Software Engineer Red Hat Canada 2011-11-03 1 ● IcedTea Persistent index will always show current point ● OpenJDK vs JDK ● What? ● Who? ● Why? JavaOne Slide Template Title ● Future ● IcedTea-Web Agenda ● What? ● History ● Why? ● Features ● Future ● Questions 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. OpenJDK vs JDK ● IcedTea ● OpenJDK vs JDK ● Deployment tools ● What? ● Serviceability tools ● Who? ● Why? ● HotSpot Virtual machine ● Future ● Interpreter ● JIT compiler ● IcedTea-Web JDK ● What? ● Tools (javac, javadoc, etc.) ● History OpenJDK ● Why? ● Class libraries ● Features Closed ● ● Future Public API 95%+ 5%+ ● Questions + Last heard, for OpenJDK7 and JDK7 What is IcedTea? ● IcedTea ● OpenJDK vs JDK ● What? ● Who? ● Why? …... ● Future ● IcedTea-Web ● What? ● History ● Why? ● Features IcedTea ● Future ● Questions Image sources: http://www.openclipart.org/detail/22436 http://www.openclipart.org/detail/22712 Some of the users... ● IcedTea ● OpenJDK vs JDK ● What? ● Who? ● Why? ● Future ● IcedTea-Web ● What? ● History ● Why? (IcedTea-Web only) ● Features ● Future ● Questions Some of the contributors... ● IcedTea ● OpenJDK vs JDK ● What? ● Who? ● Why? ● Future ● IcedTea-Web ● What? ● History ● Why? (IcedTea-Web only) ● Features ● Future (Indirectly through OpenJDK) ● Questions All logos are copyright by their respective owners Why was IcedTea created? ● IcedTea ● OpenJDK vs JDK ● What? ● Who? ● Why? ● Future ● IcedTea-Web Build ● What? ● History ● Why? ● Features (For the first release...) ● Future ● Questions Image sources: http://www.openclipart.org/detail/30223 To fix the build... ● IcedTea ● OpenJDK vs JDK ● What? ● Who? ● Why? ● Future ● IcedTea-Web ● What? Build ● History ● Why? ● Features ● Future ● Questions Image sources: http://www.openclipart.org/detail/30217 To fill what's missing... ● IcedTea ● OpenJDK vs JDK ● What? ● Who? ● Why? ● Deployment tools ● Future ● IcedTea-Web Implemented independently ● What? ● Deployment tools ● History ● HotSpot Virtual machine ● Why? ● Interpreter ● Features ● JIT compiler JDK ● Future ● Tools (javac, javadoc, etc.) ● Questions ● Class libraries ... To back patch fixes... ● IcedTea ● OpenJDK vs JDK ● What? ● Who? ● Why? ● Deployment tools ● Future ● IcedTea-Web Implemented independently ● What? ● Deployment tools ● History ● HotSpot Virtual machine ● Why? ● Interpreter ● Features ● JIT compiler JDK ● Future ● Tools (javac, javadoc, etc.) ● Questions ● Class libraries ... To support additional architectures... ● IcedTea ● OpenJDK vs JDK ● What? ● Who? Shark/Zero ● Why? ● Deployment tools ● Future ● IcedTea-Web Implemented independently ● What? ● Deployment tools ● History ● HotSpot Virtual machine ● Why? ● Interpreter ● Features ● JIT compiler JDK ● Future ● Tools (javac, javadoc, etc.) ● Questions ● Class libraries ... Image sources: http://www.openclipart.org/detail/132973 To support additional tools... ● IcedTea ● OpenJDK vs JDK ● What? ● Who? Shark/Zero ● Why? ● Deployment tools ● Future ● IcedTea-Web Implemented independently ● What? ● Deployment tools ● History ● HotSpot Virtual machine ● Why? ● Interpreter ● Features ● JIT compiler JDK ● Future ● Tools (javac, javadoc, etc.) ● Questions ● Class libraries ... To keep OpenJDK6 up-to-date ● IcedTea ● OpenJDK vs JDK JDK6 (closed) ● What? ● Who? ● Why? JDK7 ● Future ● IcedTea-Web OpenJDK (7) ● What? ● History ● Why? OpenJDK6 ● Features ● Future ● Questions Proprietary Semi-open (Development in open + some proprietary patches) Open OpenJDK6 involvement ● IcedTea ● OpenJDK7 OpenJDK6 ● OpenJDK vs JDK ● What? ● Who? ● Majority of the OpenJDK6 commits are ● Why? backports ● Future ● IcedTea-Web ● Red Hat is the primary backporter ● What? ● History ● Why? ● Features ● Future ● Questions Co-ordinated security ● IcedTea ● OpenJDK vs JDK Update Patches Distros ● What? Public release planned sent notified ● Who? ● Why? JDK ● Future ● IcedTea-Web OpenJDK ● What? ● History IcedTea ● Why? ● Features ● Future Distros ● Questions Not in code base In code base, not public In code base, public All company logos are copyright by their respective owners Current structure ● IcedTea ● OpenJDK vs JDK ● What? hg.openjdk.java.net/hg/jdk6/jdk6-gate ● Who? ● Why? ● Future + patches, autotools, JamVM support, etc. ● IcedTea-Web ● What? IcedTea ● History ● Why? ● Features Use by distros ● Future ● Questions Future ● IcedTea ● OpenJDK vs JDK hg.openjdk.java.net/hg/jdkN/jdkN-gate ● What? ● Who? ● Why? + patches ● Future ● IcedTea-Web ● What? icedtea.classpath.org/hg/jdkN-gate ● History ● Why? ● Features + autotools, JamVM, Direct use by distros possible ● Future etc. ● Questions IcedTea Distros can also use IcedTea IcedTea-Web ● IcedTea ● OpenJDK vs JDK Web Browser Plug-in ● What? ● Who? ● Why? ● Future Web Start (javaws) ● IcedTea-Web ● What? ● History ● Why? ● Features Settings tool (itweb-settings) ● Future ● Questions Image sources: http://www.openclipart.org/detail/25999 http://www.openclipart.org/detail/86059 http://www.openclipart.org/detail/112249 Why is this needed? ● IcedTea ● OpenJDK vs JDK ● What? ● Who? ● Why? ● Future “this software may not be modified, decompiled or reverse engineered” ● IcedTea-Web ● What? - paraphrased from the BCL+ ● History ● Why? ● Features ● Future ● Questions + BCL is the Binary Code License under which the proprietary JDK is released Fully Open Source ● IcedTea ● OpenJDK vs JDK ● What? ● Who? LGPL ● Why? ● Future ● IcedTea-Web GPL ● What? ● History ● Why? + ● Features Classpath Exception ● Future ● Questions + GPL stands for GNU General Public License ++ LGPL stands for GNU Lesser General Public License Image source: http://www.gnu.org/graphics/official%20gnu.svg plug-in features ● IcedTea ● OpenJDK vs JDK ● What? ● Who? ● Why? ● Future ● IcedTea-Web JavaScript ● What? ● History ● Why? ● Features ● Future Full LiveConnect support (with testsuite to ensure adherence) ● Questions All logos are copyright by their respective owners. Other image sources: http://www.openclipart.org/detail/100267 plug-in features ● IcedTea ● OpenJDK vs JDK ● What? ● Who? ● Why? ● Future ● IcedTea-Web ● What? ● History ● Why? ● Features ● Future ● Questions ... (anything that supports NPAPI) ... Multi-browser support plug-in features ● IcedTea ● OpenJDK vs JDK ● What? ● Who? ● Why? ● Future ● IcedTea-Web ● What? ● History ● Why? ● Features … and any others where Shark/Zero will work ... ● Future ● Questions Extended architecture support All logos are copyright by their respective owners. plug-in features ● IcedTea ● OpenJDK vs JDK ● What? ● Who? JVM ● Why? ● Future Applet 1 Applet 2 …...... ● IcedTea-Web ● What? ● History Plug-in Thr. 1 Plug-in Thr. 2 …...... ● Why? ● Features Browser ● Future Single JVM design ● Questions 'javaws' features ● IcedTea ● OpenJDK vs JDK ● What? ● Who? ● Why? ● Future ● IcedTea-Web ● What? ● History ● Why? ● Features … and any others where Shark/Zero will work ... ● Future ● Questions Extended architecture support All logos are copyright by their respective owners 'javaws' features ● IcedTea ● OpenJDK vs JDK ● What? ● Who? ● Why? ● Future ● IcedTea-Web ● What? ● History ● Why? Headless (command-line) support ● Features ● Future ● Questions All logos are copyright by their respective owners. Other image sources: http://www.openclipart.org/detail/140431 'javaws' features ● IcedTea ● OpenJDK vs JDK Application Classloader ● What? ● Who? j1 policy j2 policy ● Why? j1.jar j2.jar ... ● Future ● IcedTea-Web ● What? ● History ● Why? JNLPSecurityManager ● Features ● Future ● Questions Application Per-jar policy, even with jnlp hrefs 'itweb-settings' features ● IcedTea ● OpenJDK vs JDK Certificate management ● What? ● Who? ● Why? ● Future Proxy configuration ● IcedTea-Web ● What? ● History Cache management ● Why? ● Features ● Future ● Questions Security configuration Image sources: http://www.openclipart.org/detail/25557 http://www.openclipart.org/detail/35311 http://www.openclipart.org/detail/152407 http://www.openclipart.org/detail/134449 Future ● IcedTea ● OpenJDK vs JDK ● Full LWJGL support ● What? ● Who? ● Why? ● JNLP_HREF support ● Future ● IcedTea-Web ● Per site security policies configurable via ● What? ● History GUI ● Why? ● Features ● Cache management improvements ● Future ● Questions Questions? ● IcedTea ● OpenJDK vs JDK ● What? ● Who? ● Why ? Contact: ● Future Name: Deepak Bhole ● IcedTea-Web Email: [email protected] ● What? IRC: dbhole on #openjdk on irc.oftc.net Blog: http://dbhole.wordpress.com ● History ● Why? IcedTea: http://icedtea.classpath.org/ ● Features IcedTea-Web: http://icedtea.classpath.org/wiki/IcedTea-Web ● Future ● Demos ● Questions .