Wine 8.0-ийн тогтвортой хувилбар

Жилийн турш хөгжүүлж, 28 туршилтын хувилбарыг гаргасны дараа 32 гаруй өөрчлөлтийг агуулсан Win8.0 API - Wine 8600-ийн тогтвортой хувилбарыг танилцуулав. Шинэ хувилбарын гол амжилт нь Wine модулиудыг формат руу хөрвүүлэх ажил дууссаныг харуулж байна.

Wine нь Windows-д зориулсан 5266 (жилийн өмнө 5156, хоёр жилийн өмнө 5049) программуудыг бүрэн ажиллуулж, өөр 4370 (жилийн өмнө 4312, хоёр жилийн өмнө 4227) программууд нэмэлт тохиргоо болон гадаад DLL-тэй төгс ажилладаг болохыг баталжээ. 3888 программ (жилийн өмнө 3813, хоёр жилийн өмнө 3703) программуудын үндсэн функцийг ашиглахад саад болохгүй үйл ажиллагааны жижиг асуудалтай байдаг.

Wine 8.0-ийн гол шинэчлэлүүд:

  • PE форматтай модулиуд
    • Дөрвөн жил ажилласны дараа бүх DLL сангуудыг PE (Portable Executable, Windows-д ашигладаг) гүйцэтгэх боломжтой файлын формат руу хөрвүүлэх ажил дууслаа. PE-ийн хэрэглээ нь Windows-д ашиглах боломжтой дибаггерийг ашиглах боломжийг олгодог бөгөөд диск болон санах ой дахь системийн модулиудын таних байдлыг баталгаажуулдаг хуулбарлахаас хамгаалах янз бүрийн схемүүдийг дэмжих асуудлыг шийддэг. 32 битийн хостууд дээр 64 битийн програмууд болон ARM систем дээр x86 програмуудыг ажиллуулахтай холбоотой асуудлууд мөн шийдэгдсэн. Wine 8.x-ийн дараагийн туршилтын хувилбаруудад шийдвэрлэхээр төлөвлөж буй үлдсэн ажлуудын дунд модулиудыг PE болон Unix давхаргын хооронд шууд залгахын оронд NT системийн дуудлагын интерфейс рүү шилжүүлэх ажил байдаг.
    • Бүрэн NT системийн дуудлагыг гүйцэтгэхэд шаардагдах зардлыг багасгахын тулд дуудлагыг PE-ээс Unix номын сан руу хөрвүүлэхэд ашигладаг тусгай системийн дуудлагын менежерийг хэрэгжүүлсэн. Жишээлбэл, оновчлол нь OpenGL болон Vulkan номын санг ашиглах үед гүйцэтгэлийн бууралтыг бууруулах боломжтой болсон.
    • Winelib програмууд нь ELF (.dll.so) сангуудын холимог Windows/Unix угсралтуудыг ашиглах чадвартай хэвээр байгаа боловч 32 битийн сангүй ийм програмууд нь WoW64 гэх мэт NT системийн дуудлагын интерфейсээр дамжуулан ашиглах боломжтой ажиллагааг дэмжихгүй.
  • WoW64
    • WoW64 (64 битийн Windows-on-Windows) давхаргууд нь бүх Unix номын санд зориулагдсан бөгөөд PE форматын 32 битийн модулиуд нь 64 битийн Unix номын санд хандах боломжийг олгодог бөгөөд энэ нь шууд PE/Unix дуудлагыг арилгасны дараа үүнийг хийх болно. 32 битийн Unix санг суулгахгүйгээр 32 битийн Windows програмуудыг ажиллуулах боломжтой.
    • 32 битийн Wine дуудагч байхгүй тохиолдолд 32 битийн програмууд нь Windows-той төстэй WoW64 шинэ туршилтын горимд ажиллах боломжтой бөгөөд 32 битийн код нь 64 битийн процесс дотор ажилладаг. '—enable-archs' сонголтоор Wine бүтээх үед горим идэвхждэг.
  • График дэд систем
    • Өгөгдмөл тохиргоо нь гэрлийн загварыг ашигладаг ("Гэрэл"). Та WineCfg хэрэгслийг ашиглан загварыг өөрчилж болно.
      Wine 8.0-ийн тогтвортой хувилбар
    • График драйверууд (winex11.drv, winemac.drv, wineandroid.drv) нь Unix түвшинд системийн дуудлагуудыг гүйцэтгэхийн тулд хөрвүүлэгдэж, Win32u номын сангаар дамжуулан драйверуудад хандах боломжтой.
      Wine 8.0-ийн тогтвортой хувилбар
    • Принтерийн драйвер дахь PE болон Unix түвшний хоорондох шууд дуудлагыг арилгахад ашигладаг Print Processor архитектурыг хэрэгжүүлсэн.
    • Direct2D API одоо эффектүүдийг дэмждэг.
    • Direct2D API нь тушаалын жагсаалтыг бичих, тоглуулах боломжийг нэмсэн.
    • Vulkan график API-д зориулсан драйвер нь Vulkan 1.3.237 техникийн үзүүлэлтэд нэмэлт дэмжлэг үзүүлсэн (Вулкан 7 нь Wine 1.2 дээр дэмжигдсэн).
  • Direct3D програм
    • vkd3d-shader номын санд суурилсан HLSL (Өндөр түвшний Shader хэл)-д зориулсан шинэ шэйдер хөрвүүлэгч нэмсэн. Мөн vkd3d-shader дээр тулгуурлан HLSL дизассемблер болон HLSL урьдчилсан процессорыг бэлтгэсэн.
    • D3DX 10-д нэвтрүүлсэн Thread Pump интерфэйсийг хэрэгжүүлсэн.
    • Direct3D 10 эффектүүд нь олон шинэ илэрхийлэлд дэмжлэг үзүүлдэг.
    • D3DX 9-ийн дэмжлэгийн номын сан нь Cubemap бүтэцтэй проекцийг дэмждэг болсон.
  • Дуу, видео
    • GStreamer хүрээн дээр үндэслэн MPEG-1 форматаар аудио кодыг тайлах шүүлтүүрийг дэмжсэн.
    • ASF (Advanced Systems Format) форматаар дамжуулж буй аудио болон видеог унших шүүлтүүрийг нэмсэн.
    • OpenAL32.dll завсрын номын сангийн давхаргыг устгасан бөгөөд оронд нь программуудаар хангагдсан Windows-ын уугуул OpenAL32.dll санг ашиглаж байна.
    • Media Foundation Player нь агуулгын төрлийг илрүүлэхийг сайжруулсан.
    • Мэдээлэл дамжуулах хурдыг (Rate control) хянах чадварыг хэрэгжүүлсэн.
    • Enhanced Video Renderer (EVR) доторх өгөгдмөл холигч болон хөтлөгчийн сайжруулсан дэмжлэг.
    • Writer Encoding API-ийн анхны хэрэгжилтийг нэмсэн.
    • Сайжруулсан топологи ачигчийн дэмжлэг.
  • Оролтын төхөөрөмж
    • Хянагчийг халуун залгахад дэмжлэгийг мэдэгдэхүйц сайжруулсан.
    • SDL номын сан дээр суурилсан тоглоомын жолооны хүрдийг тодорхойлох кодын сайжруулсан хэрэгжилтийг санал болгож байна.
    • Тоглоомын дугуй ашиглах үед Хүчний санал хүсэлтийн нөлөөг сайжруулах дэмжлэг.
    • HID Haptic тодорхойлолтыг ашиглан зүүн болон баруун чичиргээний моторыг удирдах чадварыг хэрэгжүүлсэн.
    • Жойстикийн удирдлагын самбарын загварыг өөрчилсөн.
    • Sony DualShock болон DualSense контроллеруудад зориулсан дэмжлэгийг hidraw backend ашиглан хангадаг.
    • WinRT модулийг Windows.Gaming.Input нь тоглоомын самбар, джойстик, тоглоомын дугуйнд нэвтрэх програм хангамжийн интерфейсийг хэрэгжүүлэхийг санал болгож байна. Шинэ API-ийн хувьд бусад зүйлсээс гадна төхөөрөмжүүдийг халуунаар залгах, хүрэлцэх болон чичиргээний эффектүүдийн мэдэгдлийг дэмждэг.
  • Олон улсын
    • Юникод CLDR (Unicode Common Locale Data Repository) репозитороос locale.nls форматаар зөв локал мэдээллийн санг үүсгэх нь баталгаажсан.
    • Юникод мөрийн харьцуулах функцүүдийг Юникод харьцах алгоритмын оронд мэдээллийн сан болон Windows Sortkey алгоритмыг ашиглахаар шилжүүлж, зан төлөвийг Windows-д ойртуулсан.
    • Ихэнх функцууд нь Юникод кодын дээд хязгаарт (онгоц) дэмжлэг нэмсэн.
    • UTF-8-ийг ANSI кодчилол болгон ашиглах боломжтой.
    • Тэмдэгтийн хүснэгтүүдийг Юникод 15.0.0 техникийн үзүүлэлтээр шинэчилсэн.
  • Текст ба фонтууд
    • Ихэнх системийн фонтуудад фонт холбохыг идэвхжүүлсэн бөгөөд энэ нь Хятад, Солонгос, Япон хэлтэй системүүд дээрх глифийн дутагдлын асуудлыг шийдсэн.
    • DirectWrite дээр дахин боловсруулсан нөөц фонт.
  • Цөм (Windows цөмийн интерфэйс)
    • Api-ms-* модулиудыг сольж, диск болон хаягийн зайны зарцуулалтыг бууруулсан ApiSetSchema мэдээллийн сан хэрэгжсэн.
    • DOS файлын шинж чанаруудыг өргөтгөсөн FS шинж чанаруудыг ашиглан Samba-тай нийцтэй форматаар дискэнд хадгалдаг.
  • Сүлжээний онцлог
    • Хүчингүй болсон гэрчилгээг шалгахад ашигладаг OCSP (Онлайн гэрчилгээний статусын протокол)-ийн дэмжлэгийг нэмсэн.
    • JavaScript стандартыг дагаж мөрдөх горимд ашиглах боломжтой EcmaScript функцүүдийн хүрээ өргөжсөн.
    • JavaScript-д зориулсан хог цуглуулагчийг хэрэгжүүлсэн.
    • Gecko хөдөлгүүрийн багц нь хөгжлийн бэрхшээлтэй хүмүүст зориулсан функцуудыг агуулдаг.
    • MSHTML нь Web Storage API, Performance объект болон үйл явдлыг боловсруулах нэмэлт объектуудын дэмжлэгийг нэмдэг.
  • Суулгасан програмууд
    • Бүх суулгасан програмуудыг Common Controls 6 номын санг ашиглахаар хөрвүүлсэн бөгөөд дизайны сэдвийг дэмжиж, өндөр пикселийн нягтралтай дэлгэцийг харгалзан үзэв.
    • Wine Debugger (winedbg) доторх хэлхээг дибаг хийх сайжруулсан боломжууд.
    • Бүртгэлийн хэрэгслүүд (REGEDIT ба REG) одоо QWORD төрлийг дэмждэг.
    • Тэмдэглэлийн дэвтэрт курсорын байрлалын талаарх мэдээлэл бүхий статус мөр болон заасан мөрийн дугаар руу шилжихийн тулд Goto Line функцийг нэмсэн.
    • Суурилуулсан консол нь OEM кодын хуудсанд өгөгдлийн гаралтыг өгдөг.
    • 'Query' командыг sc.exe (Үйлчилгээний хяналт) хэрэгсэлд нэмсэн.
  • Угсралтын систем
    • Хэд хэдэн архитектурт зориулж PE форматаар гүйцэтгэгдэх файлуудыг бүтээх боломжийг олгосон (жишээлбэл, '—enable-archs=i386,x86_64').
    • 32 битийн урттай бүх платформ дээр Windows дээр урт гэж тодорхойлсон өгөгдлийн төрлийг Wine-д 'int' биш харин 'long' гэж дахин тодорхойлсон. Winelib-д энэ үйлдлийг WINE_NO_LONG_TYPES тодорхойлолтоор идэвхгүй болгож болно.
    • dlltool ашиглахгүйгээр номын сан үүсгэх чадварыг нэмсэн (winebuild дээр '—without-dlltool' сонголтыг тохируулснаар идэвхжүүлсэн).
    • Ачаалах үр ашгийг дээшлүүлэх, кодгүй, зөвхөн нөөцийн сангуудын хэмжээг багасгахын тулд winegcc нь "--зөвхөн өгөгдөл" гэсэн сонголтыг хэрэгжүүлдэг.
  • Разное
    • Faudio 22.11, LCMS2 2.14, LibJPEG 9e, LibMPG123 1.31.1, LibPng 1.6.39, LibTiff 4.4.0, LibXml2 2.10.3, LibX1.1.37, LibX1.2.13.-ийн суулгасан номын сангийн шинэчилсэн хувилбарууд.
    • .NET платформын хэрэгжилттэй Wine Mono хөдөлгүүрийг 7.4 хувилбар болгон шинэчилсэн.
    • RSA алгоритм болон RSA-PSS тоон гарын үсэг дээр суурилсан шифрлэлтийн дэмжлэгийг хэрэгжүүлсэн.
    • UI Automation API-ийн анхны хувилбарыг нэмсэн.
    • Эх мод нь PE форматаар эмхэтгэсэн LDAP болон vkd3d сангуудыг агуулж байгаа нь эдгээр сангуудын Unix угсралтуудыг нийлүүлэх шаардлагагүй болно.
    • OpenAL номын сангийн үйл ажиллагаа зогссон.

Эх сурвалж: opennet.ru

сэтгэгдэл нэмэх