Эта статья или раздел нуждается в переработке. |
Jazelle — семейство технологий, разработанных и продвигаемых компанией ARM, предназначенных для аппаратного ускорения выполнения приложений, написанных на языке Java. Jazelle разработана для архитектуры ARMv5TEJ[1], и первым процессором, использующим технологию Jazelle, был ARM926EJ-S[2]. Доступность технологии Jazelle в названии процессора обозначается буквой 'J', за исключением моделей, для которых данная технология является неотъемлемой частью архитектуры.
В настоящее время на рынке присутствует разновидность Jazelle DBX (сокр. от англ. Direct Bytecode eXecution — прямое выполнение байт-кода). Основным элементом этой технологии является специальный сопроцессор, встраиваемый в стандартную архитектуру микропроцессоров ARM9 . Сопроцессор аппаратно преобразует байт-код Java в соответствующую последовательность команд основного процессора, который немедленно их выполняет. Таким образом программная интерпретация байт-кодов заменяется аппаратной, что приводит к существенному ускорению обработки байт-кодов, и как следствие, ускорению выполнения программ на Java. Другими словами, Jazelle DBX производит аппаратное преобразование байт-кодов в команды основного процессора «на лету». Отсюда и название DBX — «динамическое выполнение».
В июне 2005 года компания ARM анонсировала новое поколение технологии под названием Jazelle RCT (сокр. от англ. Runtime Compiler Target — поддержка динамических компиляторов). Jazelle RCT вводит дополнительный набор инструкций в стандартную архитектуру процессоров ARM. Новые команды специально разработаны для оптимального выполнения Java байт-кода. Таким образом, простой компилятор может быстро преобразовать байт-код в команды основного процессора, при этом эффективно используя новые типы команд. В большинстве случаев каждому байт-коду будет соответствовать единственная 16-разрядная команда из нового набора. В результате сгенерированный код будет иметь практически тот же размер, что и исходный байт-код, но будет выполняться аппаратно и, следовательно, намного быстрее.
Особенностями технологии RCT могут воспользоваться, прежде всего, разработчики так называемых динамических компиляторов (Just-In-Time Compilers), поскольку преобразование байт-кода в набор команд RCT может быть выполнено очень быстро, и результирующий код не будет требовать излишне большой памяти для хранения. Набор команд RCT не привязан жёстко к языку Java и может использоваться для компиляции байт-кодов прочих интерпретируемых языков, таких как Perl, Python, а также языков, поддерживаемых технологией .NET фирмы Microsoft.
Расширение Jazelle использует низкоуровневый бинарный перевод, выполненный в виде дополнительной ступени между выборкой и декодированием этапа инструкций процессора pipeline. Опознанный байт-код преобразуется в строку из одного или более родных инструкций ARM.
Данная страница на сайте WikiSort.ru содержит текст со страницы сайта "Википедия".
Если Вы хотите её отредактировать, то можете сделать это на странице редактирования в Википедии.
Если сделанные Вами правки не будут кем-нибудь удалены, то через несколько дней они появятся на сайте WikiSort.ru .