wine是模拟器还是兼容性层?


8

昨天,我与一位朋友(Windows用户)进行了热烈讨论。他说Wine只是一个模拟器。我说没有Wine被读为“ Wine不是模拟器”。然后他给了我很多链接,包括WineHQ的wiki页面。那里写着“酒不是那种模拟器”。

所以我想问一下Wine是不是一个模拟器,为什么它称自己为“ Wine不是一个模拟器”?


7
葡萄酒代表“ w ^ INE 小号ñ OT的è mulator”。

1
让他阅读“葡萄酒不是那种模拟器”标题下的内容。
奥维维

清楚地写着“ Wine不做任何CPU仿真-故名“ Wine不是仿真器。””
Oxwivi,2011年

Wine不是那种模拟器,但是还是某种模拟器?Wine不执行任何CPU仿真,那么Wine可以仿真什么?
浦那

它仅模拟Windows 。因此,可以模拟来自软件的API调用,而不会模拟其余的软件代码,它可以本地运行。
MestreLion,2011年

Answers:


14

Windows中的程序大量使用了属于Microsoft Windows的标准库。这些库是在Wine中重写并实现的,因此它们的作用大致相同。程序编写得越好,标准库越多,该程序在Wine中运行的机会就越大。

首先检查程序代码是否调用Windows库。这些调用经过翻译,以便调用Wine的库。然后,程序代码将全速执行。没有仿真代码,但仅翻译对库的调用。

因此,从理论上讲。程序的运行速度应与Microsoft Windows一样快。在实践中,程序可能会变慢,因为翻译是进行的。但是有可能程序运行得更快,因为Wine的库更简单,并且在Linux中磁盘访问通常更快。

因为Linux使用OpenGL,所以使用OpenGL的Windows程序通常可以在Wine中正常工作。Linux不使用DirectX-但是,DirectX游戏可以在Wine中使用,因为Wine可以将DirectX调用转换为OpenGL调用。


4
结论:Wine是兼容层,而不是模拟器。
Marco Ceppi

4

通过与您所指向的链接相同的链接“ Wine不执行任何CPU仿真”,这就是仿真器通常所做的(wii,psx,n64等)

要获得更完整的答案,您可以阅读所提供链接的第一段-我认为没有人可以用更好的方式对其进行解释。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.