developer tip

JVM은 오픈 소스 코드입니까?

copycodes 2020. 11. 21. 10:31
반응형

JVM은 오픈 소스 코드입니까?


JVM은 오픈 소스 코드입니까? 그렇지 않은 경우 JVM 코드를 어떻게 얻을 수 있습니까?


여기에서 핫스팟 JVM을 살펴보십시오 : http://openjdk.java.net/groups/hotspot/


전적으로 사용하는 JVM에 따라 다릅니다.

OpenJDK JVM을 사용하는 경우 여기 에서 소스 코드를 얻을 수 있습니다 .
Kaffe JVM을 사용하는 경우 여기 에서 소스를 얻을 수 있습니다 .
Sun JVM 버전 6 이상을 사용하는 경우 여기 에서 소스를 얻을 수 있습니다 .

6 이전의 Sun JVM을 사용하는 경우 교육용 라이센스에 따라 소스를 얻을 수 있습니다. IBM, Oracle, HP 또는 기타 JVM을 사용하는 경우 소스가 열리지 않습니다.

2013 년 5 월 업데이트

버전 6 소스는 여전히 위의 링크를 통해 액세스 할 수 있거나이 링크 를 통해 액세스 할 수 있습니다 . 이 후자의 링크에는 Oracle JDK 및 OpenJDK 버전이 서로 어떻게 일치하는지 보여주는 편리한 계보 표가 포함되어 있습니다.

또한 Java 7 소스의 최신 버전은 여기 에서 찾을 수 있습니다 . 여기에는 GA 이후 Java 7 릴리스에 대한 수정 사항도 포함됩니다.

그리고 누구에게도 당연히 Java 8 소스는 여기 에서 찾을 수 있습니다 .


JVM의 핵심 부분은 OpenJDK의 핫스팟 모듈에 있습니다. 그러나 필요한 것은 src.zip에있을 가능성이 더 큽니다.

이러한 클래스와 별도로 핫스팟 모듈은

  • 주로 C ++에서
  • 항상 이해하기 쉽지는 않습니다. 이것은 수년에 걸쳐 개선되었으며 새로운 코드는 코드가 더 광범위하게 소비 될 것임을 더 잘 알고 있기 때문에 더 나은 경향이 있습니다.
  • 종종 당신이 찾고있는 것이 아닙니다.

이러한 이유로 JVM이 어떻게 실행되는지 알고 싶다면 일반적으로 사용되는 클래스를 살펴 보는 것이 가장 좋습니다. 예를 들어, 람다가 런타임에 실제로 작동하는 방식만큼 낮은 수준의 것도 대부분 src.zip에 있지만 JVM에는 많지 않습니다.

대부분의 라이브러리 소스는 src.zip 파일에 JDK와 함께 제공됩니다. IDE에서 자동으로 사용합니다. JDK 자체를 가지고 노는 것보다 이러한 라이브러리의 클래스에 익숙해지는 것이 훨씬 낫습니다.


오라클의 멍청한 클래스 경로 예외를 우회 할 수없는 경우에도 오픈 소스 jvm은 없습니다. 간단히 말해서 openjdk는 여전히 상업용 VM과 경쟁하도록 강요하는 $$ 주도 방식에 묶여 있습니다. 실제로 Microsoft와 다르지 않지만 .net 라이브러리를 무료로 제공하는 OS에서도 C #으로 작업 할 수 있지만 실제로 최종 사용자가 선택한 환경으로 Windows를 사용하도록 강제하는 Visual Studio를 제어 할 수 있습니다.

참고 URL : https://stackoverflow.com/questions/2026093/is-jvm-open-source-code

반응형