Przejdź do zawartości

Wirtualna maszyna Javy: Różnice pomiędzy wersjami

Z Wikipedii, wolnej encyklopedii
[wersja przejrzana][wersja przejrzana]
Usunięta treść Dodana treść
Poprawki gramatyczne
Linia 1: Linia 1:
'''Wirtualna maszyna Javy''' ([[język angielski|ang.]] ''Java Virtual Machine'', w skrócie '''''JVM''''') to niezależny od platformy system uruchomieniowy dla [[Oprogramowanie|programów]]. Standardowo służy programom napisanym w [[język programowania|języku]] [[Java]], ale można go używać także jako [[środowisko uruchomieniowe]] także dla innych języków, np. [[Jython]] to implementacja [[Python]]a właśnie na JVM.
'''Wirtualna maszyna Javy''' ([[język angielski|ang.]] ''Java Virtual Machine'', w skrócie '''''JVM''''') to niezależny od platformy system uruchomieniowy dla [[Oprogramowanie|programów]]. Standardowo służy programom napisanym w [[język programowania|języku]] [[Java]], ale można go używać także jako [[środowisko uruchomieniowe]] także dla innych języków, np. [[Jython]] to implementacja [[Python]]a właśnie na JVM.


Programy napisane dla maszyny wirtualnej Javy są niezależne od platformy dzięki temu, że uruchamiane są bezpośrednio w JVM (po konwersji na [[Kod bajtowy|kod pośredni]], poprzez kompilator jak [[javac]] dla programów [[Java|Javy]] lub [[JIT (informatyka)|w locie]] jak dla wspomnianego wyżej Jythona), a nie w rodzimym środowisku. Można je uruchomić na dowolnym [[komputer]]ze i [[system operacyjny|systemie operacyjnym]] na które istnieje JVM. Poza tym można je uruchamiać przez klasyczną [[Kompilator|kompilację]] [[kod źródłowy|kodu źródłowego]] do [[kod maszynowy|maszynowego]], umożliwia to na przykład [[kompilator]] [[GCJ]] z pakietu [[GNU Compiler Collection|GCC]].
Programy napisane dla maszyny wirtualnej Javy są niezależne od platformy dzięki temu, że uruchamiane są bezpośrednio w JVM (po konwersji na [[Kod bajtowy|kod pośredni]], poprzez kompilator jak [[javac]] dla programów [[Java|Javy]] lub [[JIT (informatyka)|w locie]] jak dla wspomnianego wyżej Jythona), a nie w rodzimym środowisku. Można je uruchomić na dowolnym [[komputer]]ze i [[system operacyjny|systemie operacyjnym]] na którym istnieje JVM. Poza tym można je uruchamiać przez klasyczną [[Kompilator|kompilację]] [[kod źródłowy|kodu źródłowego]] do [[kod maszynowy|maszynowego]], umożliwia to na przykład [[kompilator]] [[GCJ]] z pakietu [[GNU Compiler Collection|GCC]].


[[Maszyna wirtualna|Wirtualna maszyna]] Javy jest dostępna dla wielu platform. Istnieją różne jej [[implementacja|implementacje]], zwykle będące częścią całego pakietu narzędzi Javy, oraz samodzielne projekty jak na przykład [[JikesRVM]], [[Kaffe]], [[SableVM]] czy [[CACAO]], które zazwyczaj dla swojego działania korzystają z zestawu standardowych [[biblioteka (informatyka)|bibliotek]] Javy [[GNU Classpath]]. [[Sun Microsystems]], firma która stworzyła język Java, wraz z pakietem [[Java Runtime Environment]] dostarcza maszynę wirtualną. Od wersji 1.3 domyślną maszyną wirtualną jest [[HotSpot]].
[[Maszyna wirtualna|Wirtualna maszyna]] Javy jest dostępna dla wielu platform. Istnieją różne jej [[implementacja|implementacje]], zwykle będące częścią całego pakietu narzędzi Javy, oraz samodzielne projekty jak na przykład [[JikesRVM]], [[Kaffe]], [[SableVM]] czy [[CACAO]], które zazwyczaj dla swojego działania korzystają z zestawu standardowych [[biblioteka (informatyka)|bibliotek]] Javy [[GNU Classpath]]. [[Sun Microsystems]], firma która stworzyła język Java, wraz z pakietem [[Java Runtime Environment]] dostarcza maszynę wirtualną. Od wersji 1.3 domyślną maszyną wirtualną jest [[HotSpot]].

Wersja z 08:27, 20 sie 2009

Wirtualna maszyna Javy (ang. Java Virtual Machine, w skrócie JVM) to niezależny od platformy system uruchomieniowy dla programów. Standardowo służy programom napisanym w języku Java, ale można go używać także jako środowisko uruchomieniowe także dla innych języków, np. Jython to implementacja Pythona właśnie na JVM.

Programy napisane dla maszyny wirtualnej Javy są niezależne od platformy dzięki temu, że uruchamiane są bezpośrednio w JVM (po konwersji na kod pośredni, poprzez kompilator jak javac dla programów Javy lub w locie jak dla wspomnianego wyżej Jythona), a nie w rodzimym środowisku. Można je uruchomić na dowolnym komputerze i systemie operacyjnym na którym istnieje JVM. Poza tym można je uruchamiać przez klasyczną kompilację kodu źródłowego do maszynowego, umożliwia to na przykład kompilator GCJ z pakietu GCC.

Wirtualna maszyna Javy jest dostępna dla wielu platform. Istnieją różne jej implementacje, zwykle będące częścią całego pakietu narzędzi Javy, oraz samodzielne projekty jak na przykład JikesRVM, Kaffe, SableVM czy CACAO, które zazwyczaj dla swojego działania korzystają z zestawu standardowych bibliotek Javy GNU Classpath. Sun Microsystems, firma która stworzyła język Java, wraz z pakietem Java Runtime Environment dostarcza maszynę wirtualną. Od wersji 1.3 domyślną maszyną wirtualną jest HotSpot.

Starsze wersje maszyn wirtualnych miały problemy z wydajnością. Działo się tak, ponieważ maszyny były interpreterami kodu pośredniego języka Java. Obecne implementacje maszyn wirtualnych stosują kompilację kodu pośredniego do kodu maszynowego w trakcie uruchomienia (just-in-time compilation). Dzięki zastosowaniu tej technologii nowoczesne maszyny wirtualne niewiele ustępują wydajnością powszechnie używanym kompilatorom innych języków.

Zobacz też