DotGNU
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2025/02/12 07:25 UTC 版)
![]() |
この記事の出典や参考文献は、一次資料や記事主題の関係者による情報源に頼っています。
|
開発元 | Rhys Weatherly (Southern Storm Software Pty), Klaus Treichel, Thong Nguyen, Gopal V, Norbert Bollow |
---|---|
最新版 |
0.8.0 / 2007年3月20日
|
プログラミング 言語 |
C, C# |
対応OS | Linux, BSD, Mac OS X, Solaris, AIX, Microsoft Windowsなど |
サポート状況 | 終了 |
種別 | プラットフォーム |
ライセンス | GPL, LGPL |
公式サイト | www |
DotGNUは2001年1月に開始され、Microsoft.NET Frameworkの代替を提供することを目的としていたGNUプロジェクトの自由ソフトウェアである。プロジェクトは廃止された[1]。DotGNUプロジェクトはフリーソフトウェア財団によって運営されていた。プロジェクトのその他の目標は、Windows以外のプラットフォームのサポート向上と、より多くのプロセッサのサポートである。
DotGNUプロジェクトのコードベースの主な目標は、100%共通言語仕様(CLS)に準拠したクラスライブラリを提供することであった。
主なプロジェクト
Portable.NET
ECMA-335共通言語基盤(CLI)の実装であるDotGNU Portable.NETには、.NET基本クラスライブラリ、XML、およびWindows Formsを使用するVisual Basic .NET、C#、C言語アプリケーションをコンパイルして実行するためのソフトウェアが含まれている。Portable.NETは、x86、PowerPC、ARM、SPARCを含むさまざまな命令セットアーキテクチャをサポートすると主張している。
DGEE
DotGNU Execution Environment (DGEE)はWebサービスのサーバーである。
libJIT
libJITは、仮想マシン実装、動的プログラミング言語、スクリプト言語における高度な実行時コンパイルの開発のための実行時コンパイルライブラリである。変数が静的単一代入形式で保持される3番地コードに基づく中間表現を実装する。
libJITは、GNU Emacs[2][3]、ILDJIT[4]、HornetsEye[5] などの他のオープンソースプロジェクトでも使用されている。
フレームワークアーキテクチャ

ポータブル.NETクラスライブラリは、アプリケーション開発のための機能を提供することを目的としている。これらは主にC#で記述されているが、共通言語仕様により任意の.NET言語で使用できる。.NETと同様に、クラスライブラリは名前空間とアセンブリで構成されている。また、アクセシビリティやDotGNUなどの追加の最上位名前空間がある[6]。通常の操作では、ポータブル.NETコンパイラがECMA-335の第6章で指定されているように共通言語仕様(CLS)イメージを生成し、ポータブル.NETランタイムがこのイメージを取得して実行する。
自由ソフトウェア
DotGNUは自由ソフトウェアであることを強調し、Microsoft WindowsのGUIコードの呼び出しなど、DotGNUのあらゆる側面がプロプライエタリなコンポーネントへの依存を最小限に抑えることを目指している。DotGNUは2007年7月31日から2008年10月2日まで、最優先度の自由ソフトウェアプロジェクトの1つであった[7][8][要説明]。
DotGNUとマイクロソフトの特許
![]() |
この記事には参考文献や外部リンクの一覧が含まれていますが、脚注による参照が不十分であるため、情報源が依然不明確です。
|
DotGNUの.NETスタックのコンポーネントのうち、標準化のためにECMAに提出されていないコンポーネントの実装は、プロジェクトの存続期間の大半にわたって特許侵害の懸念の原因となってきた。特に、Microsoftが特許訴訟を通じてDotGNUプロジェクトを破壊する可能性があるかどうかについて議論が交わされている。
ECMAに提出された基本テクノロジは問題がない可能性がある。懸念は主に、Microsoftが.NET Framework上で開発したテクノロジ(ASP.NET、ADO.NET、Windows Forms(標準化されていない名前空間を参照)など)、つまりDotGNUのWindows互換性スタックを構成する部分に関係している。これらのテクノロジは現在DotGNUに完全に実装されておらず、DotGNUアプリケーションの開発には必要ない。
2009年、MicrosoftはApache Licenseバージョン2.0で.NET Micro Frameworkをリリースした。これには特許付与が含まれている。ただし、.NET Micro FrameworkはCLRの再実装であり、組み込みデバイスで使用するための基本クラスライブラリの限定サブセットである。さらに、Apacheライセンスの特許付与は、.NET Micro Frameworkの貢献者とユーザーのみを保護し、DotGNUやMonoなどの代替実装のユーザーと開発者は保護しない。
2014年、MicrosoftはApacheライセンスの下で、次世代の公式Microsoft C#コンパイラであるRoslynをリリースした。その年の後半、Microsoftは公式.NET Frameworkの「リブート」を発表した。このフレームワークは.NET Coreをベースとし、MITライセンスの下でリリースされた公式ランタイムと標準ライブラリ、および.NET Coreに関するMicrosoft所有の特許から受取人を明示的に保護する特許付与が含まれている。
関連項目
- Mono – .NETの人気な自由ソフトウェア実装
- 共通言語ランタイム
- シェアードソース共通言語基盤
脚注
- ^ “DotGNU Project”. 2025年2月12日閲覧。 “As of December 2012, the DotGNU project has been decommissioned, until and unless a substantial new volunteer effort arises. The exception is the libjit component, which is now a separate libjit package.”
- ^ “Emacs Lisp JIT Compiler”. 2025年2月12日閲覧。
- ^ “Emacs.git - Emacs source repository”. 2025年2月12日閲覧。
- ^ [1]
- ^ [2]
- ^ “GNU Portable .NET documentation”. 2005年2月4日時点のオリジナルよりアーカイブ。2006年1月15日閲覧。
- ^ GNU High Priority Free Software Projects, FSF, (July 31, 2007), オリジナルのAugust 10, 2007時点におけるアーカイブ。
- ^ GNU High Priority Free Software Projects, FSF, (October 1, 2008), オリジナルのOctober 2, 2008時点におけるアーカイブ。
外部リンク
- DotGNUのページへのリンク