プロジェクトをハングオーバーして、ARM64でWindowsアプリケーションを起動します

ワイン-Android-featured-image

ワインプロジェクト開発者のStefanDösingerとAndréHentschel ハングオーバーエミュレータの最初の公開バージョンを発表しました、 その 32ビットおよび64ビットのWindowsアプリケーションを実行できます x86およびx86_64アーキテクチャ用に設計されています ARM64アーキテクチャ(Aarch64)に基づくLinuxおよびAndroid環境。

システムコールレベルでエミュレーションモードでQEMUを使用して(メインシステムと同じカーネルを使用して)最小限のシステム環境でWineを実行するのとは異なります。

二日酔いエミュレータについて

プロジェクト 二日酔いにより、ユーザーは大幅に高いパフォーマンスを得ることができます。 このプロジェクトの加速 エミュレーションレイヤーをWin32 / Win64APIレベルに転送することで実現されます。 それらに基づくWin32 / Win64 APIのポストエミュレーションを使用して、通常のシステムコールをエミュレートする代わりに。
現在、このプロジェクトでは、ユーザーはWin64およびWin32APIを使用する単純なアプリケーションとゲームのみを実行できます。

Linuxの場合、Direct3Dのサポートが実装されていますが、WineでのOpenGL ESのサポートが不完全なため、Androidではまだ利用できません。

デバッガーのサポートは存在せず、例外処理には既知のバグがあります。 これらの理由により、コピー防止システムとチート防止システムは、通常のバージョンのWineよりも悪い状態になる可能性があります。

一般に、64ビットアプリケーションは、データ構造が必要ないため、32ビットアプリケーションよりも良好な状態であることが期待できます。
作業を保証するために、Wineの定期的なインストールが使用され、さまざまなライブラリとDLLレイヤーが追加されています。
Linux環境では、QEMUがWineディレクトリ( "C:\ x86 \ qemu-x86_64.exe.so")にある場合、Windowsアプリケーションは自動的に実行されます。

一方、Androidでは、cmdユーティリティを使用して実行することをお勧めします。
4GB未満の各アドレスを予約する場合、アドレス空間は4GBに制限されます。

ほとんどの主要なWineライブラリは、以前は4GBを超えてロードされていました 上記のスペースを可能な限り4GB未満に保つため。 これの欠点は、新しいプロセスの開始に約2秒かかることです。

ワイン-4.0

ARM64のワインを二日酔い

Wineは各プロセスを64ビットプロセスと見なすため、WoW64レイヤーはアクティブではありません。 これは、純粋な32ビットまたは純粋な64ビットアプリケーションでは正常に機能しますが、たとえば、C:\ windows \ system32とC:\ windows \ syswow64の区別を期待する混合アプリケーションでは問題が発生します。

32ビット(x86)Windowsアプリケーションのリリースに関して、 アプリケーションとWineの間で送信される構造の翻訳レベルで処理されます (Windows上のLLP64モデルは、32ビットと64ビットのWinAPI間のフレームワークの基本的な互換性を維持します)。

32ビットのWindowsアプリケーションを実行するには、64ビットのWineアセンブリが使用され、各プロセスは最初に64ビットとして扱われます。

ホスト側では、ARM64およびx86_64アーキテクチャーのみがサポートされていますが、コードが統合されているため、プロジェクトをバイト順に他のアーキテクチャーに最も古いものから最も古いもの(リトルエンディアン)に簡単に移動できます。

磨くべきことがまだたくさんあります

現時点での二日酔いのパフォーマンスには、まだまだ多くの要望があります。 e以来主なボトルネックは、QEMUが生成するコードのパフォーマンスです。

しかし、 Android NvidiaShieldを搭載したTVデバイスで実行している場合。 パフォーマンスは2000年代からゲームを実行するのに十分です。

二日酔いでテストされたアプリケーションは次のとおりです。 Notepad ++、ANNO 1602、Age of Wonders、Warhammer 40k:Dawn of War、The Settlers II 10th Anniversary、Prince of Persia 3D、Worms 2、WormsArmageddon。 DirectX 9 SDKの例も、許容可能な速度で実行されます。

このリリースは、Hangover4.0バージョン番号に反映されているWine0.4.0ベースコードに基づいています。 エミュレーションレイヤーはQEMUプロジェクトに基づいています。


コメントを残す

あなたのメールアドレスが公開されることはありません。 必須フィールドには付いています *

*

*

  1. データの責任者:AB Internet Networks 2008 SL
  2. データの目的:SPAMの制御、コメント管理。
  3. 正当化:あなたの同意
  4. データの伝達:法的義務がある場合を除き、データが第三者に伝達されることはありません。
  5. データストレージ:Occentus Networks(EU)がホストするデータベース
  6. 権利:いつでも情報を制限、回復、削除できます。