DotGNU
DotGNU — проект организации Free Software Foundation (FSF) по созданию аналога платформы Microsoft .NET на базе свободного программного обеспечения, часть проекта GNU Project.
DotGNU | |
---|---|
Тип | набор инструментальных средств |
Разработчик | Открытое программное обеспечение |
Написана на | C#, С |
Операционная система | Кроссплатформенное программное обеспечение |
Последняя версия | 0.8.0 (2007-03) |
Лицензия | GNU LGPL или GNU GPL с необязательным исключением |
Сайт | dotgnu.org |
Целью DotGNU является предоставление разработчикам возможности использования множества языков программирования, как это реализовано в .NET. Но сейчас поддерживается только C# и ограниченно Visual Basic .NET, C и C++.
Состав
правитьDotGNU состоит из трёх основных частей:
- DotGNU Portable.NET — базовый пакет, включающий в себя runtime среду Common Language Infrastructure (CLI) «ilrun», компиляторы языков C# и ANSI C, библиотеки классов, в том числе System.Windows.Forms. Данная реализация System.Windows.Forms от DotGNU не использует сторонних библиотек вроде Gtk, Qt и не зависит от Wine. Portable.NET поддерживает широкий спектр операционных систем (GNU/Linux, различные BSD, Mac OS X, Solaris, AIX) и аппаратных архитектур (x86, PPC, ARM, PA-RISC, s390, IA-64, Alpha, MIPS, SPARC).
- phpGroupWare[англ.] — многопользовательский GroupWare-пакет, содержащий обширный набор веб-сервисов, доступных по протоколу XML-RPC, которые могут быть использованы в приложениях.
- DGEE (DotGNU Execution Environment) — сервер для поддержки веб-сервисов.
Библиотека libjit для компиляции во время выполнения
правитьlibJIT — открытая библиотека для компиляции во время выполнения (англ. Just In Time, JIT), созданная Ризом Визерли (англ. Rhys Weatherley) и Норбертом Боллоу (англ. Norbert Bollow) в рамках проекта DotGNU для реализации CLI Portable.NET. В настоящее время libjit разрабатывается Кириллом Кононенко, Алексеем Демаковым, Клаусом Трейчелом. JIT является составной частью таких технологий, как Java и Microsoft .NET, и позволяет существенно повысить скорость работы приложений. В отличие от своих аналогов, libjit не накладывает ограничений на язык программирования или формат байт-кода. Достаточное внимание уделено также переносимости libjit на разные архитектуры. Если вы используете библиотеку на платформе, для которой ещё не реализована компиляция в машинный код, libjit автоматически переходит в режим интерпретатора.
См. также
правитьЛитература
править- Кристиан Нейгел, Билл Ивьен, Джей Глинн, Карли Уотсон, Морган Скиннер. C# 2005 и платформа .NET 3.0 для профессионалов = Professional C# 2005 with .NET 3.0. — М.: «Диалектика», 2007. — ISBN 978-5-8459-1317-3.
Ссылки
править- DotGNU Project (англ.). — официальная страница проекта. Дата обращения: 6 марта 2009. Архивировано 12 февраля 2012 года.
- Libjit Linear Scan Project (англ.). — страница ветви libjit linear scan. Дата обращения: 10 апреля 2009. Архивировано 12 февраля 2012 года.
- Материалы научных сессий и конференций