1. 程式人生 > >在linux 桌面環境中使用windows 應用

在linux 桌面環境中使用windows 應用

Linux環境中使用Windows 應用的思路

使用Linux作為平時的工作開發環境的最大問題是很難避免使用 Windows 平臺的各種軟體,比如 IE 和 QQ。在這種情況下如何更好的使用相關軟體就是比較重要的問題。
目前比較現實的思路有兩種,

  • 第一種,使用介面相容層保證應用程式執行上的相容,比較典型的Wine,但是存在的主要問題是效能較差而且很容易出現相容問題。
  • 第二種,是通過執行虛擬機器來執行 Windows 程式,比如VirtualBox、vmware、KVM等,這種方式對 Windows 程式相容比較好但更重要的是由於是在虛擬環境中使用需要考慮桌面的互動問題

實際使用的建議

  • Wine
    一些簡單的輕量級應用都可以使用 Wine 來執行,目前 Wine 版本已經到1.9.x 對大多數應用來說可以提供相對良好的相容性和效能,甚至可以執行部分遊戲,但是如果包含某些驅動保護的應用可能會導致比較嚴重的相容問題經常可見的種類有:
    • 微軟提供的 Office 和 IE。Office 系列理論上是可以比較好的執行在Wine上的,但是某些版本上會有針對 Wine 的檢測所以會導致不能正常執行,對於 IE Wine 倒是自帶了只是使用中非常卡頓不建議在 Wine 中使用
    • U盾類的應用,這類應用基本都會有驅動保護之類的功能,這種情況下很難保證能夠正常執行,大部分情況下都很難保證正常執行
    • QQ ,實際上QQ可以比較正常的執行在 Wine 環境中但是使用中經常會出現卡頓、突然崩潰、介面切換異常等問題,連帶 Linux 都會受到影響,所以使用的體驗很差
  • 虛擬機器
    • 使用上幾乎沒有感覺到有什麼相容的問題,可能最大的問題還是圖形。雖然目前主流虛擬機器都可以提供3D加速的支援但是使用上會對相關的驅動等因素有一定要求。
      除此之外虛擬機器基本上可以各種硬體有較好的相容,當然喜歡音樂的朋友還是別用這個,可能是軟音效卡的原因聲音質量比較差。
    • 虛擬機器的另一個問題是與桌面的互動,目前的解決方案有VBox的無痕方式、vmware 的 unity 模式、KVM 好像也有方案將虛擬機器的環境載入到主機桌面上。以上的方式都可以達到接近原生環境的效果說成驚豔也不為過,需要注意的是以上方式都需要在虛機上安裝相關驅動來支援相關功能。
    • 其他的功能支援包括 共享目錄、剪貼簿複製支援等,開啟後感覺基本沒有太大的使用差異,使用上非常愉悅。
  • 除了對系統桌面的支援另一個問題就是對系統托盤的支援,這種問題主要集中在 QQ 等最小化後到系統托盤中的應用。
    • Wine 的系統托盤主要是支援 Linux 中幾大桌面的托盤,比如gnome的就能支援的比較好,但是對 ubuntu 的 Unity 感覺完全無解,基本上想要 Linux 的原生托盤支援就放棄 Unity 比較好。
    • VBox 是直接將虛機的托盤作為無痕模式的一部分載入到桌面,目前看這個辦法非常聰明不會有各種離奇的相容問題,只是體驗上這個托盤比較容易被覆蓋到體驗一般
    • vmware 沒有提供系統托盤的功能,所以如果要使用的話就需要跟alltray配合使用,不過 vmware 提供了一個小巧的開始選單而且還不佔位置非常好用,這基本上也應該算是vmware在這塊的優點。只是目前 vmware 取消了 linux 版本下的 unity 模式,按照他們的說法是在 Linux 下相容的代價太大所以取消了該功能,真的是非常可惜

總結

由於 Wine 和各種虛擬機器的出現使得現在跨環境執行不同的應用成為可能,另一方面在 Windows 中使用 linux 也可以非常方便,甚至可以通過 XWindow 客戶端來使用。基本上可以視為無縫的呼叫了