Wine (ワイン)は、オープンソースの Windows API 実装を通じて、主としてx86アーキテクチャ上のUnix系オペレーティングシステム (OS) においてWindows用アプリケーションをネイティブ動作させることを目標とするプログラム群である。X Window Systemを利用して、16ビット・32ビット・64ビットWindows向けGUIアプリケーションを動作させることができるほか、MS-DOS用アプリケーションも動作する。x86上のLinux環境を中心に開発されているので、Solaris 、FreeBSD 、OS Xなど、他のOSにも移植されているが、それらの環境下では問題が発生する可能性は比較的高い。原理上、カーネルレベルのスレッドに対応しているOSであることが必要である。名称は、もともとは頭字語であることを意識して、大文字でWINEと表記していたことがあったが、現在はWineと表記するのが正式である。"WINdows Emulator" に由来すると説明されることもあるが、Wine Is Not an Emulator に由来するという、一見してジョークとも取れる、前者とは矛盾する説明がなされることもあり、これは技術的理由による。詳しくは後述する。ライセンスにLGPLを採用している。フリーソフトウェアである。かつてはBSDライセンスを採用していた。Wine以外にLinux上でWindowsアプリケーションを動作させる方法としては、XenやVMwareなど、仮想マシンを構築するものが代表的である。Wineはそれらとは異なり、互換レイヤーとして動作する。つまり、Windowsプログラムが要求するDLLの代替品を供給し、また Windows NTカーネルのプロセスを再現することによって、Windowsプログラムをネイティブ動作させる。簡単に言えばWineは、Linux上でWindowsを動作させているのではなく、LinuxにWindowsと同じ挙動をさせているのである。したがってWineでWindowsプログラムを動作させる上では、Windowsのコピーもライセンスも必要ではない。ただし、Wineのエミュレーションライブラリが不完全な場合にはWindowsのDLLを利用することで解決できる場合があるが、その場合にはWineを動作させるコンピュータにWindowsのコピーとライセンスが必要である。ところで、Wineという名称は "Wine" Is Not an Emulator を略した再帰的頭字語であるとも説明される。DOSBoxやzsnesのような典型的なエミュレータと異なり、Wineは基本的にはCPUエミュレーションを行っていない。そのため通常この種のエミュレータに発生する、オリジナル環境と比べた著しいパフォーマンス低下がWineには見られない。このことを強調する開発者の立場から、そのような説明がなされる。実際、アプリケーションによってはWindows上より高速に動作することもあるという。同じく基本的にはCPUエミュレーションを行わない、x86上の仮想マシンにインストールしたWindows環境と比べても、そのような実行速度は優れたものである。しかし、その代償としてプロジェクト規模が巨大化したWineは、人的資源の不足のため本来実装されるべき機能が依然として完全には提供されていない。そのため再現性は仮想マシン上にインストールしたWindowsと比べて大きく劣る。高速化よりはむしろ再現性の向上を第一の目標として開発されている。 なお、ドライバはカーネルモードでの実行が必要であるため、サポートされない。Wineに含まれるWindows API実装はWinelibと呼ばれ、これを用いてWindowsプログラムのソースコードからプラットフォームネイティブなバイナリ(実行ファイルやDLL)をビルドすることも可能である。しかしながら、x86環境では付属するバイナリローダー(wineコマンド)からコンパイル済みバイナリを起動すればよく、実用上は実行速度にも大きな差はない。非x86環境でWindowsバイナリを実行するためには、QEMUなどをCPUエミュレータとして利用可能だが、低速である。サン・マイクロシステムズのPWI (Public Windows Initiative) やWabi(Windows API のパブリックドメインソフトウェアによる完全代替を目指したもの)の影響を受け、ボブ・アムスタッドとエリック・ヤングデイルによりWindowsアプリケーションをLinux上で動作させることを目的としてWineプロジェクトは1993年にネットニュース上で創始された。当初はWindows 3.1用(16 ビット)アプリケーションに主眼を置いたが、現在は 32ビット中心に開発されている。1994年以降はアレクサンダー・ジュリアードがプロジェクトリーダーを務めている。プロジェクトは困難を極め、なかなか互換性が高まらなかった。特に 1990年代は、日本語環境においてアプリケーションが思うように動かせない状況が続き、Wineのインストールや動作にもそれなりのスキルが必要とされていた。Wineプロジェクトに着目したコーレルなどの支援によって一時的に状況は好転したが、マイクロソフトのコーレルへの大規模投資が原因となって、この支援は中止された。現在はCodeWeaversがジュリアードらを雇っている。また、GoogleはLinux版PicasaでWineを利用し、Wineの開発を支援している。最初のベータ版となったバージョン 0.9 は 2005年10月25日にリリースされ、最初のリリース候補版 (1.0-rc1) は 2008年5月9日にリリースされた。2008年6月17日にはWine 1.0がリリースされた。2010年5月21日Wine 1.2のリリース候補版 (1.2-rc1) がリリースされ、2010年7月16日、Wine 1.2がリリースされた。2012年3月7日には、Wine 1.4がリリースされた。2014年5月現在のWineのバージョンは安定版1.6.2、ベータ版1.7.18である。なお、Wine1.8のリリースはバグ 17273が修正され次第発表される予定である。WineにおけるWindowsアプリケーションの動作状態は Wine アプリケーションデータベース (AppDB) で調べることができる。Wine AppDBではWineユーザからの動作報告がデータベース化されており、アプリケーションが動作状況の良い順に "Platinum"、"Gold"、"Silver"、"Bronze"、"Garbage" で格付けされている。一般にWineのバージョン毎に格付けが変わる。Wine 1.0でがリリース基準に使われたこともあり、Wine 1.0ではこれらのアプリケーションが問題なく動作すると報告されている。補足しておくと、WineにDirectXのランタイムをインストールするのは非推奨である。これはDirectXが直接ハードウェアをコントロールすることがあるため、Windowsそのものが存在しているわけではないWine環境においては、CPUやGPUといったハードウェアを破壊しかねない可能性があるためである。また、Wineが搭載しているDirectX 9のランタイムで大抵のアプリケーションは動く。Wineには"wine"コマンドを中心として様々なプログラムやツールが含まれている。コマンドプロンプト (cmd)、メモ帳 (notepad)、タスクマネージャ (taskmgr)、マインスイーパ (winemine) やワードパッド (wordpad) コントロールパネル (control) なども含まれている。コマンドラインから起動する場合、cmd、taskmgr、wordpad、controlなど一部のプログラムについては、wineコマンドの引数としてプログラム名を指定して起動する。例えば、ワードパッドを起動するには仮想端末からと入力する。なお $ は Bash 等のシェルにおけるプロンプトである。Wine ToolsはWineに含まれるツール群である。これらはWindows型実行可能ファイルではなく、PerlやC言語などで記述されたUnixネイティブプログラムである。WineやアプリケーションのEXEファイルやレジストリなどはホームディレクトリ内の.wineディレクトリ下に保存される。保存先は環境変数WINEPREFIXを設定することで変更できる。かつてWineの設定ファイルとしてconfigというファイルがあったが、2005年に廃止され現在は拡張子がregのファイルに設定が保存されるようになっている。アプリケーションのデスクトップエントリファイルやアイコンなどはホームディレクトリ下のにインストールされる。これらのディレクトリにインストールされるファイルはGNOMEやKDEなどでメニューに使われる。Wineは環境変数WINEDEBUGを使用することで、様々なデバッグが行える。構文
出典:wikipedia
LINEスタンプ制作に興味がある場合は、
下記よりスタンプファクトリーのホームページをご覧ください。