Wayland ကို အာရုံစိုက်သည့် KWin ၏ လမ်းခွဲတစ်ခုဖြစ်သည့် KWinFT ကို မိတ်ဆက်ခဲ့သည်။

Roman Gilg၊ ပါဝင်ခြင်း။ KDE၊ Wayland၊ Xwayland နှင့် X Server ဖွံ့ဖြိုးတိုးတက်မှုတွင်၊ မိတ်ဆက်ပေးခဲ့သည် စီမံကိန်း၏ KWinFT (KWin Fast Track)၊ ကုဒ်ဘေ့စ်ကို အခြေခံ၍ Wayland နှင့် X11 အတွက် ပြောင်းလွယ်ပြင်လွယ်နှင့် အသုံးပြုရလွယ်ကူသော ပေါင်းစပ်ဝင်းဒိုးမန်နေဂျာကို တီထွင်ဖန်တီးခြင်း Kwin. ဝင်းဒိုးမန်နေဂျာအပြင်၊ ပရောဂျက်သည် စာကြည့်တိုက်တစ်ခုကိုလည်း ဖော်ဆောင်ပေးသည်။ wrapland Qt/C++ အတွက် libwayland ပေါ်တွင် စည်းနှောင်မှုတစ်ခု အကောင်အထည်ဖော်မှုနှင့်အတူ၊ ဆက်လက်ဖွံ့ဖြိုးတိုးတက်လာသည်။ KWaylandနှောင်ဖွဲ့ခြင်းမှ လွတ်မြောက်၏။ ကုဒ်ကို GPLv2 နှင့် LGPLv2 လိုင်စင်များအောက်တွင် ဖြန့်ဝေထားသည်။

ပရောဂျက်၏ရည်ရွယ်ချက်မှာ KWin နှင့် KWayland ကို ပြန်လည်အသုံးပြုရန်ဖြစ်သည်။
ပရောဂျက်၏ ဖွံ့ဖြိုးတိုးတက်မှုကို အရှိန်မြှင့်ရန်၊ ကုဒ်ကို ပြန်လည်ပြင်ဆင်ခြင်း၊ ပိုမိုကောင်းမွန်အောင်ပြုလုပ်ခြင်းနှင့် အခြေခံဆန်းသစ်တီထွင်မှုများ ထပ်တိုးခြင်းတို့ကို ရိုးရှင်းစေရန် ခွင့်ပြုသည့် ခေတ်မီနည်းပညာများနှင့် ဖွံ့ဖြိုးတိုးတက်မှုဆိုင်ရာ အလေ့အကျင့်များက KWin တွင် ၎င်း၏လက်ရှိပုံစံဖြင့် ပေါင်းစပ်ခြင်းသည် ခက်ခဲပါသည်။ KWinFT နှင့် Wrapland ကို KWin နှင့် KWayland တို့ကို ချောမွေ့စွာ အစားထိုးရန် အသုံးပြုနိုင်ပြီး၊ သို့သော် ၎င်းတို့သည် ထုတ်ကုန်များစွာ၏ KWin လော့ခ်ချခြင်းတွင် ၎င်းတို့ကို အကန့်အသတ်မရှိ အပြည့်အဝ လိုက်ဖက်ညီစွာ ထိန်းသိမ်းထားခြင်းသည် ဆန်းသစ်တီထွင်မှုရှေ့ဆက်မသွားရန် ဦးစားပေးဖြစ်သည်။

KWinFT ဖြင့်၊ developer များသည် ပိုမိုခေတ်မီသော ဖွံ့ဖြိုးတိုးတက်မှုနည်းပညာများကို အသုံးပြုခြင်းဖြင့် တည်ငြိမ်မှုကို ထိန်းသိမ်းထားစဉ် အင်္ဂါရပ်အသစ်များကို စမ်းသပ်ရန် အခမဲ့လက်ရှိသည်။ ဥပမာအားဖြင့်၊ KWinFT ကုဒ်ကို စစ်ဆေးရန်၊ မတူညီသော linters များကို အသုံးပြု၍ အတည်ပြုခြင်း၊ အလိုအလျောက် တပ်ဆင်မှုများ နှင့် အဆင့်မြင့် စမ်းသပ်ခြင်း အပါအဝင် စဉ်ဆက်မပြတ် ပေါင်းစပ်စနစ်ကို အသုံးပြုပါသည်။ လုပ်ဆောင်နိုင်စွမ်း ဖွံ့ဖြိုးတိုးတက်မှုနှင့်ပတ်သက်၍၊ KWinFT ၏ အဓိကအာရုံစိုက်မှုသည် အရည်အသွေးမြင့်မားပြီး ပြီးပြည့်စုံသော ပရိုတိုကောပံ့ပိုးမှုကို ပံ့ပိုးပေးမည်ဖြစ်သည်။
Wayland နှင့် ပေါင်းစပ်မှုကို ရှုပ်ထွေးစေသော KWin ဗိသုကာအင်္ဂါရပ်များ ပြန်လည်ပြုပြင်ခြင်း အပါအဝင် Wayland။

