Kaffe

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск
Kaffe
Тип

Виртуальная машина Java

Написана на

C и Java

Операционная система

Unix-like

Последняя версия

1.1.9 (26 февраля 2008)

Лицензия

GNU General Public License

Сайт

http://www.kaffe.org/

Kaffe — реализация виртуальной машины Java, созданная по методологии «чистой комнаты». Она поставляется с Java SE-подмножеством Java API и инструментами, необходимыми для обеспечения среды исполнения Java. Как и многие другие свободные виртуальные машины Java, Kaffe использует GNU Classpath в качестве библиотеки классов.

Каффе, впервые выпущенная в 1996 году, была первой свободной реализацией Java. Первоначально разрабываемая в рамках другого проекта, она стала настолько популярной, что разработчики Тим Уилкинсон и Петр Мехлиц основали Transvirtual Technologies, Inc. с Kaffe в качестве флагманского продукта компании. В июле 1998 Transvirtual выпустила Kaffe OpenVM под GNU General Public License. Сейчас она разрабатывается командой программистов со всего мира. Помимо списка рассылки, с разработчиками можно связаться по IRC (канал #kaffe сервера irc.freenode.net).

Kaffe является легковесной и переносимой виртуальной машиной, хотя она значительно медленнее чем коммерческие реализации.[1] По сравнению с эталонной реализацией виртуальной машины Java, написанной Sun Microsystems, Kaffe значительно меньше; это делает её привлекательной для разработчиков встраиваемых систем. Он поставляется с JIT-компиляторами для многих микроархитектур, и в целом портирована на более 70 платформ. Она работает на разных устройствах, от встраиваемых устройств SuperH до мейнфреймов IBM zSeries, и даже на PlayStation 2.

В отличие от других реализаций, ранее Kaffe использовала библиотеку GMP для поддержки вычислений с плавающей точкой. Эта функция была удалена из версии 1.1.9, что вызвало протесты от людей, утверждавших, что они использовали Kaffe исключительно из-за того, что вычисления с использованием GMP производились быстрее, чем в обычной чистой реализации Java, доступной в других дистрибутивах[2]. Возможность была удалена для сокращения работ по сопровождению, ожидая что все заинтересованные люди интегрируют поддержку GMP в GNU Classpath или OpenJDK. Впоследствии GNU Classpath представил поддержку GMP в версии 0.98.

См. также[править | править вики-текст]

Примечания[править | править вики-текст]

Ссылки[править | править вики-текст]