JIT

Just-in-time compilation (JIT) (также известна как dynamic translation) — компиляция «на лету» — это технология увеличения производительности программных систем, использующих байт-код, путём трансляции байт-кода в машинный код непосредственно во время работы программы. Таким образом достигается высокая скорость выполнения (сравнимая с компилируемыми языками) за счёт увеличения потребления памяти (для хранения результатов компиляции) и затрат времени на компиляцию. JIT базируется на двух более ранних идеях, касающихся среды исполнения: компиляции байт-кода и динамической компиляции.

В языках, компилирующихся в байт-код, таких как Lua, Perl, GNU CLISP или Java, исходный код транслируется в промежуточное представление, известное как байт-код. Байт-код не является машинным кодом какого-либо компьютера, и может портироваться на различные компьютерные архитектуры. Байт-код интерпретируется (исполняется) виртуальной машиной.

JIT используется в реализациях Java, Microsoft .NET. Языки Perl, Python и подобные имеют ограниченные или неполные JIT.

Проект DotGNU разрабатывает библиотеку libjit, которая должна предоставить возможность привнести JIT в любой скриптовой язык. Проекты LLVM и GNU Lightning также могут быть использованы для создания JIT.

См. также AOT.

Ссылки

 
Начальная страница  » 
А Б В Г Д Е Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ы Э Ю Я
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
0 1 2 3 4 5 6 7 8 9 Home