「Mono」を編集中
この編集を取り消せます。 下記の差分を確認して、本当に取り消していいか検証してください。よろしければ変更を保存して取り消しを完了してください。
最新版 | 編集中の文章 | ||
1行目: | 1行目: | ||
− | '''Mono'''(モノ)は、GNOMEプロジェクト創設者の[[ミゲル・デ・イカザ]]が開発した、Ecma標準に準じた[[.NET Framework]] | + | '''Mono'''(モノ)は、GNOMEプロジェクト創設者の[[ミゲル・デ・イカザ]]が開発した、Ecma標準に準じた[[.NET Framework]]互換の環境を実現するためのオープンソースソフトウェア群、またそのプロジェクト名である。 |
現在は[[Xamarin]]社が開発、販売、サポート業務を行っている。 | 現在は[[Xamarin]]社が開発、販売、サポート業務を行っている。 | ||
9行目: | 9行目: | ||
その他にも、特定プラットフォーム向けに特化したサブプロジェクトも存在する。 | その他にも、特定プラットフォーム向けに特化したサブプロジェクトも存在する。 | ||
− | |||
− | |||
− | |||
* [[MonoTouch]] - [[iPhone]]や[[iPad]]、[[iPod touch]]といった[[iOS]]での動作をサポートしている。 | * [[MonoTouch]] - [[iPhone]]や[[iPad]]、[[iPod touch]]といった[[iOS]]での動作をサポートしている。 | ||
* [[MonoMac]] - [[MonoTouch]]の技術を応用し、Mac OS Xへのネイティブ対応を行う。 | * [[MonoMac]] - [[MonoTouch]]の技術を応用し、Mac OS Xへのネイティブ対応を行う。 | ||
* [[Mono for Android]] - [[Android]]での動作をサポートしている。 | * [[Mono for Android]] - [[Android]]での動作をサポートしている。 | ||
− | |||
− | |||
− | |||
== プロジェクトの目標 == | == プロジェクトの目標 == | ||
25行目: | 19行目: | ||
== Monoランタイム == | == Monoランタイム == | ||
− | Monoのランタイム([[Mono Runtime Environment]])は多くの[[プロセッサ]]で動作する[[JITコンパイラ]] | + | Monoのランタイム([[Mono Runtime Environment]])は多くの[[プロセッサ]]で動作する[[JITコンパイラ]]を搭載している。JITコンパイラはアプリケーションの実行中に[[共通中間言語]]([[CIL]]) コードを[[ネイティブコード]]に変換し、それらをキャッシュする。実行前にネイティブコードに変換し、キャッシュしておくことも可能である。 |
− | + | JITコンパイラが対応するプロセッサはx86、SPARC、PowerPC、ARM、System/390(32および64ビット)、AMD64、IA-64、64ビットモードSPARCである。それ以外のシステムでは、ネイティブコードに変換するのではなくインタプリタによって逐次バイトコードが実行される。ほとんどの状況で、JITコンパイラによる方法は[[インタプリタ]]よりもパフォーマンスの点で勝っている。 | |
− | + | またマイクロソフト純正の[[.NET Framework]]ではサポートされていない[[SIMD]]への対応など、Mono独自の革新的な機能の取り込みも積極的に行われている。 | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
== 歴史 == | == 歴史 == | ||
− | 2000年12月にEcma Internationalにより[[.NET Framework]] | + | 2000年12月にEcma Internationalにより[[.NET Framework]]ドキュメントが公開されると、Monoプロジェクトの創始者である[[ミゲル・デ・イカザ]]は.NET技術に興味を魅かれた。バイトコードインタプリタを調べてみると、彼はメタデータに関する仕様が存在しないことに気がついた。 |
− | 2001年2月、彼は. | + | 2001年2月、彼は.NETメーリングリストにおいて不足している情報を公開するよう求め、同時に[[C Sharp|C#]]の習得のため、C#で書かれたC#コンパイラの開発に着手した。 |
− | + | 2001年4月、Ecma Internationalは不足していたファイル形式を公開し、デ・イカザは世界最大のGNOMEの祭典であるGUADEC(2001年4月6日~4月8日)において彼の開発したC#コンパイラのデモンストレーションを行った(それは自分自身の解析が可能であった)。 | |
− | + | 同時期、GNOMEの事実上の開発母体であった[[Ximian]]社では、生産性を向上するためのツールを開発するための会議が内部的に行われていた。実現可能性の調査の結果、そのような技術は構築可能であるという結論に至り、Ximianは他のプロジェクトからスタッフを集め、Monoチームを結成した。しかしXimian内部だけで.NETと同等のものを作るには人材が不足していたため、Monoをオープンソースプロジェクトとした。これは2001年7月19日、オライリーカンファレンスによって発表された。 | |
それから3年近く経った2004年6月30日、Mono 1.0がリリースされた。 | それから3年近く経った2004年6月30日、Mono 1.0がリリースされた。 | ||
71行目: | 38行目: | ||
* 2009年12月15日 Mono 2.6がリリースされた。Mono 2.6では、[[Windows Communication Foundation]]や[[Low Level Virtual Machine]]などをサポートした。 | * 2009年12月15日 Mono 2.6がリリースされた。Mono 2.6では、[[Windows Communication Foundation]]や[[Low Level Virtual Machine]]などをサポートした。 | ||
* Mono 2.8でC#4.0がサポートされた。 | * Mono 2.8でC#4.0がサポートされた。 | ||
+ | * Mono 2.8.1でSystem.Text.Encodingにおいて日本語(Shift_JIS)がサポートされた。 | ||
== プロジェクト名の由来 == | == プロジェクト名の由来 == | ||
76行目: | 44行目: | ||
Mono FAQでは、名称の由来に関する質問に対して「我々は猿が好きなのです。」 (We like monkeys.) と回答している<ref>[http://www.mono-project.com/FAQ:_General "What does the name "Mono" mean?"] </ref>。 | Mono FAQでは、名称の由来に関する質問に対して「我々は猿が好きなのです。」 (We like monkeys.) と回答している<ref>[http://www.mono-project.com/FAQ:_General "What does the name "Mono" mean?"] </ref>。 | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
== 関連項目 == | == 関連項目 == | ||
115行目: | 56行目: | ||
== 参考文献 == | == 参考文献 == | ||
− | + | <references/> | |
{{stub}} | {{stub}} | ||
− | |||
− |