KWinFT တွင် ထည့်သွင်းပြီးသား စမ်းသပ်တီထွင်မှုများထဲတွင်-

  • ပေါင်းစပ်ဖွဲ့စည်းခြင်းလုပ်ငန်းစဉ်ကို ပြန်လည်လုပ်ဆောင်ခဲ့ပြီး၊ ၎င်းသည် X11 နှင့် Wayland လည်ပတ်သည့် အကြောင်းအရာများ၏ တင်ဆက်မှုကို သိသိသာသာ တိုးတက်ကောင်းမွန်စေခဲ့သည်။ ထို့အပြင်၊ ရုပ်ပုံဖန်တီးမှုနှင့် ဖန်သားပြင်ပေါ်ရှိ ၎င်း၏ပြသမှုကြားတွင် နှောင့်နှေးမှုများကို လျှော့ချရန် timer တစ်ခုကို ထည့်သွင်းထားသည်။
  • Wayland ပရိုတိုကောကို တိုးချဲ့ဆောင်ရွက်ခဲ့သည်"ကြည့်ရှုသူ"၊ client အား server-side scaling နှင့် surface edges များကို ချုံ့ခြင်းလုပ်ဆောင်နိုင်စေခြင်း။ XWayland ၏နောက်ထွက်ရှိမှုအကြီးစားနှင့်ပေါင်းစပ်ထားသော extension သည် ဂိမ်းအဟောင်းများအတွက် မျက်နှာပြင် ရုပ်ထွက်ပြောင်းလဲမှုများကို အတုယူလုပ်ဆောင်နိုင်စေမည်ဖြစ်သည်။
  • Wayland-based sessions အတွက် rotating and mirroring output အတွက် အပြည့်အဝ ပံ့ပိုးမှု။

Wrapland သည် C++ ပရောဂျက်များတွင် အသုံးပြုရလွယ်ကူသော ပုံစံဖြင့် libwayland လုပ်ဆောင်ချက်များကို ဝင်ရောက်ခွင့်ပေးသည့် Qt-စတိုင်ပရိုဂရမ်းမင်း အင်တာဖေ့စ်ကို ပံ့ပိုးပေးသည်။ Wrapland ကို မူလက KWayland ၏ လမ်းဆုံတစ်ခုအဖြစ် တီထွင်ရန် စီစဉ်ခဲ့သော်လည်း KWayland ကုဒ်၏ ကျေနပ်ဖွယ်အခြေအနေကြောင့် ယခုအခါ KWayland ကို အလုံးစုံ ပြုပြင်မွမ်းမံရန် ပရောဂျက်တစ်ခုအဖြစ် သတ်မှတ်ခံထားရသည်။ Wrapland နှင့် KWayland အကြား အရေးအကြီးဆုံး ခြားနားချက်မှာ Qt နှင့် ချိတ်ဆက်ခြင်း မရှိတော့ဘဲ Qt ကို ထည့်သွင်းခြင်း မပြုဘဲ သီးခြားအသုံးပြုနိုင်ခြင်း ဖြစ်သည်။ အနာဂတ်တွင်၊ Wrapland ကို C++ API ပါရှိသော universal library အဖြစ် အသုံးပြုနိုင်ပြီး developer များအတွက် libwayland C API ကို အသုံးပြုရန် မလိုအပ်တော့ပါ။

Manjaro Linux အသုံးပြုသူများအတွက် အဆင်သင့်လုပ်ထားသော ပက်ကေ့ဂျ်များကို ဖန်တီးထားပါသည်။ KWinFT ကို အသုံးပြုရန်၊ repository မှ kwinft ကို ထည့်သွင်းပြီး ပုံမှန် KWin သို့ ပြန်လှည့်ရန်၊ kwin package ကို ထည့်သွင်းပါ။ Wrapland ကိုအသုံးပြုခြင်းသည် KDE တွင်အကန့်အသတ်မရှိပါ၊ ဥပမာအားဖြင့်၊ client အကောင်အထည်ဖော်မှုတွင်အသုံးပြုရန်အတွက်ပြင်ဆင်ထားပါသည်။ wlroots wlroots ကိုအခြေခံ၍ ပေါင်းစပ်ဆာဗာများတွင် ခွင့်ပြုသော output control protocol (လှုပ်ရှား, လမ်း) အထွက်ကို စိတ်ကြိုက်ပြင်ဆင်ရန် KScreen ကို အသုံးပြုပါ။

ဗကသ၊ ဆက်လက် ပရောဂျက်အပ်ဒိတ်များကို ထုတ်ပြန်ပါမည်။ KWin-lowlatencyအင်တာဖေ့စ်၏တုံ့ပြန်မှုတိုးမြှင့်ရန်နှင့် ထည့်သွင်းမှုစကားထစ်ခြင်းကဲ့သို့သော အသုံးပြုသူလုပ်ဆောင်မှုများအပေါ် တုံ့ပြန်မှုအရှိန်နှင့်ဆက်စပ်နေသော ပြဿနာအချို့ကို ပြင်ဆင်ရန်အတွက် KWin ပေါင်းစပ်မန်နေဂျာ၏ ထုတ်ဝေမှုပုံစံကို ဖာထေးမှုဖြင့် ပြုလုပ်ထားသည်။ DRM VBlank အပြင်၊ KWin-lowlatency သည် glXWaitVideoSync၊ glFinish သို့မဟုတ် NVIDIA VSync ကို အသုံးပြုခြင်းဖြင့် တုံ့ပြန်မှုအား အပျက်သဘောဆောင်သော စုတ်ပြဲခြင်းမှ ကာကွယ်နိုင်သည် (KWin ၏ မူလ မျက်ရည်ထွက်ခြင်း အကာအကွယ်ကို အချိန်တိုင်းကိရိယာ အသုံးပြု၍ လုပ်ဆောင်ထားပြီး ကြီးမားသော latencies (50ms အထိ) အထွက်နှုန်းအထိ ဖြစ်ပေါ်စေနိုင်သည်။ ရလဒ်အနေဖြင့် ထည့်သွင်းသည့်အခါ တုံ့ပြန်မှုတွင် နှောင့်နှေးမှု)။ KWin-lowlatency ၏အသစ်ထွက်ရှိမှုများကို KDE Plasma 5.18 ရှိ စတော့ပေါင်းစပ်ဆာဗာအစား အသုံးပြုနိုင်သည်။

source: opennet.ru

မှတ်ချက် Add