|
Article in other languages:
|
Wine(ワイン)は、オープンソースのWindows API実装を通じて、主としてx86アーキテクチャ上のUnix系OSにおいてMicrosoft Windows用アプリケーションをネイティブ動作させることを目標とするプログラム群である。 X Window Systemを利用して、16ビット・32ビット・64ビットWindows向けGUIアプリケーションを動作させることができるほか、MS-DOS用アプリケーションも動作する。x86上のLinux環境を中心に開発されているので、Solaris・FreeBSD・Mac OS Xなど、他のOSにも移植されているが、それらの環境下では問題が発生する可能性は比較的高いことに注意されたい。原理上、カーネルレベルのスレッドに対応しているOSであることが必要。[1] 名称は、もともとは頭字語であることを意識して、大文字でWINEと表記していたことがあったが、現在は単にWineと表記するのが正式[2]。"WINdows Emulator"に由来すると説明されることもあるが、Wine Is Not an Emulatorに由来するという、一見してそれとは矛盾する説明がなされることもあり、これは技術的理由による。詳しくは後述する。 ライセンスにLGPLを採用している[3]、フリーソフトウェアである。
概要
Wine 上の Media Player Classic バージョン 6.4.8.3
Wine以外でLinux上でWindowsアプリケーションを動作させる方法としては、XenやVMwareなど、仮想マシンを構築するものが代表的である。Wineはそれらとは異なり、互換レイヤーとして動作する。つまり、Windowsプログラムが要求するDLLの代替品を供給し、またWindows NTカーネルのプロセスを再現することによって、Windowsプログラムをネイティブ動作させる。簡単に言えば、WineはLinux上でWindowsを動作させているのではなく、LinuxにWindowsと同じ挙動をさせているのである。したがってWineでWindowsプログラムを動作させる上でWindows OSは必要ではない[4]。ただし、Wineのエミュレーションライブラリが不完全な場合にはWindowsのDLLを利用することで解決できる場合がある[5]。 ところで、Wineという名称は"Wine" Is Not an Emulator(和訳:「Wineはエミュレータではない」)を略した再帰的頭字語であるとも説明される[6]。DOSBoxやzsnesのような典型的なエミュレータと異なり、Wineは基本的にはCPUエミュレーションを行っていない。そのため通常この種のエミュレータに発生する、オリジナル環境と比べた著しいパフォーマンス低下がWineには見られない。このことを強調する開発者の立場から、そのような説明がなされる。実際、アプリケーションによってはWindows上より高速にWine上で動作することもあるという[7]。同じく基本的にはCPUエミュレーションを行わない、ネイティブ仮想マシンと比べても、そのような実行速度は優れたものである。しかし、その代償としてプロジェクト規模が巨大化したWineは、人的資源の不足のため本来実装されるべき機能が依然として完全には提供されていない[8]。そのため再現性は仮想マシン上にインストールしたWindowsと比べて大きく劣るので、Windowsを性能面で上回るWindowsアプリケーション実行環境としての潜在的な可能性にもかかわらず、高速化よりはむしろ再現性の向上を第一の目標として開発されている。 Wineに含まれるWindows API実装はWinelibと呼ばれ、これを用いてWindowsプログラムのソースコードからプラットフォームネイティブなバイナリ(実行ファイルやDLL)をビルドすることも可能である。しかしながら、x86環境では付属するバイナリローダー(wineコマンド)からコンパイル済みバイナリを起動すればよく、実用上は実行速度にも大きな差はない。非x86環境でWindowsバイナリを実行するためには、QEMUなどをCPUエミュレータとして利用可能[9]だが、低速である。 歴史サン・マイクロシステムズのPWI (Public Windows Initiative) やWabi[10](Windows APIのパブリックドメインソフトウェアによる完全代替を目指したもの)の影響を受け、ボブ・アムスタッドとエリック・ヤングデイルによりWindowsアプリケーションをLinux上で動作させることを目的としてWineプロジェクトは1993年にネットニュース上で創始された[11]。当初はWindows 3.1用(16ビット)アプリケーションに主眼を置いたが、現在は32ビット中心に開発されている。1994年以降はアレクサンダー・ジュリアードがプロジェクトリーダーを務めている[12]。 プロジェクトは困難を極め、なかなか互換性が高まらなかった。特に1990年代は、日本語環境においてアプリケーションが思うように動かせない状況が続き、Wineのインストールや動作にもそれなりのスキルが必要とされていた。 Wineプロジェクトに着目したコーレルなどの支援によって一時的に状況は好転したが、マイクロソフトのコーレルへの大規模投資が原因となって、この支援は中止された[13]。 現在はCodeWeaversがジュリアードらを雇っている[12]。また、GoogleはLinux版PicasaでWineを利用し、Wineの開発を支援している[14]。 最初のベータ版となったバージョン0.9は2005年10月25日にリリースされ、最初のリリース候補版 (1.0-rc1) は2008年5月9日にリリースされた。2008年6月17日には Wine 1.0 がリリースされた[15]。 対応アプリケーションWine における Windows アプリケーションの動作状態は Wine アプリケーションデータベース (AppDB) で調べることができる。Wine AppDB では Wine ユーザからの動作報告がデータベース化されており、アプリケーションが動作状況の良い順に「Platinum」、「Gold」、「Silver」、「Bronze」、「Garbage」で格付けされている[16]。一般に Wine のバージョン毎に格付けが変わる。 Wine 1.0 で
がリリース基準に使われた[17]こともあり、Wine 1.0 ではこれらのアプリケーションが問題なく動作すると報告されている[18][19][20][21]。 付属プログラムWine には wine コマンドを中心として様々なプログラムやツールが含まれている[22]。
コマンドプロンプト (cmd)、メモ帳 (notepad)、タスクマネージャ (taskmgr)、マインスイーパ (winemine) やワードパッド (wordpad) なども含まれている。コマンドラインから起動する場合、cmd、taskmgr や wordpad など一部のプログラムについては、wine コマンドの引数としてプログラム名を指定して起動する。例えば、ワードパッドを起動するには $ wine wordpad と入力する。 ディレクトリWine やアプリケーションの EXE ファイルやレジストリなどはホームディレクトリ内の .wine ディレクトリ下に保存される。保存先は環境変数 WINEPREFIX を設定することで変更できる[23]。かつて Wine の設定ファイルとして config というファイルがあったが、2005年に廃止され[24]現在は拡張子が reg のファイルに設定が保存されるようになっている。 アプリケーションのデスクトップエントリファイルやアイコンなどはホームディレクトリ下の
にインストールされる[25]。これらのディレクトリにインストールされるファイルは GNOME や KDE などでメニューに使われる。 Wineに似た他のプロジェクト
Wine 用のツール
脚注注釈
出典
外部リンク
Questions for article: |
|||||||||||||||||||||||||||
This article is from Wikipedia. All text is available under the terms of the GNU Free Documentation License.
IHS Europe: Infrared Heating Systems for Home and Business.