JIT (informatyka)

Z Wikipedii, wolnej encyklopedii
Przejdź do nawigacji Przejdź do wyszukiwania

JIT (ang. just-in-time compilation) – metoda wykonywania programów komputerowych polegająca na ich kompilacji do kodu maszynowego bezpośrednio przed wykonaniem danego fragmentu kodu.

Język wysokiego poziomu (autokod) – typ języka programowania, którego składnia i słowa kluczowe mają maksymalnie ułatwić rozumienie kodu programu dla człowieka, tym samym zwiększając poziom abstrakcji i dystansując się od sprzętowych niuansów. Kod napisany w języku wysokiego poziomu nie jest bezpośrednio „zrozumiały” dla komputera – większość kodu stanowią tak naprawdę normalne słowa, np. w języku angielskim. Aby umożliwić wykonanie programu napisanego w tym języku należy dokonać procesu kompilacji.Definicja intuicyjna: Kod źródłowy to zapis programu komputerowego w formie czytelnej dla człowieka umożliwiający jego modyfikację i rozwój.

Cała procedura wygląda następująco:

  • kod źródłowy jest kompilowany do kodu pośredniego (bajtowego),
  • maszyna wirtualna przeprowadza kompilację kodu pośredniego do kodu maszynowego.
  • Kompilacja może odbywać się w momencie pierwszego dostępu do kodu znajdującego się w pliku z programem lub pierwszego wywołania danej funkcji (stąd nazwa just-in-time).

    Unix Time-Sharing System (pisane również jako UNIX, choć nie jest to skrót – nazwa „UNIX” jest kalamburem określenia Multics, który był wzorem dla Uniksa) – system operacyjny rozwijany od 1969 r. w Bell Labs (UNIX System Laboratories, USL) przez Dennisa Ritchie i Kena Thompsona. W latach 70. i 80. zdobył bardzo dużą popularność, co zaowocowało powstaniem wielu odmian i implementacji. Część z nich, w szczególności Linux oraz OS X, jest w użyciu do dziś. UNIX jest zarejestrowanym znakiem towarowym The Open Group.Common Language Runtime (z ang. Środowisko Uruchomieniowe Wspólnego Języka, w skrócie CLR) to środowisko uruchomieniowe dla platformy .NET, przewidziane do pracy na wielu systemach operacyjnych i maszynach, jak Microsoft Windows, Unix czy Macintosh. Jest to maszyna wirtualna, która wykonuje kod wyrażony w Common Intermediate Language (CIL). Specyfikacja Wspólnego Języka (z ang. Common Language Specification, w skrócie CLS) określa podzbiór CLR, który kompilatory powinny obsługiwać, aby być kompatybilnymi z językami .NET.

    JIT jest bardzo obiecującą techniką uruchamiania programów niezależnych od architektury systemu komputerowego. Zaawansowane systemy JIT potrafią wykonywać programy szybciej niż interpretery, unikając jednocześnie komplikacji związanych z realizacją pełnego cyklu kompilacji, linkowania itd.

    Kompilator – program służący do automatycznego tłumaczenia kodu napisanego w jednym języku (języku źródłowym) na równoważny kod w innym języku (języku wynikowym) . Proces ten nazywany jest kompilacją. W informatyce kompilatorem nazywa się najczęściej program do tłumaczenia kodu źródłowego w języku programowania na język maszynowy. Niektóre z nich tłumaczą najpierw do języka asemblera, a ten na język maszynowy jest tłumaczony przez asembler..NET Framework, w skrócie .NET (wym. dot net) – platforma programistyczna opracowana przez Microsoft, obejmująca środowisko uruchomieniowe (Common Language Runtime – CLR) oraz biblioteki klas dostarczające standardowej funkcjonalności dla aplikacji. Technologia ta nie jest związana z żadnym konkretnym językiem programowania, a programy mogą być pisane w jednym z wielu języków – na przykład C++/CLI, C#, F#, J#, Delphi 8 dla .NET, Visual Basic .NET. Zadaniem platformy .NET Framework jest zarządzanie różnymi elementami systemu: kodem aplikacji, pamięcią i zabezpieczeniami.

    Główną konkurencją dla techniki JIT jest popularna na systemach uniksowych metoda rozpowszechniania źródeł, które dopiero na docelowej maszynie zostają skompilowane. W metodzie rozpowszechniania źródeł, kompilacja pomimo tego, że trwa stosunkowo długo i jest skomplikowanym, a niekiedy zawodnym procesem, jest wykonywana tylko raz. W efekcie tego, że program jest skompilowany do poziomu kodu maszynowego, uzyskuje się z reguły większą wydajność działania programu wynikowego.

    Wirtualna maszyna Javy (ang. Java Virtual Machine, w skrócie JVM) – maszyna wirtualna oraz środowisko zdolne do wykonywania kodu bajtowego Javy. Według szacunków różnych firm i autorów publikacji, liczba urządzeń wyposażonych w JVM wynosi od 3 do 10 miliardów, w tym 1 miliard komputerów, a liczba programistów tworzących oprogramowanie na tę platformę – od 6,5 do 9 milionów.Oprogramowanie (ang. software) – całość informacji w postaci zestawu instrukcji, zaimplementowanych interfejsów i zintegrowanych danych przeznaczonych dla komputera do realizacji wyznaczonych celów. Celem oprogramowania jest przetwarzanie danych w określonym przez twórcę zakresie. Oprogramowanie to dział informatyki. Oprogramowanie jest synonimem terminów program komputerowy oraz aplikacja, przy czym stosuje się go zazwyczaj do określania większych programów oraz ich zbiorów.

    JIT jest używany głównie przez maszyny wirtualne Javy oraz środowisko uruchomieniowe .NET CLR.

    Zobacz też[ | edytuj kod]

  • język wysokiego poziomu




  • Warto wiedzieć że... beta

    Język maszynowy (kod maszynowy) – język programowania, w którym zapis programu wymaga instrukcji bezpośrednio jako liczb, które są rozkazami i danymi bezpośrednio pobieranymi przez procesor wykonujący ten program.

    Reklama