Kev tso tawm ruaj khov ntawm Wine 7.0

Tom qab ib xyoos ntawm kev txhim kho thiab 30 qhov kev sim versions, qhov kev tso tawm ruaj khov ntawm kev qhib kev siv Win32 API tau nthuav tawm - Wine 7.0, uas suav nrog ntau dua 9100 kev hloov pauv. Cov kev ua tiav tseem ceeb ntawm cov ntawv tshiab suav nrog kev txhais lus ntawm Wine modules feem ntau rau hauv PE hom, kev txhawb nqa rau cov ntsiab lus, nthuav dav ntawm pawg rau kev sib tw thiab cov khoom siv nkag nrog HID interface, thiab kev siv WoW64 architecture rau khiav 32-ntsis cov kev pab cuam hauv ib qho 64-ntsis ib puag ncig.

Wine tau lees paub tag nrho cov haujlwm ntawm 5156 (ib xyoos dhau los 5049) cov kev pabcuam rau Windows, lwm 4312 (ib xyoos dhau los 4227) cov kev pabcuam ua haujlwm zoo nrog cov chaw ntxiv thiab DLLs sab nraud. 3813 cov kev pab cuam (3703 xyoo dhau los) muaj teeb meem kev ua haujlwm me me uas tsis cuam tshuam nrog kev siv lub luag haujlwm tseem ceeb ntawm cov ntawv thov.

