Wine(Wine Is Not an Emulator)是一個能夠在多種相容 POSIX 介面的作業系統(諸如 Linux、macOS 與 BSD 等)上執行 Windows 應用的相容層。它不是像虛擬機器器或者模擬器一樣模仿內部的 Windows 邏輯,而是將 Windows API 呼叫翻譯成為動態的 POSIX 呼叫,免除了效能和其它一些行為的記憶體佔用,讓你能夠乾淨地整合 Windows 應用到桌面。
Wine 7.0 已經正式釋出,該版本中值得關注的更新內容包括:
PE 模組
- 除了少數例外,所有模組都可以用 PE 格式構建。
- 對於有關聯的 Unix 庫的 PE 模組,PE 部分和 Unix 部分之間的介面是通過標準的 NT 系統呼叫。
- 內建的 dlls 只有在磁碟上有相應的PE檔案時才被載入。
WoW64
- 實現了 64 位 Windows-on-Windows(WoW64)架構,並且支援在 64 位 Unix 主機程序中執行 32 位 Windows 應用程式。
- 大多數 Unix 庫都實現了 WoW64 thunks,使 32 位 PE 模組可以呼叫 64 位的 Unix 庫。
主題
- Wine 中包含了一個 "Light" 主題,有 "Blue" 和 "Classic Blue" 兩個顏色變體。
- 所有的 Common Controls 都支援主題化,並在主題改變時自動重新整理。
- 所有內建的應用程式都支援主題化,以及高 DPI 渲染。
圖形
- 有一個新的 Win32u 庫實現了核心方面的圖形和視窗管理支援。
- Vulkan 驅動支援升級到 Vulkan 規範的 1.2.201 版本。
- 對 Direct2D 效果的一些初步支援已經實現。
- Direct2D API 支援 ID2D1MultiThread 介面。
- WindowsCodecs 支援對 WMP(Windows Media Photo)格式的影象進行解碼,以及將影象編碼為 DDS(DirectDraw Surface)格式。
- WindowsCodecs 不再支援將影象編碼為 macOS ICNS 格式。
Direct3D
- 對 Wine Direct3D 實現的 Vulkan 渲染器進行了各種改進。
- Direct3D 12 支援 1.1 版本的根簽名。
- 下列額外的顯示卡會被 Direct3D 顯示卡資料庫所識別:
- AMD Radeon RX 5500M
- AMD Radeon RX 6800/6800 XT/6900 XT
- AMD Van Gogh
- 英特爾 UHD Graphics 630
- Nvidia GT 1030
- ……
D3DX
- 對 D3DX 效果框架的第 10 版的支援有了很大的改進。
- D3DX 10 支援 Windows Media Photo(JPEG XR)影象檔案格式。
- 各種 D3DX10 紋理建立函數(
D3DX10CreateTextureFromMemory()
及其變體)被實現。 - 增加了 ID3DX10Sprite 介面的部分實現。
- 增加了 ID3DX10Font 介面的部分實現。
音訊/視訊
- DirectShow 和 Media Foundation GStreamer 被統一到一個單一的後端,使其更容易實現新的媒體解碼 API。
- Windows Media 的非同步和同步閱讀器物件是基於 WineGStreamer 後端實現的。
- Media Foundation 的支援更加完整
- QuickTime 解碼器庫(wineqtdecoder)被移除,GStreamer 是 macOS 上所有內建多媒體編解碼器所需的。
文字和字型
- Font Set 物件是在 DirectWrite 中實現的。
- TextHost 介面已在 RichEdit 中正確實現。
國際化
- 統一碼字元表是基於 14.0.0 版本。
- 時區資料被更新,基於來自 Olson 和 Unicode CLDR 資料庫的資訊。
- 720(阿拉伯語、波斯語和烏爾都語)和 20949(韓文)程式碼段得到支援。
- 支援 sr-Latn-RS 區劃。
……
更多詳情可檢視: