葡萄酒项目开发商StefanDösinger和AndréHentschel 宣布了Hangover仿真器的第一个公开版本, 该 允许运行32位和64位Windows应用程序 设计用于x86和x86_64体系结构 在基于ARM64架构(Aarch64)的Linux和Android环境中。
与在系统调用级别(使用与主系统相同的内核)的仿真模式下使用QEMU在最小的系统环境下运行Wine有所不同。
关于宿醉模拟器
萨尔瓦多PROYECTO 宿醉使用户能够拥有更高的性能。 这个项目的加速 通过将仿真层转移到Win32 / Win64 API级别来实现, 而不是使用基于Win32 / Win64 API的后期仿真来仿真常规系统调用。
当前,该项目仅允许用户运行使用Win64和Win32 API的简单应用程序和游戏。
对于Linux,已经实现了对Direct3D的支持,由于Wine中对OpenGL ES的不完全支持,Android尚不支持DirectXNUMXD。
调试器支持不存在,并且异常处理具有已知的错误。 由于这些原因,复制保护和反作弊系统的状态可能会比常规版本的Wine差。
通常,由于不需要数据结构,因此可以期望64位应用程序比32位应用程序具有更好的状态。
为了保证工作正常,使用了Wine的常规安装,并补充了各种库和DLL层。
在Linux环境中,当QEMU位于Wine目录(“ C:\ x86 \ qemu-x86_64.exe.so”)中时,Windows应用程序将自动运行。
而在Android上,建议使用cmd实用程序执行执行。
保留低于4GB的每个地址时,地址空间限制为4GB。
大多数主要的Wine库先前都已加载超过4GB 将以上空间尽可能地保持在4 GB以下。 不利的一面是开始一个新的过程大约需要2秒钟。
为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 Nvidia Shield TV设备上运行时。 该性能足以运行2000年代的游戏。
在Hangover测试的应用程序包括 记事本++,ANNO 1602,奇迹时代,战锤40k:战争黎明,定居者II 10周年,波斯王子3D,蠕虫2和蠕虫大决战。 DirectX 9 SDK示例也以可接受的速度运行。
该版本基于Wine 4.0基本代码,该代码反映在Hangover 0.4.0版本号中。 仿真层基于QEMU项目。
成为第一个发表评论