Czym dokładnie jest HotSpot i jak odnosi się do JVM i OpenJDK? Czy to biblioteka? Co dokładnie robi?Różnica między JVM i HotSpot?
Czym różni się OpenJDK od HotSpot?
Czym dokładnie jest HotSpot i jak odnosi się do JVM i OpenJDK? Czy to biblioteka? Co dokładnie robi?Różnica między JVM i HotSpot?
Czym różni się OpenJDK od HotSpot?
Definicja Java Virtual Machine jest w tym, co nazywa się Java Virtual Machine Specification
JVM jest z definicji virtual machine, że jest to maszyna oprogramowanie, które symuluje co robi prawdziwa maszyna. Podobnie jak prawdziwe maszyny ma on architekturę instruction set, wirtualną architekturę komputera i model wykonania. Jest w stanie uruchomić kod napisany za pomocą tego wirtualnego zestawu instrukcji, podobnie jak prawdziwa maszyna może uruchamiać kod maszynowy.
HotSpot to implementacja koncepcji JVM, pierwotnie opracowanej przez Sun i obecnie należącej do Oracle. Istnieją inne implementacje specyfikacji JVM, takie jak JRockit, IBM J9, spośród wielu innych.
Zobacz List of Java Virtual Machine Implementations
OpenJDK to projekt, w ramach którego implementacja opensource z HotSpot (i wiele innych rzeczy, np kompilatora Apis JDK, etc) jest rozwijany.
OpenJDK (Open Java Development Kit) jest wolna i otwarta implementacja źródło platformy Java Standard Edition (Java SE) .Powierzchnia openjdk to projekt rozpoczęty przez Sun Microsystems, obecnie obchodzi przez wiele firm i społeczności do zbudowania pakietu Java Development Kit całkowicie w otwartym kodzie źródłowym. Zgodnie z official documentation.
OpenJDK to open-source implementacja specyfikacji Java Platform, Standard Edition (Java SE). W maju 2007 roku Sun wydała w pełni możliwą do kompilacji wersję Java Development Kit (JDK) dla Java SE dla Społeczności OpenJDK jako wolne oprogramowanie na licencji GNU General Public License w wersji drugiej (GPLv2). Sun ogłosił Tymczasową Radę Zarządzającą dla społeczności OpenJDK. Firma Sun ogłosiła również, że wdrożenia oparte na OpenJDK mogą korzystać z zestawu kompatybilności technicznej Java SE 6 (JCK) w celu zapewnienia zgodności ze specyfikacją Java SE 6.
projekt OpenJDK składa się z kilku komponentów - HotSpot (urządzenie wirtualne), Class Library Java i Java javac compiler.For więcej na ten temat, odwiedź jego site.
Obecna maszyna JVM firmy Sun/Oracle nosi nazwę HotSpot, ponieważ szuka gorących punktów użycia w kodzie (miejsca, w których kod jest intensywniej używany) do optymalizacji "just-in-time". Począwszy od wikipedia, HotSpot, wydany jako "Java HotSpot Performance Engine" jest wirtualną maszyną Java dla komputerów stacjonarnych i serwerów, obsługiwaną i dystrybuowaną przez Oracle Corporation.
Hotspot jest, jak wspomniano powyżej, wieloplatformową implementacją koncepcji wirtualnej maszyny Java (JVM) i jest dystrybuowany za pomocą OpenJDK (Java Developer Kit) na licencji GNU General Public Licence. HotSpot jest napisany głównie w C++ i pierwotnie został opracowany pod Sun Microsystems. Obecnie jest rozwijany w ramach projektu OpenJDK na stronie www.java.net. HotSpot JVM był dostępny jako dodatek do Java 1.2, a później był używany jako domyślna Sun JVM w Javie 1.3. JVM jest obecnie w wersji 7, Build b147 i ma za sobą aktywną społeczność programistów.
Aby uzyskać więcej informacji goto: https://www.java.net/
Szczęśliwy Coding!
JVM to maszyna abstrakcyjna (specyfikacja). HotSpot, OpenJDK i JRockit i tak są implementacjami JVM.
wolne i otwarte implementacje
HotSpot, podstawowym referencyjna implementacja Java VM
OpenJDK - Otwórz Java Development Kit jest wolna i otwarta implementacja źródło na licencji GNU General Public License (GNU GPL) z wyjątkiem łączenia .
Proprietary implementacje
dłużej implementations
link wyjaśnia różnice między HotSpot i JRocket
HotSpot jest zaawansowaną formą hakowania w C++, aby móc z niej korzystać, musisz skompilować ją w celu skompilowania nawet najprostszych rzeczy. O ile nie dostroisz kompilatorów i nie napiszesz ich od początku. HotSpot jest w zasadzie sposobem na konwersję kodu źródłowego na kod C++, a następnie skompilowanie go do kodu natywnego, a więc skompilowany termin jit.
Słyszałem, że OpenJDK używa również HotSpot do wykonywania kodu? Czy to prawda? – Justin
@TheNewIdiot, więc mówisz, że HotSpot jest częścią OpenJDK? Czy jest też zastrzeżony HotSpot, jak sugeruje powyższa odpowiedź? – Pacerier
@NINC, więc Hotspot jest częścią OracleJDK i OpenJDK? Hotspot = JRockit = OracleJDK = OpenJDK? – Pacerier