WINE,全称为 Wine 不是一个模拟器,从技术上讲是一种软件翻译层。它能让在 FreeBSD(和其他)系统上安装和运行为 Windows®编写的软件。
通过拦截系统调用,或软件对操作系统的请求,并将它们从 Windows®调用转换为 FreeBSD 理解的调用来运行。它还根据需要翻译任何响应为 Windows®软件所期望的形式。因此在某种程度上,它模拟了一个 Windows®环境,因为它提供了许多 Windows®应用程序所期望的资源。
然而,从传统意义上讲,它并不是一个模拟器。许多这些解决方案通过构建一个完全独立的计算机,使用软件进程代替硬件来运行。虚拟化(例如由模拟器/qemu 提供的)是以这种方式运作的。这种方法的好处之一是能够将问题的完整版本安装到模拟器中。这意味着环境对应用程序的外观与真实机器没有任何区别,并且一切都有可能正常工作。这种方法的缺点在于,在软件作为硬件的情况下,速度本质上比实际硬件慢。在软件中构建的计算机(称为客户机)需要来自真实机器(主机)的资源,并且在其运行时将这些资源占用。
另一方面,WINE 项目对系统资源要求较低。它将在运行时转换系统调用,因此虽然很难做到像一个真实的 Windows®计算机那样快速,但它可以非常接近。另一方面,WINE 正在努力跟上一个不断变化的目标,涉及到需要支持的所有不同的系统调用和其他功能。因此可能会有一些应用程序在 WINE 上无法按预期工作,根本无法工作,或甚至无法安装。
在一天结束时,WINE 提供了尝试在 FreeBSD 上运行特定 Windows®软件程序的另一种选择。如果成功,它总是可以作为第一选项,为用户提供良好的体验而不会不必要地耗尽主机 FreeBSD 系统的资源。
本章将说明:
如何在 FreeBSD 系统上安装 WINE。
WINE 的操作方式,以及它与其他替代方案(如虚拟化)的区别。
如何调整 WINE 以满足某些应用程序的特定需求。
如何为 WINE 安装 GUI 助手。
在 FreeBSD 上使用 WINE 的常见提示和解决方案。
在多用户环境下考虑在 FreeBSD 上使用 WINE 的注意事项。
在阅读本章之前,了解以下内容将会很有用:
了解 UNIX®和 FreeBSD 的基础知识。
知道如何安装 FreeBSD。
知道如何设置网络连接。
知道如何安装额外的第三方软件。