Kaffe
Kaffe | |
---|---|
Тип | Виртуальная машина Java |
Написана на | C и Java |
Операционная система | Unix-like |
Последняя версия | 1.1.9 (26 февраля 2008) |
Тестовая версия |
|
Репозиторий | github.com/kaffe/kaffe |
Лицензия | GNU General Public License |
Сайт | kaffe.org |
Kaffe — реализация виртуальной машины Java, созданная по методологии «чистой комнаты». Она поставляется с Java SE-подмножеством Java API и инструментами, необходимыми для обеспечения среды исполнения Java. Как и многие другие свободные виртуальные машины Java, Kaffe использует GNU Classpath в качестве библиотеки классов.
Kaffe, впервые выпущенная в 1996 году, была первой свободной реализацией Java. Первоначально разрабатываемая в рамках другого проекта, она стала настолько популярной, что разработчики Тим Уилкинсон и Петр Мехлиц основали Transvirtual Technologies, Inc. с Kaffe в качестве флагманского продукта компании. В июле 1998 Transvirtual выпустила Kaffe OpenVM под GNU General Public License. Сейчас она разрабатывается командой программистов со всего мира. Помимо списка рассылки, с разработчиками можно связаться по IRC (канал #kaffe сервера irc.freenode.net).
Kaffe является легковесной и переносимой виртуальной машиной, хотя она значительно медленнее, чем коммерческие реализации[2]. По сравнению с эталонной реализацией виртуальной машины Java, написанной Sun Microsystems, Kaffe значительно меньше; это делает её привлекательной для разработчиков встраиваемых систем. Она поставляется с JIT-компиляторами для многих микроархитектур, и в целом портирована на более, чем 70 платформ. Она работает на разных устройствах, от встраиваемых устройств SuperH до мейнфреймов IBM zSeries, и даже на PlayStation 2.
В отличие от других реализаций, ранее Kaffe использовала библиотеку GMP для поддержки вычислений с плавающей точкой. Эта функция была удалена из версии 1.1.9, что вызвало протесты от людей, утверждавших, что они использовали Kaffe исключительно из-за того, что вычисления с использованием GMP производились быстрее, чем в обычной чистой реализации Java, доступной в других дистрибутивах[3]. Возможность была удалена для сокращения работ по сопровождению в ожидании, что все заинтересованные люди интегрируют поддержку GMP в GNU Classpath или OpenJDK. Впоследствии GNU Classpath представил поддержку GMP в версии 0.98.
См. также
[править | править код]Примечания
[править | править код]- ↑ README: Kaffe 1.1.10-pre
- ↑ Performance Comparison of Java/.NET Runtimes (Oct 2004) . Дата обращения: 8 июля 2010. Архивировано 8 июля 2010 года.
- ↑ [https://web.archive.org/web/20080720024837/https://www.mail-archive.com/kaffe@kaffe.org/msg13209.html Архивная копия от 20 июля 2008 на Wayback Machine Fwd: [kaffe] Removed GMP math?]
Ссылки
[править | править код]- kaffe.org — официальный сайт Kaffe
- Transvirtual Adopts Microsoft Java Extensions, October 1st, 1999 by Craig Knudsen Архивная копия от 14 сентября 2011 на Wayback Machine