Zulu Release Notes

Total Page:16

File Type:pdf, Size:1020Kb

Zulu Release Notes Azul Zulu Community Release Notes Zulu 16.28 General Availability Release Release Date: March 16, 2021 Document Version: 1.0 Last Modified: March 16, 2021 Zulu Release Notes Revision History Revision Date Description 1.0 March 16, 2021 Initial version of the document Azul Systems 2 Zulu Release Notes Revision History 2 Azul Zulu Overview 4 Zulu 16.28 General Availability Release Details 4 OpenJDK, OpenJFX, and Zulu Bug Fixes 7 OpenJDK Bug Fixes 7 OpenJFX Bug Fixes 147 Zulu Bug Fixes 152 Known Issues 156 Supported Platforms 157 Target Operating Environments 159 Running Zulu 161 Deployment Targets 161 Performance and Standards 161 Zulu Commercial Compatibility Kit 162 Legal Notice 163 Azul Systems 3 Zulu Release Notes Azul Zulu Overview Azul® Zulu® is a Java Development Kit (JDK), and a compliant implementation of the Java Standard Edition (SE) specification that contains all the Java components needed to build and run Java SE applications. Zulu has been verified by passing all tests of the OpenJDK Community Technology Compatibility Kit (TCK) as available for each respective Java SE version. Java SE Certified is a certification mark of the Java Community Project. Zulu 16.28 General Availability Release Details Released March 16, 2021 The general availability release of Zulu 16.28 includes JDK packages for x64, x86 and Arm64 platforms. See Supported Platforms for the list of platforms supported in this release. JavaFX implementation is based on OpenJFX 16. This release includes the following JDK Enhancement Proposals (JEP): l JEP 396: Strongly Encapsulate JDK Internals by Default Strongly encapsulate all internal elements of the JDK by default, except for critical internal APIs such as sun.misc.Unsafe. Allow end users to choose the relaxed strong encapsulation that has been the default since JDK 9. l JEP 393: Foreign-Memory Access API (Third Incubator) Introduce an API to allow Java programs to safely and efficiently access foreign memory outside of the Java heap. l JEP 394: Pattern Matching for instanceof Enhance the Java programming language with pattern matching for the instanceof operator. Pattern matching allows common logic in a program, Azul Systems 4 Zulu Release Notes namely the conditional extraction of components from objects, to be expressed more concisely and safely. l JEP 389: Foreign Linker API (Incubator) Introduce an API that offers statically-typed, pure-Java access to native code. This API, together with the Foreign-Memory API (JEP 393), will considerably simplify the otherwise error-prone process of binding to a native library. l JEP 390: Warnings for Value-Based Classes Designate the primitive wrapper classes as value-based and deprecate their constructors for removal, prompting new deprecation warnings. Provide warnings about improper attempts to synchronize on instances of any value- based classes in the Java Platform. l JEP 388: Windows/AArch64 Port Port the JDK to Windows/AArch64. The binary packages do not include the Windows/Arm64 build at the moment. NOTE They will be available in the Zulu 16 releases later. l JEP 392: Packaging Tool Provide the jpackage tool, for packaging self-contained Java applications. l JEP 397: Sealed Classes (Second Preview) Enhance the Java programming language with sealed classes and interfaces. Sealed classes and interfaces restrict which other classes or interfaces may extend or implement them. l JEP 395: Records Azul Systems 5 Zulu Release Notes Enhance the Java programming language with records, which are classes that act as transparent carriers for immutable data. Records can be thought of as nominal tuples. l JEP 376: ZGC: Concurrent Thread-Stack Processing ZGC: Concurrent Thread-Stack Processing. l JEP 380: Unix-Domain Socket Channels Add Unix-domain (AF_UNIX) socket support to the socket channel and server-socket channel APIs in the java.nio.channels package. Extend the inherited channel mechanism to support Unix-domain socket channels and server socket channels. l JEP 369: Migrate to GitHub Host the OpenJDK Community's Git repositories on GitHub. In concert with JEP 357 (Migrate from Mercurial to Git), this would migrate all single- repository OpenJDK Projects to GitHub, including both JDK feature releases and JDK update releases for versions 11 and later.. l JEP 386: Alpine Linux Port Port the JDK to Alpine Linux, and to other Linux distributions that use musl as their primary C library, on both the x64 and AArch64 architectures. l JEP 357: Migrate from Mercurial to Git Migrate the OpenJDK Community's source code repositories from Mercurial (hg) to Git. l JEP 387: Elastic Metaspace Return unused HotSpot class-metadata (i.e., metaspace) memory to the operating system more promptly, reduce metaspace footprint, and simplify the metaspace code in order to reduce maintenance costs. Azul Systems 6 Zulu Release Notes l JEP 347: Enable C++14 Language Features Allow the use of C++14 language features in JDK C++ source code, and give specific guidance about which of those features may be used in HotSpot code. l JEP 338: Vector API (Incubator) Provide an initial iteration of an incubator module, jdk.incubator.vector, to express vector computations that reliably compile at runtime to optimal vector hardware instructions on supported CPU architectures and thus achieve superior performance to equivalent scalar computations. OpenJDK, OpenJFX, and Zulu Bug Fixes This section provides the list of bug fixes included in this release. l OpenJDK Bug Fixes l OpenJFX Bug Fixes l Zulu Bug Fixes OpenJDK Bug Fixes The following table describes the OpenJDK changes implemented for Zulu 16.28. OpenJDK Synopsis Patch ID JDK-8261252 Update copyright date in copyright page of Java SE 16 JavaDoc API Specification JDK-8260927 StringBuilder::insert is incorrect without Compact Strings JDK-8260709 C2: assert(false) failed: unscheduable graph JDK-8260704 ParallelGC: oldgen expansion needs release-store for _end JDK-8260632 Build failures after JDK-8253353 JDK-8260608 add a regression test for 8260370 Azul Systems 7 Zulu Release Notes OpenJDK Synopsis Patch ID AArch64: Wrong code generated for shifting right and accumulating four unsigned JDK-8260585 short integers JDK-8260473 [vector] ZGC: VectorReshape test produces incorrect results with ZGC enabled JDK-8260433 Record compact constructor using Objects.requireNonNull JDK-8260370 C2: LoopLimit node is not eliminated JDK-8260339 JVM crashes when executing PhaseIdealLoop::match_fill_loop JDK-8260284 C2: assert(_base == Int) failed: Not an Int [TESTBUG] javax/swing/JComponent/7154030/bug7154030.java failed with "Excep- JDK-8259946 tion: Failed to hide opaque button" JDK-8259796 timed CompletableFuture.get may swallow InterruptedException Remove EA from JDK 16 version string starting with Initial RC promotion on Feb 04, JDK-8259794 2021(B35) JDK-8259775 [Vector API] Incorrect code-gen for VectorReinterpret operation JDK-8259771 Update javadoc search spec to reflect relaxed case sensitivity JDK-8259765 ZGC: Handle incorrect processor id reported by the operating system JDK-8259757 add a regression test for 8259353 and 8259601 Release Note: Added -trustcacerts and -keystore Options to keytool -printcert and - JDK-8259733 printcrl Commands JDK-8259732 JDK 16 L10n resource file update - msg drop 10 JDK-8259722 ProblemList two jdk/jfr/startupargs tests on Windows ProblemList java/awt/Focus/AppletInitialFocusTest/AppletInitialFocusTest1.java on JDK-8259720 Windows ProblemList runtime/cds/appcds/jigsaw/modulepath/ModulePathAndCP_JFR.java JDK-8259719 on Windows Azul Systems 8 Zulu Release Notes OpenJDK Synopsis Patch ID JDK-8259657 typo in generated HELP page prevents localization Revert JDK-8245956 JavaCompiler still uses File API instead of Path API in a specific JDK-8259645 case JDK-8259641 C2: assert(early->dominates(LCA)) failed: early is high enough JDK-8259636 Check for buffer backed by shared segment kicks in in unexpected places JDK-8259634 MemorySegment::asByteBuffer does not respect spatial bounds JDK-8259607 SIGILL in jdk.jfr.internal.PlatformRecorder.rotateDisk() JDK-8259601 AArch64: Fix reinterpretX2D match rule issue JDK-8259574 SIGSEGV in BFSClosure::closure_impl JDK-8259560 Zero m68k: "static assertion failed: align" after JDK-8252049 JDK-8259477 Patterns: Remove unnecessary JLS subsection JDK-8259432 AIX build fails in Harfbuzz with XLC 16.01.0000.0006 JDK-8259429 Update reference to README.md JDK-8259399 console.sh failed Automatically with exit code 1 JDK-8259380 Correct pretouch chunk size to cap with actual page size JDK-8259353 VectorReinterpretNode is incorrectly optimized out JDK-8259337 VerifyCACerts.java fails as soneraclass2ca cert will expire in 90 days JDK-8259298 broken link in Stream::toList spec JDK-8259282 Disable MemAccess until JDK-8259276 is fixed C2: Empty expression stack when reexecuting tableswitch/lookupswitch instructions JDK-8259276 after deoptimization JDK-8259275 JRuby crashes while resolving invokedynamic instruction Azul Systems 9 Zulu Release Notes OpenJDK Synopsis Patch ID gc/parallel/TestDynShrinkHeap.java still fails "assert(covered_region.contains(new_ JDK-8259271 memregion)) failed: new region is not in covered_region" Demo selection changes with left/right arrow key. No need to press space for selec- JDK-8259237 tion. JDK-8259227 C2 crashes with SIGFPE due to a division that floats above its zero check (ann) getAnnotatedReceiverType should not parameterize owner(s) of statically nes- JDK-8259224 ted classes JDK-8259213 Vector conversion with part > 0 is not getting intrinsic implementation JDK-8259212
Recommended publications
  • Libffi This Manual Is for Libffi, a Portable Foreign-Function Interface Library
    Libffi This manual is for Libffi, a portable foreign-function interface library. Copyright c 2008, 2010, 2011 Red Hat, Inc. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. A copy of the license is included in the section entitled \GNU General Public License". Chapter 2: Using libffi 1 1 What is libffi? Compilers for high level languages generate code that follow certain conventions. These conventions are necessary, in part, for separate compilation to work. One such convention is the calling convention. The calling convention is a set of assumptions made by the compiler about where function arguments will be found on entry to a function. A calling convention also specifies where the return value for a function is found. The calling convention isalso sometimes called the ABI or Application Binary Interface. Some programs may not know at the time of compilation what arguments are to be passed to a function. For instance, an interpreter may be told at run-time about the number and types of arguments used to call a given function. `Libffi' can be used in such programs to provide a bridge from the interpreter program to compiled code. The `libffi' library provides a portable, high level programming interface to various calling conventions. This allows a programmer to call any function specified by a call interface description at run time. FFI stands for Foreign Function Interface. A foreign function interface is the popular name for the interface that allows code written in one language to call code written in another language.
    [Show full text]
  • Building Openjfx
    Building OpenJFX Building a UI toolkit for many different platforms is a complex and challenging endeavor. It requires platform specific tools such as C compilers as well as portable tools like Gradle and the JDK. Which tools must be installed differs from platform to platform. While the OpenJFX build system was designed to remove as many build hurdles as possible, it is necessary to build native code and have the requisite compilers and toolchains installed. On Mac and Linux this is fairly easy, but setting up Windows is more difficult. If you are looking for instructions to build FX for JDK 8uNNN, they have been archived here. Before you start Platform Prerequisites Windows Missing paths issue Mac Linux Ubuntu 18.04 Ubuntu 20.04 Oracle Enterprise Linux 7 and Fedora 21 CentOS 8 Common Prerequisites OpenJDK Git Gradle Ant Environment Variables Getting the Sources Using Gradle on The Command Line Build and Test Platform Builds NOTE: cross-build support is currently untested in the mainline jfx-dev/rt repo Customizing the Build Testing Running system tests with Robot Testing with JDK 9 or JDK 10 Integration with OpenJDK Understanding a JDK Modular world in our developer build Adding new packages in a modular world First Step - development Second Step - cleanup Before you start Do you really want to build OpenJFX? We would like you to, but the latest stable build is already available on the JavaFX website, and JavaFX 8 is bundled by default in Oracle JDK 8 (9 and 10 also included JavaFX, but were superseded by 11, which does not).
    [Show full text]
  • Red Hat Enterprise Linux 6 Developer Guide
    Red Hat Enterprise Linux 6 Developer Guide An introduction to application development tools in Red Hat Enterprise Linux 6 Dave Brolley William Cohen Roland Grunberg Aldy Hernandez Karsten Hopp Jakub Jelinek Developer Guide Jeff Johnston Benjamin Kosnik Aleksander Kurtakov Chris Moller Phil Muldoon Andrew Overholt Charley Wang Kent Sebastian Red Hat Enterprise Linux 6 Developer Guide An introduction to application development tools in Red Hat Enterprise Linux 6 Edition 0 Author Dave Brolley [email protected] Author William Cohen [email protected] Author Roland Grunberg [email protected] Author Aldy Hernandez [email protected] Author Karsten Hopp [email protected] Author Jakub Jelinek [email protected] Author Jeff Johnston [email protected] Author Benjamin Kosnik [email protected] Author Aleksander Kurtakov [email protected] Author Chris Moller [email protected] Author Phil Muldoon [email protected] Author Andrew Overholt [email protected] Author Charley Wang [email protected] Author Kent Sebastian [email protected] Editor Don Domingo [email protected] Editor Jacquelynn East [email protected] Copyright © 2010 Red Hat, Inc. and others. The text of and illustrations in this document are licensed by Red Hat under a Creative Commons Attribution–Share Alike 3.0 Unported license ("CC-BY-SA"). An explanation of CC-BY-SA is available at http://creativecommons.org/licenses/by-sa/3.0/. In accordance with CC-BY-SA, if you distribute this document or an adaptation of it, you must provide the URL for the original version. Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law.
    [Show full text]
  • Rich Internet Applications
    Rich Internet Applications (RIAs) A Comparison Between Adobe Flex, JavaFX and Microsoft Silverlight Master of Science Thesis in the Programme Software Engineering and Technology CARL-DAVID GRANBÄCK Department of Computer Science and Engineering CHALMERS UNIVERSITY OF TECHNOLOGY UNIVERSITY OF GOTHENBURG Göteborg, Sweden, October 2009 The Author grants to Chalmers University of Technology and University of Gothenburg the non-exclusive right to publish the Work electronically and in a non-commercial purpose make it accessible on the Internet. The Author warrants that he/she is the author to the Work, and warrants that the Work does not contain text, pictures or other material that violates copyright law. The Author shall, when transferring the rights of the Work to a third party (for example a publisher or a company), acknowledge the third party about this agreement. If the Author has signed a copyright agreement with a third party regarding the Work, the Author warrants hereby that he/she has obtained any necessary permission from this third party to let Chalmers University of Technology and University of Gothenburg store the Work electronically and make it accessible on the Internet. Rich Internet Applications (RIAs) A Comparison Between Adobe Flex, JavaFX and Microsoft Silverlight CARL-DAVID GRANBÄCK © CARL-DAVID GRANBÄCK, October 2009. Examiner: BJÖRN VON SYDOW Department of Computer Science and Engineering Chalmers University of Technology SE-412 96 Göteborg Sweden Telephone + 46 (0)31-772 1000 Department of Computer Science and Engineering Göteborg, Sweden, October 2009 Abstract This Master's thesis report describes and compares the three Rich Internet Application !RIA" frameworks Adobe Flex, JavaFX and Microsoft Silverlight.
    [Show full text]
  • Java Programming Standards & Reference Guide
    Java Programming Standards & Reference Guide Version 3.2 Office of Information & Technology Department of Veterans Affairs Java Programming Standards & Reference Guide, Version 3.2 REVISION HISTORY DATE VER. DESCRIPTION AUTHOR CONTRIBUTORS 10-26-15 3.2 Added Logging Sid Everhart JSC Standards , updated Vic Pezzolla checkstyle installation instructions and package name rules. 11-14-14 3.1 Added ground rules for Vic Pezzolla JSC enforcement 9-26-14 3.0 Document is continually Raymond JSC and several being edited for Steele OI&T noteworthy technical accuracy and / PD Subject Matter compliance to JSC Experts (SMEs) standards. 12-1-09 2.0 Document Updated Michael Huneycutt Sr 4-7-05 1.2 Document Updated Sachin Mai L Vo Sharma Lyn D Teague Rajesh Somannair Katherine Stark Niharika Goyal Ron Ruzbacki 3-4-05 1.0 Document Created Sachin Sharma i Java Programming Standards & Reference Guide, Version 3.2 ABSTRACT The VA Java Development Community has been establishing standards, capturing industry best practices, and applying the insight of experienced (and seasoned) VA developers to develop this “Java Programming Standards & Reference Guide”. The Java Standards Committee (JSC) team is encouraging the use of CheckStyle (in the Eclipse IDE environment) to quickly scan Java code, to locate Java programming standard errors, find inconsistencies, and generally help build program conformance. The benefits of writing quality Java code infused with consistent coding and documentation standards is critical to the efforts of the Department of Veterans Affairs (VA). This document stands for the quality, readability, consistency and maintainability of code development and it applies to all VA Java programmers (including contractors).
    [Show full text]
  • Exceptions and Libraries
    9/7/2016 Exceptions and Libraries RS 9.3, 6.4 Some slides created by Marty Stepp http://www.cs.washington.edu/143/ Edited by Sarah Heckman CSC216: Programming Concepts –Java © NC State CSC216 Faculty 1 Exceptions • exception: An object representing an error or unusual condition. – unchecked exceptions: One that does not have to be handled for the program to compile – checked exception: One that must be handled for the program to compile. • What are some unchecked and checked exceptions? • What may cause unchecked or checked exceptions? • For any checked exception, you must either: –also throw that exception yourself – catch (handle) the exception CSC216: Programming Concepts –Java © NC State CSC216 Faculty 2 1 9/7/2016 Throwing an exception public type name(params) throws type { • throws clause: Keywords on a method's header that states that the method may generate an exception. – You only need to list the checked exceptions for compilation – Good form to list all exceptions (including unchecked exceptions) –Example: public class ReadFile { public static void main(String[] args) throws FileNotFoundException { } "I hereby announce that this method might throw an exception, and the caller must accept the consequences if it happens." CSC216: Programming Concepts –Java © NC State CSC216 Faculty 3 Catching an exception try { statement(s); } catch (ExceptionType name) { code to handle the exception } – The try code executes – at least one statement should potentially cause an exception • A method call that throws an exception – If the exception
    [Show full text]
  • Perspectives on Free and Open Source Software.Pdf
    Perspectives on Free and Open Source Software Perspectives on Free and Open Source Software edited by Joseph Feller, Brian Fitzgerald, Scott A. Hissam, and Karim R. Lakhani The MIT Press Cambridge, Massachusetts London, England © 2005 Massachusetts Institute of Technology All rights reserved. No part of this book may be reproduced in any form by any electronic or mechanical means (including photocopying, recording, or information storage and retrieval) without permission in writing from the publisher. MIT Press books may be purchased at special quantity discounts for business or sales promotional use. For information, please e-mail [email protected] or write to Special Sales Department, The MIT Press, 5 Cambridge Center, Cambridge, MA 02142. This book was set in Stone sans and Stone serif by SNP Best-set Typesetter Ltd., Hong Kong. Printed and bound in the United States of America. Library of Congress Cataloging-in-Publication Data Perspectives on free and open source software / edited by Joseph Feller . [et al.]. p. cm. Includes bibliographical references and index. ISBN 0-262-06246-1 (alk. paper) 1. Shareware (Computer software) 2. Open source software. 3. Computer software—Development. I. Feller, Joseph, 1972– QA76.76.S46P47 2005 005.36—dc22 2004064954 10987654321 My love, thanks and humble apologies go to my very patient and supportive family: Carol, Caelen, Damien, and Dylan. JF Arís as Gaeilge: Buíochas mór le mo chlann, Máire, Pól agus Eimear. Is mór agam an iarracht a rinne sibh ar mo shon. BF With heartfelt warmth, I dedicate this book to my wife, Jacqueline, and my two sons, Derek and Zachery, who bring meaning to everything I do.
    [Show full text]
  • Dell Wyse Management Suite Version 2.1 Third Party Licenses
    Dell Wyse Management Suite Version 2.1 Third Party Licenses October 2020 Rev. A01 Notes, cautions, and warnings NOTE: A NOTE indicates important information that helps you make better use of your product. CAUTION: A CAUTION indicates either potential damage to hardware or loss of data and tells you how to avoid the problem. WARNING: A WARNING indicates a potential for property damage, personal injury, or death. © 2020 Dell Inc. or its subsidiaries. All rights reserved. Dell, EMC, and other trademarks are trademarks of Dell Inc. or its subsidiaries. Other trademarks may be trademarks of their respective owners. Contents Chapter 1: Third party licenses...................................................................................................... 4 Contents 3 1 Third party licenses The table provides the details about third party licenses for Wyse Management Suite 2.1. Table 1. Third party licenses Component name License type jdk1.8.0_112 Oracle Binary Code License jre11.0.5 Oracle Binary Code License bootstrap-2.3.2 Apache License, Version 2.0 backbone-1.3.3 MIT MIT aopalliance-1.0.jar Public Domain aspectjweaver-1.7.2.jar Eclipse Public licenses- v 1.0 bcprov-jdk16-1.46.jar MIT commons-codec-1.9.jar Apache License, Version 2.0 commons-logging-1.1.1.jar Apache License, Version 2.0 hamcrest-core-1.3.jar BSD-3 Clause jackson-annotations.2.10.2.jar Apache License, Version 2.0 The Apache Software License, Version 2.0 jackson-core.2.10.2.jar Apache License, Version 2.0 The Apache Software License, Version 2.0 jackson-databind.2.10.2.jar Apache License, Version 2.0 The Apache Software License, Version 2.0 log4j-1.2.17.jar Apache License, Version 2.0 mosquitto-3.1 Eclipse Public licenses- v 1.0 Gradle Wrapper 2.14 Apache 2.0 License Gradle Wrapper 3.3 Apache 2.0 License HockeySDK-Ios3.7.0 MIT Relayrides / pushy - v0.9.3 MIT zlib-1.2.8 zlib license yaml-cpp-0.5.1 MIT libssl.dll (1.1.1c) Open SSL License 4 Third party licenses Table 1.
    [Show full text]
  • Apache Harmony Project Tim Ellison Geir Magnusson Jr
    The Apache Harmony Project Tim Ellison Geir Magnusson Jr. Apache Harmony Project http://harmony.apache.org TS-7820 2007 JavaOneSM Conference | Session TS-7820 | Goal of This Talk In the next 45 minutes you will... Learn about the motivations, current status, and future plans of the Apache Harmony project 2007 JavaOneSM Conference | Session TS-7820 | 2 Agenda Project History Development Model Modularity VM Interface How Are We Doing? Relevance in the Age of OpenJDK Summary 2007 JavaOneSM Conference | Session TS-7820 | 3 Agenda Project History Development Model Modularity VM Interface How Are We Doing? Relevance in the Age of OpenJDK Summary 2007 JavaOneSM Conference | Session TS-7820 | 4 Apache Harmony In the Beginning May 2005—founded in the Apache Incubator Primary Goals 1. Compatible, independent implementation of Java™ Platform, Standard Edition (Java SE platform) under the Apache License 2. Community-developed, modular architecture allowing sharing and independent innovation 3. Protect IP rights of ecosystem 2007 JavaOneSM Conference | Session TS-7820 | 5 Apache Harmony Early history: 2005 Broad community discussion • Technical issues • Legal and IP issues • Project governance issues Goal: Consolidation and Consensus 2007 JavaOneSM Conference | Session TS-7820 | 6 Early History Early history: 2005/2006 Initial Code Contributions • Three Virtual machines ● JCHEVM, BootVM, DRLVM • Class Libraries ● Core classes, VM interface, test cases ● Security, beans, regex, Swing, AWT ● RMI and math 2007 JavaOneSM Conference | Session TS-7820 |
    [Show full text]
  • Oracle to Openjdk Migrations
    DATASHEET Make the Move from Oracle Java to Supported OpenJDK Oracle License Changes Cost of Cost of Number Number Oracle Java OpenJDK OpenLogic of Core of The new licensing requirements for Oracle Java SE Annual Annual Support Users Servers SE subscriptions have prompted many appli- Subscription Subscription cation development teams to reevaluate their 512 32 $92,160 $0 $30,880 options. 992 62 $179,280 $0 $56,080 Many teams are following analysts’ advice and adopting OpenJDK with supported and certified COST COMPARISON OF ORACLE JAVA VERSUS OPENJDK WITH OPENLOGIC SUPPORT builds from other vendors. the free OpenJDK license with OpenLogic support. Whether you have a OpenLogic can help organizations make the small or large core user base, the savings are substantial. move from Oracle Java to a supported OpenJDK The above comparison assumes the following: model with the following: • Most servers have dual, octa-core CPUs for a total • Free, certified and supported builds of of 16 cores. OpenJDK available at openlogic.com/ • The average user is in the 500 – 999 core tier priced openjdk-downloads. at $20/core/month (based on most recent Oracle Java • Enterprise support for any Java, including SE Subscription Global Price List). builds from other vendors. • The average customer has negotiated a 25% discount • Migration services to help you move seam- from Oracle. lessly from Oracle to OpenJDK. Java Support from OpenLogic Achieve Cost-Savings with Supported OpenJDK OpenLogic offers commercial support for all Java distributions, includ- ing Adopt OpenJDK, IBM, and Oracle’s Java. Based on the price of an Oracle Java SE subscription, which includes licensing and support, we’ve put Java support from OpenLogic includes security patches and bug fixes, together a conservative estimate of the annual in addition to guidance for the usage and administration of Java and the cost savings you can expect when migrating to JVM.
    [Show full text]
  • A Post-Apocalyptic Sun.Misc.Unsafe World
    A Post-Apocalyptic sun.misc.Unsafe World http://www.superbwallpapers.com/fantasy/post-apocalyptic-tower-bridge-london-26546/ Chris Engelbert Twitter: @noctarius2k Jatumba! 2014, 2015, 2016, … Disclaimer This talk is not going to be negative! Disclaimer But certain things are highly speculative and APIs or ideas might change by tomorrow! sun.misc.Scissors http://www.underwhelmedcomic.com/wp-content/uploads/2012/03/runningdude.jpg sun.misc.Unsafe - What you (don’t) know sun.misc.Unsafe - What you (don’t) know • Internal class (sun.misc Package) sun.misc.Unsafe - What you (don’t) know • Internal class (sun.misc Package) sun.misc.Unsafe - What you (don’t) know • Internal class (sun.misc Package) • Used inside the JVM / JRE sun.misc.Unsafe - What you (don’t) know • Internal class (sun.misc Package) • Used inside the JVM / JRE // Unsafe mechanics private static final sun.misc.Unsafe U; private static final long QBASE; private static final long QLOCK; private static final int ABASE; private static final int ASHIFT; static { try { U = sun.misc.Unsafe.getUnsafe(); Class<?> k = WorkQueue.class; Class<?> ak = ForkJoinTask[].class; example: QBASE = U.objectFieldOffset (k.getDeclaredField("base")); java.util.concurrent.ForkJoinPool QLOCK = U.objectFieldOffset (k.getDeclaredField("qlock")); ABASE = U.arrayBaseOffset(ak); int scale = U.arrayIndexScale(ak); if ((scale & (scale - 1)) != 0) throw new Error("data type scale not a power of two"); ASHIFT = 31 - Integer.numberOfLeadingZeros(scale); } catch (Exception e) { throw new Error(e); } } } sun.misc.Unsafe
    [Show full text]
  • CFFI Documentation Release 0.8.6
    CFFI Documentation Release 0.8.6 Armin Rigo, Maciej Fijalkowski May 19, 2015 Contents 1 Installation and Status 3 1.1 Platform-specific instructions......................................4 2 Examples 5 2.1 Simple example (ABI level).......................................5 2.2 Real example (API level).........................................5 2.3 Struct/Array Example..........................................6 2.4 What actually happened?.........................................6 3 Distributing modules using CFFI7 3.1 Cleaning up the __pycache__ directory.................................7 4 Reference 9 4.1 Declaring types and functions......................................9 4.2 Loading libraries............................................. 10 4.3 The verification step........................................... 10 4.4 Working with pointers, structures and arrays.............................. 12 4.5 Python 3 support............................................. 14 4.6 An example of calling a main-like thing................................. 15 4.7 Function calls............................................... 15 4.8 Variadic function calls.......................................... 16 4.9 Callbacks................................................. 17 4.10 Misc methods on ffi........................................... 18 4.11 Unimplemented features......................................... 20 4.12 Debugging dlopen’ed C libraries..................................... 20 4.13 Reference: conversions.......................................... 21 4.14 Reference:
    [Show full text]