Wineプロジェクトは2012年3月7日、オープンソースのWindows互換レイヤーソフト「Wine」のバージョン1.4を公開した。バージョン1.2以来、1年8カ月ぶりのバージョンアップとなる。

 Wineは、LinuxやFreeBSD、SolarisなどのUNIX系OS上でWindowsアプリケーションを動かすためのソフトだ。OSにWindows互換機能を追加し、Windowsアプリケーションをそのまま動作させるもの。具体的には、アプリケーションからのWindows APIの呼び出しをWineが提供するライブラリの処理に置き換えている(図1)。仮想的なPC環境上でWindows(ゲストOS)を動かす仮想化ソフトとは異なる。エミュレーションではなく、Wineは“Wine Is Not an Emulator”の略でもある。

図1 互換レイヤー方式と仮想PC方式との比較
[画像のクリックで拡大表示]

 このため、すべてのアプリケーションが動作するわけではないが、動作するものは徐々に増えている。現在では、Webブラウザー「Internet Explorer」やオフィスソフト「MS Office」 、写真編集ソフト「Adobe PhotoShop」や各種ゲームなど、多くのアプリケーションの動作が報告されている。公式サイトのデータベースにユーザーからの動作報告が登録されており、2012年3月中旬時点では1万8000件を超えている。

 Wineの開発は1993年に開始され、当初はWindows 3.1のWin16 APIを対象としていた。その後ターゲットをWin32に変更し、2008年6月に最初の安定版であるバージョン1.0が登場した。現在はWin64 APIへの対応も進められている。Wineのバージョンは奇数が開発版、偶数が安定版とされており、バージョン1.4は1.0以降、1.2に続く2回目の安定版リリースとなる。3月16日には次期リリースに向けた開発版としてWine 1.5が早くも公開されている。

Wine 1.4の変更点

 約1年半ぶりのバージョンアップとなるWine 1.4だが、主に安定性や互換性の向上を目的とした改善が図られている。主な変更点としては、(1)Microsoft Office 2010(32ビット版)などの新しいアプリケーションへの対応、(2)日本語の縦書きをサポート、(3)新しいDIBグラフィックスエンジンの搭載、などが挙げられる。

【DIB】 デバイス独立ビットマップ。画像データとともにカラーパレットを格納してデバイスに非依存としたビットマップのこと。

 Office 2010は、前バージョンではインストールさえできなかったが、今回、初めて動作可能になった。「Microsoft Word 2010」で日本語の縦書きも試してみると、カーソルの挙動にやや不具合があるものの縦書き自体はうまくいった(写真1)。「一太郎」でも可能だ。ただ、秀丸エディタでは正しく表示されないなど、アプリケーションによっては対応しない場合がある。

写真1 Ubuntu 11.10とWine 1.4でOffice 2010を起動したところ
左下のウィンドウはWineの環境設定画面
[画像のクリックで拡大表示]

 DIBグラフィックスエンジンの改良では、2DゲームなどDIBを多用するアプリケーションの性能や再現性の向上が見込める。「東方Project」と呼ぶゲームソフト群が動作するとWine 1.4の変更履歴に示されていたため、試してみた(写真2)。実際、正常に画面表示されるようになっている。

写真2 東方Projectのゲーム「東方神霊廟」をWine 1.4で起動した画面
[画像のクリックで拡大表示]

 なお、3Dグラフィックスを処理するためのAPI「Direct3D」の対応は現状バージョン9までとなる。バージョン10の実装は開発途上であるため、Direct3D 10/11を必要とする最新3Dゲームは動作しない。

 このほか、Windows VistaのAPIモデルを基に書き直されたオーディオスタックなど、前バージョンから1万6000点もの修正が施されているという。以前のバージョンを試してみて、お目当てのアプリケーションが動作せずWineの使用をあきらめたユーザーも、再度試してみる価値は十分にあるだろう。

 ただし、Wineでは周辺機器が基本的にサポートされないため、ICカードリーダーやTVチューナーなど、特殊なハードウエアを使用するアプリケーションは動作しない。プリンターはサポートされているが、Windows用のプリンタードライバは使用できないため、Linuxから印刷できるように設定されていることが前提となる。