Kev tsim kho tshiab tseem ceeb hauv Wine 7.0:

  • Module hauv PE hom
    • Yuav luag tag nrho cov DLLs tau hloov dua siab tshiab los siv PE (Portable Executable, siv rau ntawm Windows) executable file format es tsis yog ELF. Kev siv PE daws teeb meem nrog kev txhawb nqa ntau yam kev tiv thaiv daim ntawv pov thawj uas txheeb xyuas tus kheej ntawm cov txheej txheem ntawm lub disk thiab hauv lub cim xeeb.
    • Lub peev xwm los cuam tshuam PE modules nrog Unix cov tsev qiv ntawv siv tus qauv NT kernel system hu tau raug siv, uas tso cai rau koj los nkaum kev nkag mus rau Unix code los ntawm Windows debuggers thiab saib xyuas xov xwm sau npe.
    • Built-in DLLs tam sim no thauj khoom nkaus xwb yog tias muaj cov ntaub ntawv PE sib raug rau ntawm disk, tsis hais seb nws puas yog lub tsev qiv ntawv tiag tiag lossis lub pob tw. Qhov kev hloov pauv no tso cai rau daim ntawv thov kom pom qhov raug khi rau PE cov ntaub ntawv. Txhawm rau lov tes taw tus cwj pwm no, koj tuaj yeem siv WINEBOOTSTRAPMODE ib puag ncig hloov pauv.
  • lwj 64
    • WoW64 architecture (64-ntsis Windows-on-Windows) tau ua tiav, tso cai rau koj khiav 32-ntsis Windows daim ntawv thov hauv 64-ntsis Unix txheej txheem. Kev them nyiaj yug yog siv los ntawm kev sib txuas ntawm ib txheej uas txhais 32-ntsis NT system hu rau 64-ntsis hu rau NTDLL.
    • WoW64 txheej yog npaj rau Unix cov tsev qiv ntawv feem ntau thiab tso cai rau 32-ntsis PE modules nkag mus rau 64-ntsis Unix cov tsev qiv ntawv. Thaum tag nrho cov modules tau hloov dua siab tshiab rau PE hom, nws yuav muaj peev xwm khiav 32-ntsis Windows daim ntawv thov yam tsis tau txhim kho 32-ntsis Unix cov tsev qiv ntawv.
  • Ntxhais
    • Cov ntsiab lus txhawb tau raug siv. Cov qauv tsim "Lub Teeb", "Xiav" thiab "Classic Blue" suav nrog, uas tuaj yeem xaiv los ntawm WineCfg configurator.
    • Ntxiv lub peev xwm los kho cov tsos ntawm tag nrho cov interface tswj los ntawm cov ntxhais. Cov tsos ntawm cov ntsiab lus tau hloov kho tshiab tom qab hloov lub ntsiab lus tsim.
    • Cov ntsiab lus txhawb nqa tau ntxiv rau txhua daim ntawv thov Wine built-in. Cov ntawv thov tau raug hloov mus rau cov ntxaij vab tshaus nrog siab pixel ceev (High DPI).
  • Graphics subsystem
    • Ib lub tsev qiv ntawv Win32u tshiab tau raug ntxiv, uas suav nrog qee qhov ntawm GDI32 thiab USER32 cov tsev qiv ntawv cuam tshuam txog kev ua duab duab thiab kev tswj lub qhov rais ntawm qib kernel. Nyob rau hauv lub neej yav tom ntej, ua hauj lwm yuav pib ntawm porting tsav tsheb Cheebtsam xws li winex32.drv thiab winemac.drv rau Win11u.
    • Tus tsav tsheb Vulkan txhawb nqa Vulkan graphics API specification 1.2.201.
    • Muab kev txhawb nqa rau outputting hatched geometric khoom ntawm Direct2D API, nrog lub peev xwm los xyuas seb ib tug nias hits (ntaus-test).
    • Lub Direct2D API muab kev txhawb nqa thawj zaug rau kev pom kev pom siv siv ID2D1Effect interface.
    • Lub Direct2D API tau ntxiv kev txhawb nqa rau ID2D1MultiThread interface, uas yog siv los npaj tshwj xeeb rau kev nkag mus rau cov peev txheej hauv ntau cov ntawv thov.
    • Lub WindowsCodecs cov tsev qiv ntawv muab kev txhawb nqa rau kev txiav txim siab cov duab hauv WMP (Windows Media Photo) hom ntawv thiab encoding dluab hauv DDS (DirectDraw Surface) hom. Peb tsis txhawb encoding dluab nyob rau hauv ICNS hom (rau macOS), uas yog tsis txaus siab rau lub qhov rais.
  • Direct3D
    • Lub cav rendering tshiab tau txhim kho tau zoo, txhais Direct3D hu rau Vulkan graphics API. Hauv ntau lub sijhawm, theem kev txhawb nqa rau Direct3D 10 thiab 11 hauv Vulkan-raws li lub cav tau coj mus rau qhov sib luag nrog lub tshuab qub OpenGL. Txhawm rau ua kom lub Vulkan rendering engine, teeb tsa Direct3D npe sib txawv "renderer" rau "vulkan".
    • Ntau yam nta ntawm Direct3D 10 thiab 11 yog siv, suav nrog Cov Lus Qhia Deferred, cov khoom hauv lub xeev ua haujlwm hauv cov ntsiab lus ntawm cov cuab yeej, cov kev cuam tshuam tsis tu ncua hauv buffers, tshem tawm qhov kev txiav txim siab zoo nkauj, luam cov ntaub ntawv ntawm cov khoom siv hauv hom ntawv tsis zoo (DXGI_FORMAT_BC3_TYPELESS, DXGI_FORMAT_32B32L32AGG_FORMAT_32BXNUMX_XNUMXLXNUMXA) thiab lwm yam .
    • Ntxiv kev txhawb nqa rau ntau qhov kev teeb tsa, tso cai rau koj xaiv lub monitor los tso saib daim ntawv thov Direct3D hauv hom puv npo.
    • Lub DXGI API muab kev tshuaj ntsuam gamma kho, uas tuaj yeem siv los ntawm Direct3D 10 thiab 11 raws li daim ntawv thov los hloov lub teeb ci. Pab kom rov qab tau ntawm virtual framebuffers txee (SwapChain).
    • Direct3D 12 ntxiv kev txhawb nqa rau version 1.1 hauv paus kos npe.
    • Nyob rau hauv rendering code ntawm Vulkan API, qhov ua tau zoo ntawm cov lus nug ua tau zoo dua thaum lub kaw lus txhawb nqa VK_EXT_host_query_reset txuas ntxiv.
    • Ntxiv lub peev xwm los tso tawm virtual framebuffers (SwapChain) ntawm GDI yog tias OpenGL lossis Vulkan tsis tuaj yeem siv rau cov zaub, piv txwv li, thaum tso tawm rau lub qhov rais los ntawm cov txheej txheem sib txawv, piv txwv li, hauv cov haujlwm raws li CEF (Chromium Embedded Framework) lub moj khaum.
    • Thaum siv GLSL shader backend, tus hloov kho "precise" yog ua kom ntseeg tau rau cov lus qhia shader.
    • DirectDraw API ntxiv kev txhawb nqa rau 3D rendering rau hauv lub cim xeeb siv software xws li "RGB", "MMX" thiab "Ramp".
    • AMD Radeon RX 3M, AMD Radeon RX 5500/6800 XT/6800 XT, AMD Van Gogh, Intel UHD Graphics 6900 thiab NVIDIA GT 630 phaib tau ntxiv rau Direct1030D daim npav daim npav database.
    • Tus yuam sij "UseGLSL" tau raug tshem tawm ntawm HKEY_CURRENT_USER\Software\Wine\Direct3D npe, tsis yog, pib nrog Wine 5.0, koj yuav tsum siv "shader_backend".
    • Txhawm rau txhawb Direct3D 12, tam sim no koj xav tau yam tsawg kawg version 3 ntawm lub tsev qiv ntawv vkd1.2d.
  • D3DX
    • Qhov kev siv D3DX 10 tau txhim kho kev txhawb nqa rau lub teeb pom kev zoo thiab ntxiv kev txhawb nqa rau Windows Media Photo duab hom (JPEG XR)
    • Ntxiv kev ntxhib los mos tsim ua haujlwm muab hauv D3DX10, xws li D3DX10CreateTextureFromMemory().
    • Lub ID3DX10Sprite thiab ID3DX10Font software interfaces tau ua ib feem.
  • Suab thiab video
    • GStreamer add-ons rau DirectShow thiab Media Foundation lub moj khaum tau muab tso ua ke rau hauv ib qho ntawm WineGStreamer backend, uas yuav tsum ua kom yooj yim rau kev txhim kho cov ntsiab lus tshiab decoding APIs.
    • Raws li WineGStreamer backend, Windows Media cov khoom siv rau kev nyeem ntawv synchronous thiab asynchronous.
    • Kev siv ntawm Media Foundation lub moj khaum tau raug kho dua tshiab, kev txhawb nqa rau IMFPMediaPlayer kev ua haujlwm thiab tus qauv faib tau ntxiv, thiab kev txhawb nqa rau EVR thiab SAR rendering buffers tau raug txhim kho.
    • Lub tsev qiv ntawv wineqtdecoder, uas muab ib tug decoder rau lub QuickTime hom, tau raug tshem tawm (tag nrho cov codecs tam sim no siv GStreamer).
  • Cov khoom siv tswv yim
    • Cov pawg rau cov khoom siv tawm tswv yim uas txhawb nqa HID (Human Interface Devices) raws tu qauv tau txhim kho tau zoo, muab lub peev xwm xws li kev txheeb xyuas HID cov lus piav qhia, ua cov lus HID, thiab muab cov tsav tsheb mini-HID.
    • Hauv backends ntawm tus tsav tsheb winebus.sys, kev txhais cov lus piav qhia ntawm cov cuab yeej rau hauv HID cov lus tau raug txhim kho.
    • Ntxiv qhov tshiab DirectInput backend rau joysticks uas txhawb nqa HID raws tu qauv. Lub peev xwm los siv cov lus tawm tswv yim hauv cov joysticks tau ua tiav. Txhim kho joystick tswj vaj huam sib luag. Optimized sib cuam tshuam nrog XInput tau tshaj li. Hauv WinMM, kev txhawb nqa joystick tau tsiv mus rau DInput, tsis yog siv evdev backend ntawm Linux thiab IOHID ntawm macOS IOHID. Tus qub joystick tsav tsheb winejoystick.drv tau raug tshem tawm.
    • Cov kev ntsuam xyuas tshiab tau ntxiv rau DInput module, raws li kev siv cov cuab yeej virtual HID thiab tsis tas yuav siv lub cev.
  • Cov ntawv nyeem thiab fonts
    • Ntxiv Font Teeb khoom rau DirectWrite.
    • RichEdit raug siv rau TextHost interface.
  • Kernel (Windows Kernel Interfaces)
    • Thaum khiav cov ntaub ntawv uas tsis paub tseeb (xws li 'wine foo.msi') hauv Wine, start.exe yog tam sim no hu ua, uas invokes handlers txuam nrog hom ntaub ntawv.
    • Ntxiv kev txhawb nqa rau synchronization mechanisms NtAlertThreadByThreadId thiab NtWaitForAlertByThreadId, zoo ib yam li futexes hauv Linux.
    • Ntxiv kev txhawb nqa rau NT debug cov khoom siv los debug kernel functions.
    • Ntxiv kev txhawb nqa rau dynamic registry keys kom txuag tau cov ntaub ntawv kev ua tau zoo.
  • C Runtime
    • Lub C runtime siv tag nrho cov kev ua lej ntawm kev ua lej, uas yog nqa los ntawm Musl lub tsev qiv ntawv.
    • Txhua CPU platforms muab kev txhawb nqa kom raug rau cov dej ntws ntws.
  • Networking nta
    • Txhim kho hom kev sib raug zoo rau Internet Explorer 11 (IE11), uas tam sim no siv los ntawm lub neej ntawd rau kev ua cov ntaub ntawv HTML.
    • Lub tsev qiv ntawv mshtml siv ES6 JavaScript hom (ECMAScript 2015), uas muab kev txhawb nqa rau cov yam ntxwv xws li cov lus qhia thiab Daim Ntawv Qhia Khoom.
    • Kev teeb tsa ntawm MSI tej pob khoom nrog ntxiv rau lub cav Gecko rau hauv Wine cov npe ua haujlwm tam sim no ua tiav thaum tsim nyog, thiab tsis yog thaum hloov tshiab Wine.
    • Ntxiv kev txhawb nqa rau DTLS raws tu qauv.
    • Cov kev pabcuam NSI (Network Store Interface) tau muab coj los siv, khaws cia thiab xa cov ntaub ntawv hais txog kev sib txuas thiab kev sib txuas hauv lub computer mus rau lwm qhov kev pabcuam.
    • WinSock API handlers xws li setsockopt thiab getsockopt tau tsiv mus rau NTDLL thiab tus tsav tsheb afd.sys kom ua raws li Windows architecture.
    • Wine tus kheej cov ntaub ntawv network database, xws li /etc/protocols thiab /etc/networks, tam sim no tau nruab rau hauv Wine ua haujlwm directory, es tsis txhob siv cov ntaub ntawv Unix zoo sib xws.
  • Lwm platforms
    • Ntxiv kev txhawb nqa rau Apple cov khoom siv raws li M1 ARM chips (Apple Silicon).
    • Kev them nyiaj yug rau BCrypt thiab Secur32 nta ntawm macOS tam sim no xav tau kev teeb tsa ntawm GnuTLS lub tsev qiv ntawv.
    • 32-ntsis executables rau ARM platforms yog tam sim no ua nyob rau hauv Thumb-2 hom, zoo ib yam li Windows. Lub preloader yog siv los thauj cov ntaub ntawv no.
    • Rau 32-ntsis ARM platforms, kev txhawb nqa rau unwinding kev zam tau raug siv.
    • Rau FreeBSD, tus naj npawb ntawm cov lus nug txhawb rau cov ntaub ntawv kaw lus qis, xws li lub cim xeeb thiab qib roj teeb, tau nthuav dav.
  • Built-in daim ntawv thov thiab cov cuab yeej tsim kho
    • Cov khoom siv reg.exe tau ntxiv kev txhawb nqa rau 32- thiab 64-ntsis sau npe saib. Ntxiv kev txhawb nqa rau kev luam cov lej sau npe.
    • WineDump qhov hluav taws xob tau ntxiv kev txhawb nqa rau dumping Windows metadata thiab tso tawm cov ncauj lus kom ntxaws txog CodeView nkag.
    • Wine Debugger (winedbg) muab lub peev xwm los debug 32-ntsis txheej txheem los ntawm 64-ntsis debugger.
    • Lub peev xwm los thauj cov tsev qiv ntawv tsim rau hauv PE cov ntaub ntawv tau muab ntxiv rau IDL compiler (widl), kev txhawb nqa rau WinRT cov yam ntxwv tshwj xeeb thiab kev tsim kho tau muab, thiab kev tshawb nrhiav lub tsev qiv ntawv tshwj xeeb tau siv.
  • Kev sib dhos system
    • Hauv cov ntawv qhia tshwj xeeb hauv architecture, cov tsev qiv ntawv tam sim no tau txais kev cawmdim nrog cov npe uas muaj kev cuam tshuam txog kev tsim qauv thiab kev ua tau zoo, xws li 'i386-windows' rau hom ntawv PE thiab 'x86_64-unix' rau unix cov tsev qiv ntawv, tso cai rau kev txhawb nqa rau cov architectures sib txawv hauv ib qho Wine. installation thiab muab kev sib sau ua ke ntawm Winelib.
    • Txhawm rau teeb tsa ib qho kev xaiv hauv headers ntawm PE cov ntaub ntawv uas tswj kev hloov mus rau kev siv haiv neeg DLLs, tus chij '--prefer-native xaiv' tau ntxiv rau winebuild (DLL_WINE_PREATTACH ua hauv DllMain tau raug tso tseg).
    • Ntxiv kev txhawb nqa rau version 4 ntawm Dwarf debug cov ntaub ntawv hom, uas yog tam sim no siv los ntawm lub neej ntawd thaum tsim cov tsev qiv ntawv Wine.
    • Ntxiv kev xaiv tsim '-enable-build-id' kom txuag tau cov cim tsim tshwj xeeb hauv cov ntaub ntawv ua tiav.
    • Ntxiv kev txhawb nqa rau kev siv Clang compiler hauv MSVC compatibility hom.
  • miscellanea
    • Cov npe ntawm cov npe raug nyob rau hauv cov neeg siv lub plhaub (Windows Plhaub) tau muab rau cov tswv yim siv pib nrog Windows Vista, i.e. Hloov chaw 'Kuv Cov Ntaub Ntawv', tam sim no 'Cov Ntaub Ntawv' directory yog tsim, thiab feem ntau ntawm cov ntaub ntawv raug khaws cia rau hauv 'AppData' directory.
    • Kev them nyiaj yug rau OpenCL 1.2 specification tau ntxiv rau OpenCL tsev qiv ntawv txheej.
    • Tus tsav tsheb WinSpool tau ntxiv kev txhawb nqa rau cov nplooj ntawv sib txawv thaum luam ntawv.
    • Ntxiv kev txhawb nqa thawj zaug rau MSDASQL, Microsoft OLE DB tus muab kev pabcuam rau ODBC tsav tsheb.
    • Lub cav Wine Mono nrog kev siv ntawm .NET platform tau hloov kho kom tso tawm 7.0.0.
    • Cov ntaub ntawv Unicode tau hloov kho rau Unicode 14 specification.
    • Lub hauv paus ntoo muaj xws li Faudio, GSM, LCMS2, LibJPEG, LibJXR, LibMPG123, LibPng, LibTiff, LibXml2, LibXslt thiab Zlib cov tsev qiv ntawv, uas tau muab tso ua ke hauv PE hom thiab tsis tas yuav muaj cov qauv hauv Unix hom. Nyob rau tib lub sijhawm, cov tsev qiv ntawv no tuaj yeem raug xa tawm los ntawm lub kaw lus los siv cov rooj sib tham sab nraud es tsis txhob siv cov kev xaiv PE built-in.

Tau qhov twg los: opennet.ru

Ntxiv ib saib