Wine 10.0がついにリリースされ、ARM64ECサポートが注目されています。このオープンソースプロジェクトは、WindowsアプリをLinuxやmacOSで実行可能にするための重要なツールとして広く利用されています。最近では、CrossOverやAppleのGame Porting Toolkit、SteamOSの背後にあるProtonなど、多くのプロジェクトがWineを基盤に構築されています。これに伴い、Wineプロジェクトへの注目が高まり、リソースも集まり、互換性が大幅に向上しています。
Wine 10.0では、約1年間にわたる開発を経て、6000以上の個別の変更が加えられました。主な新機能の一つがARM64ECのサポートです。これにより、開発者はARMおよびx86互換コードを混在させることが可能になります。つまり、ARMネイティブ版のアプリを作成している場合でも、特定のx86ベースのプラグインやアドオンを一度に全て移植することなく併用できるのです。さらに、Wine 10.0はARM64Xにも対応しており、ARM64ECコードを以前のARM64コードと混合することが可能です。
ただし、WineのARM64ECサポートには制限があります。リリースノートによると、システムページサイズが4Kである必要があり、これはWindows ABIの要件です。これに対して、一部のLinuxディストリビューションではパフォーマンス向上のためにデフォルトで16Kページサイズを採用していることが多いです。例えば、Asahi LinuxはApple Silicon MacへのLinux移行を進めており、16Kページサイズを標準としているため、互換性に影響を与える可能性があります。
Wine 10.0の他の新機能には、高DPIディスプレイの改善が含まれており、非DPI対応アプリウィンドウの自動スケーリングが向上しています。また、デスクトップコントロールパネルのアプレットによって、Wineで動作するアプリの仮想ディスプレイの設定が管理できるようになりました。Direct3D機能のサポートも改善され、Vulkanレンダラーはゲームのスタッタリングを減少させるための改善が行われています。
近年、WindowsがARMプロセッサでの動作を強化し、Windows 11ではコンパイラー、カーネル、スケジューラが大幅に改良されていることから、ARM環境でのWineの価値はさらに高まりました。Microsoftは、Snapdragonチップを搭載したSurface ProやSurface Laptopを主要製品として市場に投入することで、ARM版Windowsのエコシステムを拡大しています。これに伴い、多くのアプリ開発者はARMネイティブ版のアプリをリリースするようになり、ChromeやPhotoshop、Dropboxなどの広く使用されるアプリも含まれています。これは、WineプロジェクトがARM64ECのサポートをこのタイミングで優先した理由でもあります。
結論として、Wine 10.0のリリースは、特にARMアプリのWindows互換性において重要な一歩となります。Linux環境でのWindowsアプリの利用を促進し、今後のLinux上のアプリエコシステムにおいて大きな影響を与えることでしょう。開発者たちは、この進展を機に新しいアイデアを生み出し、多様なプラットフォーム間でのアプリ利用がさらに広がることが期待されます。