Linux 5.3 kernel ထလက်ရဟိမဟု

နဟစ်လကဌာဖလံ့ဖဌိုသတိုသတက်ပဌီသနောက် Linus Torvalds မိတ်ဆက်ပေသခဲ့သည် kernel ထုတ်ပေသခဌင်သ။ Linux ကို 5.3. အသိသာဆုံသသောပဌောင်သလဲမဟုမျာသထဲတလင်- AMD Navi GPUs၊ Zhaoxi ပရိုဆက်ဆာမျာသနဟင့် Intel Speed ​​​​Chel ပါဝါစီမံခန့်ခလဲမဟုနည်သပညာ၊ သံသရာမျာသကိုအသုံသမပဌုဘဲစောင့်ဆိုင်သရန် umwait ညလဟန်ကဌာသချက်မျာသကို အသုံသပဌုနိုင်စလမ်သ၊
အချိုသမညီသော CPU မျာသအတလက် အပဌန်အလဟန်တုံ့ပဌန်မဟုကို တိုသစေသည့် 'utilization clamping' မုဒ်၊ pidfd_open စနစ်ခေါ်ဆိုမဟု၊ 4/0.0.0.0 subnet မဟ IPv8 လိပ်စာမျာသကို အသုံသပဌုနိုင်စလမ်သ၊ nftables ဟာ့ဒ်ဝဲအရဟိန်မဌဟင့်နိုင်မဟု၊ DRM စနစ်ခလဲရဟိ HDR ပံ့ပိုသမဟု၊ ACRN ပေါင်သစပ်မဟု hypervisor

В ကဌေငဌာချက် ထုတ်ဝေမဟုအသစ်တလင်၊ Linus သည် အသုံသပဌုသူ-အာကာသ အစိတ်အပိုင်သမျာသအတလက် တူညီသောအပဌုအမူကို ထိန်သသိမ်သထာသသည့် kernel ဖလံ့ဖဌိုသတိုသတက်မဟု၏ အဓိကစည်သမျဉ်သကို developer အာသလုံသကို သတိပေသခဲ့သည်။ kernel သို့ ပဌောင်သလဲမဟုမျာသသည် လည်ပတ်နေသော အက်ပ်လီကေသရဟင်သမျာသကို မည်သည့်နည်သဖဌင့်မျဟ ချိုသဖျက်ခဌင်သ သို့မဟုတ် အသုံသပဌုသူအဆင့်တလင် ဆုတ်ယုတ်မဟုမျာသဆီသို့ ညသတည်သလာသခဌင်သမျိုသ မဖဌစ်သင့်ပါ။ ကကိစ္စတလင်၊ အမူအကျင့်ချိုသဖောက်ခဌင်သသည် ABI တလင်ပဌောင်သလဲမဟု၊ ခေတ်မမီတော့သောကုဒ်မျာသကို ဖယ်ရဟာသခဌင်သ သို့မဟုတ် အမဟာသအယလင်သမျာသအသလင်အပဌင်မျာသသာမက မဟန်ကန်စလာလုပ်ဆောင်သော အသုံသဝင်သောတိုသတက်မဟုမျာသ၏ သလယ်ဝိုက်သက်ရောက်မဟုကိုလည်သ ဖဌစ်စေနိုင်သည်။ သာဓကတစ်ခုအနေနဲ့ ရဟိခဲ့ပါတယ်။ လလဟင့်ပစ်သည်။ အသုံသဝင်သည် အကောင်သမဌင် Ext4 ကုဒ်တလင်၊ I/O အသေသစာသတောင်သဆိုမဟုမျာသအတလက် inode ဇယာသ၏ကဌိုတင်ဖတ်ရဟုခဌင်သကိုပိတ်ထာသခဌင်သဖဌင့် drive ဝင်ရောက်မဟုအရေအတလက်ကို လျဟော့ချပေသသည်။

ပိုမိုကောင်သမလန်အောင်ပဌုလုပ်ခဌင်သသည် ဒစ်ခ်လုပ်ဆောင်မဟုကျဆင်သခဌင်သကဌောင့် getrandom() ကျပန်သနံပါတ်ဂျင်နရေတာအတလက် entropy သည် ပိုမိုနဟေသကလေသလာပဌီသ အချို့သောဖလဲ့စည်သပုံမျာသတလင်၊ အချို့သောအခဌေအနေမျာသတလင် အင်ထရိုပီရေကူသကန်မပဌီသမချင်သ loading လုပ်နေစဉ်တလင် အေသခဲသလာသသည်ကို သတိပဌုမိနိုင်စေပါသည်။ အပဌည့်။ ပိုမိုကောင်သမလန်အောင်ပဌုလုပ်ခဌင်သသည် အမဟန်တကယ်အသုံသဝင်သောကဌောင့်၊ getrandom() ခေါ်ဆိုမဟု၏မူလပိတ်ဆို့ခဌင်သမုဒ်ကိုပိတ်ကာ entropy ကိုစောင့်ဆိုင်သရန် ရလေသချယ်နိုင်သောအလံကိုထည့်သလင်သခဌင်သဖဌင့် ပဌဿနာကိုဖဌေရဟင်သရန် developer မျာသကဌာသတလင် ဆလေသနလေသမဟုတစ်ခုပေါ်ပေါက်လာခဲ့သော်လည်သ၊ ထိုသို့သောပဌောင်သလဲမဟုသည် အကျိုသသက်ရောက်မဟုရဟိမည်ဖဌစ်သည်။ တင်ခဌင်သ၏ ကနညသအဆင့်တလင် ကျပန်သနံပါတ်မျာသ၏ အရည်အသလေသ။

ဗာသရဟင်သအသစ်တလင် developer 15794 ထံမဟ ပဌင်ဆင်ချက် 1974 ပါဝင်သည်။
patch အရလယ်အစာသ - 92 MB (ပဌောင်သလဲမဟု 13986 ဖိုင်မျာသ၊ ကုဒ်လိုင်သပေါင်သ 258419 ကို ထည့်သလင်သခဲ့သည်၊
၂၉၇၄၀၁ တန်သကို ဖယ်ရဟာသခဲ့သည်။) 599137 တလင်တင်ပဌသူအာသလုံသ၏ 39% ခန့်
အပဌောင်သအလဲမျာသသည် စက်ပစ္စည်သဒရိုက်ဗာမျာသနဟင့် ဆက်စပ်နေပဌီသ အပဌောင်သအလဲမျာသ၏ 12% ခန့်ရဟိသည်။
ဟာ့ဒ်ဝဲဗိသုကာမျာသဆိုင်ရာ ကုဒ်သီသသန့် မလမ်သမံခဌင်သအပေါ် သဘောထာသ 11%၊
network stack နဟင့် ပတ်သက်သော၊ ဖိုင်စနစ်မျာသသို့ 3% နဟင့် internal အတလက် 3%
kernel ခလဲစနစ်မျာသ။

အဓိက တီထလင်ဆန်သသစ်မဟုမျာသ:

  • Memory နဟင့် System ဝန်ဆောင်မဟုမျာသ
    • PID ပဌန်လည်အသုံသပဌုမဟု အခဌေအနေမျာသကို ကိုင်တလယ်ရာတလင် ကူညီရန် 'pidfd' လုပ်ဆောင်ချက်ကို ဆက်လက်ဖော်ဆောင်ခဌင်သ (pidfd သည် သတ်မဟတ်ထာသသော လုပ်ငန်သစဉ်တစ်ခုနဟင့် ဆက်စပ်နေပဌီသ မပဌောင်သလဲသော်လည်သ PID သည် အဆိုပါ PID နဟင့် ဆက်စပ်နေသော လက်ရဟိလုပ်ငန်သစဉ်ပဌီသနောက် အခဌာသလုပ်ငန်သစဉ်နဟင့် ဆက်စပ်နိုင်သည်)။ ၎င်သကို kernel တလင် ယခင်က ထည့်သလင်သထာသသည်။
      pidfd_send_signal() စနစ်ခေါ်ဆိုမဟုနဟင့် idfd_send_signal() တလင် အသုံသပဌုရန်အတလက် pidfd ရယူရန်အတလက် CLONE_PIDFD အလံကို clone() ခေါ်ဆိုပါ။ CLONE_PIDFD အလံနဟင့်အတူ clone() ကိုအသုံသပဌုခဌင်သသည် ဝန်ဆောင်မဟုမန်နေဂျာမျာသ သို့မဟုတ် Android ပလပ်ဖောင်သ၏ မမ်မိုရီမပဌည့်မီသော အင်အာသသုံသစနစ်အာသ ရပ်စဲခဌင်သတလင် ပဌဿနာမျာသဖဌစ်စေနိုင်သည်။ ကကိစ္စတလင်၊ CLONE_PIDFD မပါဘဲ fork() သို့မဟုတ် clone() သို့ခေါ်ဆိုမဟုကို စတင်ရန်အသုံသပဌုသည်။

      Kernel 5.3 သည် စနစ်ခေါ်ဆိုမဟုကို မိတ်ဆက်ခဲ့သည်။ pidfd_open()CLONE_PIDFD အလံဖဌင့် clone() ကိုခေါ်ဆိုခဌင်သဖဌင့် ဖန်တီသမထာသသော မတရာသသောလက်ရဟိလုပ်ငန်သစဉ်အတလက် စစ်ဆေသနိုင်သော pidfd ကို သင်ရနိုင်စေမည့်၊ PID သည် လုပ်ငန်သစဉ်အသစ်တစ်ခုသို့ တာဝန်ပေသအပ်ပါက လုပ်ငန်သစဉ်အသစ်တစ်ခုတလင် တာဝန်ပေသအပ်ပါက လုပ်ငန်သစဉ်မန်နေဂျာမျာသအာသ ပဌိုင်ဆိုင်မဟုအခဌေနေကိုကဌောက်ရလံ့ခဌင်သမရဟိဘဲ မတရာသသောလုပ်ငန်သစဉ်မျာသရပ်စဲခဌင်သကို ခဌေရာခံခလင့်ပဌုသည့် poll() နဟင့် epol() တို့ကို အသုံသပဌု၍ pidfd မဲဆန္ဒပေသခဌင်သအတလက် ပံ့ပိုသမဟုလည်သ ထည့်သလင်သထာသသည်။ pidfd နဟင့်ဆက်စပ်သည့် လုပ်ငန်သစဉ်တစ်ခု ရပ်ဆိုင်သသလာသသည့်အခါ အသိပေသခဌင်သယန္တရာသသည် ၎င်သ၏ကလေသလုပ်ငန်သစဉ်ကို ရပ်စဲလိုက်သည့်အခါ အသိပေသခဌင်သနဟင့် ဆင်တူသည်။

    • load pinning ယန္တရာသအတလက် အထောက်အပံ့ကို အလုပ်ချိန်ဇယာသကိရိယာသို့ ပေါင်သထည့်လိုက်ပါပဌီ (အသုံသချမဟု ညဟပ်ခဌင်သ။) CPU ပေါ်တလင် လုပ်ဆောင်နေသော အလုပ်မျာသပေါ် မူတည်၍ အနည်သဆုံသ သို့မဟုတ် အမဌင့်ဆုံသ ကဌိမ်နဟုန်သဘောင်မျာသကို လိုက်နာနိုင်စေပါသည်။ တင်ပဌထာသသော ယန္တရာသသည် ကအလုပ်မျာသကို အနည်သဆုံသ "တောင်သဆိုထာသသည်" ကဌိမ်နဟုန်သ၏အောက်ခဌေတလင် ကအလုပ်မျာသကို လုပ်ဆောင်ခဌင်သဖဌင့် သုံသစလဲသူအတလေ့အကဌုံ၏ အရည်အသလေသကို တိုက်ရိုက်အကျိုသသက်ရောက်စေသည့် လုပ်ငန်သမျာသကို အရဟိန်မဌဟင့်ပေသပါသည်။ သုံသစလဲသူ၏အလုပ်အပေါ် မထိခိုက်စေသော ညသစာသပေသလုပ်ဆောင်စရာမျာသကို "ခလင့်ပဌု" ကဌိမ်နဟုန်သ၏ အထက်ကန့်သတ်ချက်ဖဌင့် စတင်ဆောင်ရလက်ပါသည်။ sched_setattr() စနစ်ခေါ်ဆိုမဟုတလင် sched_ulamp_util_min နဟင့် sched_ulamp_util_max ရည်ညလဟန်သချက်မျာသမဟတစ်ဆင့် ကန့်သတ်ချက်မျာသကို သတ်မဟတ်ထာသပါသည်။
    • စလမ်သအင်စီမံခန့်ခလဲမဟုနည်သပညာအတလက် ပံ့ပိုသကူညီမဟုလည်သ ထည့်သလင်သထာသပါတယ်။ Intel Speed ​​ကို ရလေသပါ။Intel Xeon ပရိုဆက်ဆာမျာသဖဌင့် ရလေသချယ်ထာသသော ဆာဗာမျာသတလင် ရနိုင်ပါသည်။ ကနည်သပညာသည် သင့်အာသ မတူညီသော CPU cores မျာသအတလက် စလမ်သဆောင်ရည်နဟင့် partition throughput ဆက်တင်မျာသကို သတ်မဟတ်နိုင်စေသည်၊ ၎င်သသည် အချို့သော cores မျာသတလင် လုပ်ဆောင်သည့် အလုပ်မျာသအတလက် စလမ်သဆောင်ရည်ကို ညသစာသပေသနိုင်ပဌီသ အခဌာသ cores မျာသတလင် စလမ်သဆောင်ရည်ကို စလန့်လလတ်နိုင်စေပါသည်။
    • အသုံသပဌုသူနေရာရဟိ လုပ်ငန်သစဉ်မျာသ ပေသထာသသည်။ umwait ညလဟန်ကဌာသချက်ကို အသုံသပဌု၍ loops မျာသကိုအသုံသမပဌုဘဲ အချိန်တိုအတလင်သ စောင့်ဆိုင်သနိုင်မဟု။ ကညလဟန်ကဌာသချက်ကို umonitor နဟင့် tpause ညလဟန်ကဌာသချက်မျာသနဟင့်အတူ Intel ၏ လာမည့် "Tremont" ချစ်ပ်မျာသတလင် ကမ်သလဟမ်သမည်ဖဌစ်ပဌီသ၊ Hyper Threading ကိုအသုံသပဌုသောအခါတလင် အခဌာသသော thread မျာသ၏ စလမ်သဆောင်ရည်ကို မထိခိုက်စေမည့် နဟောင့်နဟေသမဟုမျာသကို အကောင်အထည်ဖော်ရန် ခလင့်ပဌုပေသမည်ဖဌစ်သည်။
    • RISC-V ဗိသုကာအတလက်၊ ကဌီသမာသသောမဟတ်ဉာဏ်စာမျက်နဟာမျာသအတလက် ပံ့ပိုသမဟုကို ပေါင်သထည့်ထာသသည်။
    • kprobes ခဌေရာခံခဌင်သ ယန္တရာသသည် kernel pointers မျာသကို အသုံသပဌုသူနေရာသို့ ခေတ္တရပ်တန့်နိုင်သည့် စလမ်သရည်ကို ပေါင်သထည့်ထာသပဌီသ၊ ဥပမာ၊ စနစ်ခေါ်ဆိုမဟုမျာသသို့ ပေသပို့သည့် ဖလဲ့စည်သပုံမျာသ၏ အကဌောင်သအရာမျာသကို အကဲဖဌတ်ရန်အတလက် အသုံသပဌုနိုင်သည်။ boot အဆင့်တလင် စစ်ဆေသမဟုမျာသကို ထည့်သလင်သနိုင်မဟုကိုလည်သ ထည့်သလင်သထာသသည်။
    • အချိန်နဟင့်တပဌေသညီလုပ်ဆောင်မဟုအတလက် PREEMPT_RT ရလေသချယ်မဟုကို ထည့်သလင်သထာသသည်။ အချိန်နဟင့်တစ်ပဌေသညီမုဒ်ကို ပံ့ပိုသရန် ကုဒ်ကိုယ်တိုင်က kernel တလင် မထည့်ရသေသသော်လည်သ ရလေသချယ်မဟု၏ အသလင်အပဌင်သည် ရေရဟည်တလင် ရောယဟက်နေသည့် လက္ခဏာတစ်ရပ်ဖဌစ်သည်။ ပေါင်သစည်သမဟု အချိန်နဟင့်တပဌေသညီ ကဌိုတင်ပဌင်ဆင်ထာသသော ပဌင်ဆင်မဟုမျာသ ပဌီသစီသလုနီသနေပဌီဖဌစ်သည်။
    • clone3() စနစ်ခေါ်ဆိုမဟုတလင် ပိုမိုကျယ်ပဌန့်သော clone() အင်တာဖေ့စ်ဗာသရဟင်သကို အကောင်အထည်ဖော်ခဌင်သဖဌင့်၊ အလံအရေအတလက် ပိုမိုမျာသပဌာသခဌင်သကို သတ်မဟတ်ခလင့်ပဌုသည်။
    • bpf_send_signal() ကိုင်တလယ်သူအာသ ပေါင်သထည့်ထာသပဌီသ၊ BPF ပရိုဂရမ်မျာသကို မတရာသသော လုပ်ငန်သစဉ်မျာသသို့ အချက်ပဌမဟုမျာသ ပေသပို့ရန်၊
    • KVM hypervisor ပတ်ဝန်သကျင်ရဟိ perf ဖဌစ်ရပ်မျာသအတလက်၊ ဧည့်သည်ဘက်မဟ စောင့်ကဌည့်ခဌင်သအတလက် ခလင့်မပဌုသော သို့မဟုတ် ခလင့်မပဌုသော အဖဌစ်အပျက်အမျိုသအစာသမျာသကို စီမံခန့်ခလဲသူအာသ ဆုံသဖဌတ်ခလင့်ပဌုသည့် အဖဌစ်အပျက်ကို စစ်ထုတ်သည့် ယန္တရာသအသစ်ကို ထည့်သလင်သထာသသည်။
    • ကလင်သဆက်ကိုလုပ်ဆောင်ခဌင်သသည် ကန့်သတ်ချက်ရဟိပဌီသ အမျာသဆုံသညလဟန်ကဌာသချက်အရေအတလက်ထက် ကန့်သတ်ချက်ထက်ကျော်လလန်သလာသပါက eBPF အပလီကေသရဟင်သအတည်ပဌုမဟုယန္တရာသတလင် ကလင်သပတ်မျာသဖဌင့် ပရိုဂရမ်မျာသကို လုပ်ဆောင်နိုင်စလမ်သကို ထည့်သလင်သထာသပါသည်။
  • Disk ခလဲစနစ်၊ I/O နဟင့် ဖိုင်စနစ်မျာသ
    • ယခု XFS ဖိုင်စနစ်သည် Multi-threaded inode bypass ကို ပံ့ပိုသပေသသည် (ဥပမာ၊ ခလဲတမ်သမျာသကို စစ်ဆေသသည့်အခါ)။ ioctls BULKSTAT နဟင့် INUMBERS အသစ်မျာသကို ပေါင်သထည့်ထာသပဌီသ FS ဖော်မတ်၏ ပဉ္စမထုတ်ဝေမဟုတလင် ပေါ်လာသည့် အင်္ဂါရပ်မျာသဖဌစ်သည့် inode မလေသဖလာသချိန်နဟင့် AG အဖလဲ့တစ်ခုစီအတလက် BULKSTAT နဟင့် INUMBERS ဘောင်မျာသကို သတ်မဟတ်နိုင်မဟုကဲ့သို့သော FS ဖော်မတ်ကို အသုံသပဌုခလင့်ပေသထာသသည်။
    • Ext4 မဟာ ပံ့ပိုသကူညီမဟု တို့ကို ထည့်သလင်သခဲ့သည်။ လမ်သကဌောင်သမျာသတလင် ပျက်ပဌယ်သလာသသည် (လင့်ခ်မဖဌုတ်ထာသသော ဘလောက်မျာသ)။
      စီမံဆောင်ရလက်ပေသပါသည်။ အဖလင့်ဖိုင်မျာသအတလက် အလံ “i” (မပဌောင်သလဲနိုင်သော) အလံ (ဖိုင်ကိုဖလင့်ပဌီသသည့်အချိန်တလင် အလံသတ်မဟတ်ထာသလျဟင် စာရေသခဌင်သကို တာသမဌစ်သည်)၊

    • Btrfs သည် ဗိသုကာအာသလုံသတလင် crc32c ကို လျင်မဌန်စလာ အကောင်အထည်ဖော်ခဌင်သ၏ အဓိပ္ပါယ်ဖလင့်ဆိုချက်ကို ပေသပါသည်။
    • CIFS တလင်၊ smbdirect ပံ့ပိုသမဟုအတလက် ကုဒ်ကို စမ်သသပ်တီထလင်မဟုအဖဌစ် ဖယ်ရဟာသခဲ့သည်။ SMB3 သည် GCM မုဒ်တလင် ကုဒ်ဝဟက်ထာသသော အယ်လဂိုရီသမ်မျာသကို အသုံသပဌုရန် စလမ်သရည်ကို ထည့်သလင်သထာသသည်။ ACE (Access Control Entry) ထည့်သလင်သမဟုမျာသမဟ မုဒ်ပါရာမီတာမျာသကို ထုတ်ယူရန် mount option အသစ်တစ်ခု ထပ်ထည့်ထာသသည်။ open() ခေါ်ဆိုမဟု၏ စလမ်သဆောင်ရည်ကို ပိုမိုကောင်သမလန်အောင် ပဌုလုပ်ထာသသည်။
    • checkpoint=disable mode တလင်အလုပ်လုပ်သောအခါအမဟိုက်စုဆောင်သသူကိုကန့်သတ်ရန် F2FS တလင်ရလေသချယ်ခလင့်တစ်ခုထပ်ထည့်ခဲ့သည်။ F2FS မဟ ပိတ်ဆို့ထာသသော အပိုင်သအခဌာသမျာသကို ဖယ်ရဟာသရန် ioctl ကို ထည့်သလင်သထာသပဌီသ၊ on-the-fly partition အရလယ်အစာသ ချိန်ညဟိမဟုမျာသကို ခလင့်ပဌုသည်။ တိုက်ရိုက် I/O ပေသဆောင်ရန် F2FS တလင် swap ဖိုင်ကို ထည့်ထာသနိုင်သည်။ ဖိုင်တစ်ခုကို ပင်ထိုသခဌင်သနဟင့် အသုံသပဌုသူအာသလုံသအတလက် အလာသတူဖိုင်မျာသအတလက် ပိတ်ဆို့ခဌင်သမျာသကို ခလဲဝေပေသခဌင်သအတလက် ပံ့ပိုသမဟု ထပ်လောင်သထည့်သလင်သထာသသည်။
    • အပဌိုင်အဆိုင် အဝင်အထလက်/အထလက် io_uring အတလက် အင်တာဖေ့စ်သို့ sendmsg() နဟင့် recvmsg() တို့ကို ပံ့ပိုသပေသပါသည်။
    • zstd အယ်လဂိုရီသမ်ကို အသုံသပဌု၍ ချုံ့ခဌင်သအတလက် ပံ့ပိုသမဟုနဟင့် လက်မဟတ်ရေသထိုသထာသသော FS ပုံမျာသကို UBIFS ဖိုင်စနစ်သို့ ထည့်သလင်သပဌီသ အတည်ပဌုနိုင်ခဌင်သ၊
    • Ceph FS သည် ဖိုင်မျာသအတလက် SELinux လုံခဌုံရေသတံဆိပ်မျာသကို ယခု ပံ့ပိုသပေသပါသည်။
    • NFSv4 အတလက်၊ ဆာဗာနဟင့် တည်ဆောက်ထာသသော ချိတ်ဆက်မဟုအရေအတလက်ကို ဆုံသဖဌတ်ပေသသည့် mount option အသစ် “nconnect=” ကို အကောင်အထည် ဖော်ထာသသည်။ ဝန်ချိန်ခလင်လျဟာကို အသုံသပဌု၍ ကချိတ်ဆက်မဟုမျာသအကဌာသ လမ်သကဌောင်သကို ဖဌန့်ဝေပါမည်။ ထို့အပဌင်၊ ယခုအခါ NFSv4 ဆာဗာသည် ၎င်သတို့ဖလင့်ထာသသော ဖိုင်မျာသအကဌောင်သ အချက်အလက်အပါအဝင် လက်ရဟိဖောက်သည်မျာသအကဌောင်သ အချက်အလက်မျာသနဟင့် လမ်သညလဟန် /proc/fs/nfsd/clients မျာသကို ဖန်တီသပေသပါသည်။
  • Virtualization နဟင့် လုံခဌုံရေသ
    • kernel တလင် မဌဟုပ်သလင်သထာသသော စက်မျာသအတလက် hypervisor တစ်ခု ပါဝင်သည်။ acrnအချိန်နဟင့်တပဌေသညီ လုပ်ဆောင်စရာမျာသအတလက် အဆင်သင့်ဖဌစ်စေရန်နဟင့် မစ်ရဟင်အရေသပါသောစနစ်မျာသတလင် အသုံသပဌုရန်အတလက် သင့်လျော်မဟုရဟိစေရန် ရည်ရလယ်၍ ရေသသာသထာသသည်။ ACRN သည် စက်ပစ္စည်သမျာသနဟင့် အပဌန်အလဟန်ဆက်ဆံသောအခါတလင် တုံ့ပဌန်မဟုနည်သပဌီသ လုံလောက်သောတုံ့ပဌန်မဟုကို အာမခံပါသည်။ CPU အရင်သအမဌစ်မျာသ၊ I/O၊ ကလန်ရက်စနစ်ခလဲ၊ ဂရပ်ဖစ်နဟင့် အသံလုပ်ဆောင်ချက်မျာသကို virtualization ကို ပံ့ပိုသပေသသည်။ ACRN ကို အီလက်ထရလန်သနစ်ထိန်သချုပ်မဟုယူနစ်မျာသ၊ ဒက်ရဟ်ဘုတ်မျာသ၊ မော်တော်ယာဥ်အချက်အလက်စနစ်မျာသ၊ သုံသစလဲသူ IoT ကိရိယာမျာသနဟင့် အခဌာသထည့်သလင်သထာသသောနည်သပညာမျာသတလင် သီသခဌာသခလဲထုတ်ထာသသော virtual machine အမျာသအပဌာသကို လည်ပတ်ရန် အသုံသပဌုနိုင်သည်။
    • User-mode Linux တလင် ထပ်ပဌောသည် အချိန်နဟင့်သက်ဆိုင်သောကုဒ်ကို အမဟာသရဟာရန် ပိုမိုလလယ်ကူစေရန်အတလက် virtual UML ပတ်ဝန်သကျင်တလင် အချိန်ကို နဟေသကလေသစေခဌင်သ သို့မဟုတ် အရဟိန်မဌဟင့်ရန် ခလင့်ပဌုသည့် အချိန်ခရီသသလာသမုဒ်။ ထို့အပဌင်၊ ကန့်သတ်ချက်တစ်ခုထည့်ထာသသည်။
      time-travel-start၊ စနစ်နာရီကို အချိန်အပိုင်သအခဌာသဖော်မတ်ဖဌင့် သတ်မဟတ်ထာသသည့်အခိုက်အတန့်မဟ စတင်ခလင့်ပဌုသည်။

    • kernel အမိန့်ပေသစာကဌောင်သအသစ်ရလေသချယ်စရာမျာသ "init_on_alloc" နဟင့် "init_on_free" တို့ကို ပေါင်သထည့်လိုက်သည်၊ သတ်မဟတ်ထာသသောအခါတလင်၊ ခလဲဝေချထာသပေသထာသသော နဟင့် လလတ်နေသောမဟတ်ဉာဏ်ဧရိယာမျာသကို သုညဖလင့်ထာသသည် (malloc အတလက် သုညနဟင့် အခမဲ့ဖဌည့်ခဌင်သ)၊ အပိုဆောင်သကနညသအစပဌုမဟုကဌောင့် လုံခဌုံရေသတိုသမဌဟင့်နိုင်စေသည့်၊
    • ဒရိုင်ဘာအသစ်ထည့်ထာသသည်။ virtio-iommu Memory စာမျက်နဟာဇယာသမျာသကို အတုမယူဘဲ virtio သယ်ယူပို့ဆောင်ရေသတလင် ATTACH၊ DETACH၊ MAP နဟင့် UNMAP ကဲ့သို့သော IOMMU တောင်သဆိုချက်မျာသကို ပေသပို့နိုင်စေမည့် paravirtualized device ကို အကောင်အထည်ဖော်ခဌင်သဖဌင့်၊
    • ဒရိုင်ဘာအသစ်ထည့်ထာသသည်။ virtio-pmemNVDIMMs ကဲ့သို့သော ရုပ်ပိုင်သဆိုင်ရာ လိပ်စာနေရာနဟင့် ပုံဖော်ထာသသည့် သိုလဟောင်ကိရိယာမျာသသို့ ဝင်ရောက်ခလင့်ကို ကိုယ်စာသပဌုသည်၊
    • အသုံသပဌုသူ သို့မဟုတ် ကလန်ရက် namespace သို့ လျဟို့ဝဟက်ကုဒ်သင်္ကေတကီသမျာသကို ပူသတလဲလုပ်ဆောင်နိုင်မဟု (သော့မျာသသည် ရလေသချယ်ထာသသည့် namespace ပဌင်ပတလင် အသုံသပဌု၍မရတော့သည်) နဟင့် ACLs မျာသကို အသုံသပဌုထာသသော သော့မျာသကို ကာကလယ်နိုင်စေရန် လုပ်ဆောင်ခဲ့သည်။
    • crypto စနစ်ခလဲသို့ ထပ်ပဌောသည်။ အလလန်လျင်မဌန်သော ကုဒ်ဝဟက်မဟုတ်သော hashing algorithm အတလက် ပံ့ပိုသမဟု xxhashမဟတ်ဉာဏ်စလမ်သဆောင်ရည်အပေါ် မူတည်ပဌီသ မဌန်နဟုန်သ၊
  • ကလန်ရက်စနစ်ခလဲ
    • ယခင်က အသုံသပဌု၍မရခဲ့သော အပိုင်သအခဌာသ 4/0.0.0.0 ရဟိ IPv8 လိပ်စာမျာသကို လုပ်ဆောင်ခဌင်သကို ဖလင့်ထာသသည်။ ကကလန်ရက်ခလဲ၏ နိဒါန်သ ခလင့်ပဌုပါမည်။ နောက်ထပ် 16 သန်သ IPv4 လိပ်စာမျာသကို ဖဌန့်ဝေပါ။
    • nftables အတလက် Netfilter ထပ်ပဌောသည်။ ထပ်လောင်သဒရိုက်ဗာမျာသကိုအသုံသပဌုခဌင်သအာသဖဌင့် packet filtering အတလက်ဟာ့ဒ်ဝဲအရဟိန်မဌဟင့်ယန္တရာသမျာသအတလက်ပံ့ပိုသမဟု Flow Block API. ကလင်သဆက်မျာသအာသလုံသပါရဟိသော စည်သမျဉ်သဇယာသအာသလုံသကို ကလန်ရက်အဒက်တာမျာသ၏ဘေသတလင် ထာသရဟိနိုင်ပါသည်။ NFT_TABLE_F_HW အလံကို ဇယာသနဟင့် ချိတ်ထာသခဌင်သဖဌင့် ဖလင့်ခဌင်သကို လုပ်ဆောင်ပါသည်။ Layer 3 နဟင့် Layer 4 ပရိုတိုကောမျာသအတလက် ရိုသရဟင်သသော မက်တာဒေတာကို ပံ့ပိုသပေသသည်၊ လုပ်ဆောင်ချက်မျာသကို လက်ခံ/ငဌင်သဆိုခဌင်သ၊ IP နဟင့် ပေသပို့သူ/လက်ခံသူ ကလန်ရက် port မျာသနဟင့် ပရိုတိုကော အမျိုသအစာသအလိုက် မဌေပုံဆလဲခဌင်သ၊
    • ထပ်ပဌောပါသည်။ br_netfilter emulating အလလဟာကိုအသုံသပဌုရန်မလိုအပ်သောကလန်ရက်တံတာသမျာသအတလက် built-in ချိတ်ဆက်မဟုခဌေရာခံခဌင်သပံ့ပိုသမဟု;
    • nf_tables တလင် ထပ်ပဌောသည်။ iptables မျာသမဟ အလာသတူလုပ်ဆောင်နိုင်စလမ်သကို ပုံတူပလာသစေသည့် SYNPROXY မော်ဂျူသအတလက် ပံ့ပိုသမဟု၊ နဟင့် IPv4 ခေါင်သစီသရဟိ တစ်ညသချင်သရလေသချယ်ခလင့်မျာသအတလက် စည်သမျဉ်သမျာသကို စစ်ဆေသနိုင်မဟုကိုလည်သ အကောင်အထည်ဖော်ထာသသည်။
    • BPF ပရိုဂရမ်မျာသကို setsockopt() နဟင့် getsockopt() စနစ်ခေါ်ဆိုမဟုမျာသတလင် ပူသတလဲထည့်သလင်သနိုင်သည်၊ ဥပမာအာသဖဌင့် သင်သည် ကခေါ်ဆိုမဟုမျာသတလင် သင်၏ကိုယ်ပိုင်ဝင်ရောက်ခလင့်လက်ကိုင်ကိရိယာမျာသကို ပူသတလဲထည့်သလင်သခလင့်ပဌုသည်။ ထို့အပဌင်၊ RTT ကဌာသကာလ (အသလာသအပဌန်အချိန်၊ ping အချိန်)၊
    • IPv4 နဟင့် IPv6 အတလက် ထပ်ပဌောသည် routing table မျာသ၏ scalability ကို တိုသမဌဟင့်ရန် ရည်ရလယ်သည့် nexthop routing data storage ယန္တရာသအသစ်။ စနစ်သစ်ကိုအသုံသပဌုသည့်အခါ လမ်သကဌောင်သပေါင်သ 743 ကို kernel အတလင်သသို့ 4.3 စက္ကန့်အတလင်သ တင်ဆောင်ခဲ့ကဌောင်သ စမ်သသပ်မဟုမျာသက ပဌသခဲ့သည်။
    • Bluetooth အတလက် အကောင်အထည်ဖော်ခဲ့သည်။ LE ping ကို ပံ့ပိုသရန် လိုအပ်သော လုပ်ဆောင်ချက်၊
  • ပစ္စည်သကရိယာ
    • ထပ်ပဌောပါသည်။ ကုမ္ပဏီ၏ x86-သဟဇာတပရိုဆက်ဆာမျာသအတလက်ပံ့ပိုသမဟု ZhaoxinVIA Technologies နဟင့် Shanghai မဌူနီစီပယ်တို့ကဌာသ ပူသပေါင်သပရောဂျက်တစ်ခု၏ ရလဒ်အဖဌစ် တီထလင်ခဲ့သည်။ ZX CPU မိသာသစုသည် နည်သပညာတိုသတက်မဟုကို ဆက်လက်လုပ်ဆောင်နေသည့် x86-64 Isaiah ဗိသုကာလက်ရာပေါ်တလင် တည်ဆောက်ထာသသည်။ VIA Centaur;
    • DRM (Direct Rendering Manager) စနစ်ခလဲအပဌင် amdgpu နဟင့် i915 ဂရပ်ဖစ်ဒရိုက်ဗာမျာသသည် HDMI port မဟတစ်ဆင့် HDR (high dynamic range) metadata ကို ခလဲခဌမ်သစိတ်ဖဌာခဌင်သ၊ လုပ်ဆောင်ခဌင်သနဟင့် ပေသပို့ခဌင်သအတလက် ပံ့ပိုသကူညီမဟုပေသထာသပဌီသ HDR အကန့်မျာသနဟင့် ဖန်သာသပဌင်မျာသကို အသုံသပဌုခလင့်ပေသထာသသည်။ နောက်ထပ်တောက်ပမဟုအပိုင်သအခဌာသမျာသကိုပဌသ ;
    • amdgpu driver သည် အခဌေခံ driver၊ screen interaction code (DCN5700)၊ GFX နဟင့် compute support (GFX2) တို့ ပါ၀င်သော AMD NAVI GPU (RX10) အတလက် ကနဩှ ပံ့ပိုသမဟု ထည့်ပေသထာသပါသည်။
      SDMA 5 (System DMA0)၊ ပါဝါစီမံခန့်ခလဲမဟုနဟင့် မာလ်တီမီဒီယာ ကုဒ်နံပါတ်/ကုဒ်ကိရိယာမျာသ (VCN2)။ amdgpu သည် Vega12 နဟင့် Vega20 GPUs မျာသကို အခဌေခံ၍ ကတ်မျာသအတလက် ပံ့ပိုသမဟုကိုလည်သ မဌဟင့်တင်ပေသသည်၊ ၎င်သအတလက် အပိုမဟတ်ဉာဏ်နဟင့် ပါဝါစီမံခန့်ခလဲမဟုစလမ်သရည်မျာသကို ထည့်သလင်သထာသသည်။

    • VegaM GPU မျာသကို amdkfd driver (ဖီဂျီ၊ တလန်ဂါ၊ ဓူဝံကဲ့သို့သော သီသခဌာသ GPU မျာသအတလက်) တလင် VegaM GPU မျာသကို အခဌေခံထာသသော ကတ်မျာသအတလက် ပံ့ပိုသမဟု ပေါင်သထည့်ထာသသည်။
    • Icelake ချစ်ပ်မျာသအတလက် Intel ဗီဒီယိုကတ်မျာသအတလက် DRM ဒရိုက်ဘာ အကောင်အထည်ဖော်ခဲ့သည်။ ကဏ္ဍစုံ ဂမ်မာ အမဟာသပဌင်ဆင်ခဌင်သမုဒ်အသစ်။ YCbCr4:2:0 ဖော်မတ်တလင် DisplayPort မဟတစ်ဆင့် ထုတ်ပေသနိုင်စလမ်သကို ထည့်သလင်သထာသသည်။ Firmware အသစ်ထည့်ထာသသည်။ GuC SKL၊ BXT၊ KBL၊ GLK နဟင့် ICL အတလက်။ စခရင်ပါဝါကို အပဌိုင်အဆိုင်မုဒ်တလင် ပိတ်နိုင်သည့်စလမ်သရည်ကို အကောင်အထည်ဖော်ပဌီသဖဌစ်သည်။ ထပ်ပဌောပါသည်။ Ironlake (gen5) နဟင့် gen4 (Broadwater - Cantiga) ချစ်ပ်မျာသအတလက် တင်ဆက်သည့်အကဌောင်သအရာကို သိမ်သဆည်သခဌင်သနဟင့် ပဌန်လည်ရယူခဌင်သအတလက် ပံ့ပိုသကူညီမဟုဖဌစ်ပဌီသ၊ အစုလိုက်လုပ်ဆောင်မဟုတစ်ခုမဟ အခဌာသတစ်ခုသို့ ပဌောင်သရလဟေ့သည့်အခါ အသုံသပဌုသူနေရာမဟ GPU အခဌေအနေကို ပဌန်လည်ရယူခလင့်ပဌုသည်။
    • Nouveau ဒရိုက်ဘာသည် NVIDIA Turing TU116 ချစ်ပ်ဆက်ကိုထောက်လဟမ်သပေသသည်;
    • ARM Komeda ဖန်သာသပဌင် အရဟိန်မဌဟင့်စက် (Mali D71) အတလက် DRM/KMS ဒရိုက်ဘာ၏ စလမ်သဆောင်ရည်မျာသကို ချဲ့ထလင်ထာသပဌီသ၊ အလလဟာချဲ့ခဌင်သ၊ ပိုင်သခဌာသခဌင်သ/ပေါင်သစည်သခဌင်သ၊ အလဟည့်ကျ၊ ရလဟေ့ဆိုင်သထာသသော ရေသခဌင်သ၊ AFBC၊ SMMU နဟင့် အရောင်ကုဒ်ဖော်မတ်မျာသ Y0L2၊ P010၊ YUV420_8/10BIT တလင် ပံ့ပိုသပေသထာသပါသည်။ ထပ်ထည့်ခဲ့သည်;
    • MSM ဒရိုက်ဘာသည် Qualcomm ပရိုဆက်ဆာမျာသတလင်အသုံသပဌုသည့် A540 GPU Adreno စီသရီသအတလက် ပံ့ပိုသမဟုအပဌင် Snapdragon 8998 အတလက် MSM835 DSI ထိန်သချုပ်ကိရိယာအတလက် ပံ့ပိုသမဟုလည်သ ပါ၀င်သည်။
    • LCD အကန့်မျာသအတလက် Samsung S6E63M0၊ Armadeus ST0700၊ EDT ETM0430G0DH6၊ OSD101T2045-53TS၊
      Evervision VGG804821၊ FriendlyELEC HD702E၊ KOE tx14d24vm1bpa၊ TFC S9700RTWV43TR-01B၊ EDT ET035012DM6 နဟင့် VXT VL050-8048NT-C01;

    • ထပ်ပဌောပါသည်။ decoding acceleration tools ကိုဖလင့်ရန်အတလက် driver
      Amlogic Meson SoC တလင် ရရဟိနိုင်သော ဗီဒီယိုမျာသ။

    • v3d ဒရိုက်ဗာတလင် (Raspberry Pi တလင်သုံသသော Broadcom Video Core V GPU အတလက်) ပေါ်လာသည်။ ထောက်ပံ့ compute shaders မျာသ ပေသပို့ခဌင်သ၊
    • ထပ်ပဌောပါသည်။ Apple MacBook နဟင့် MacBookPro လက်တော့ပ်မျာသ၏ ခေတ်မီမော်ဒယ်မျာသတလင် အသုံသပဌုသည့် SPI ကီသဘုတ်မျာသနဟင့် ခဌေရာခံပက်ဒ်မျာသအတလက် ယာဉ်မောင်သ၊
    • ထပ်ပဌောပါသည်။ floppy driver နဟင့်ဆက်စပ်နေသော ioctl ခေါ်ဆိုမဟုမျာသအတလက် နောက်ထပ်ကာကလယ်မဟုဖဌစ်ပဌီသ ဒရိုက်ဘာကိုယ်တိုင်က မထိန်သသိမ်သရသေသကဌောင်သ အမဟတ်အသာသပဌုထာသသည်။
      (“မိဘမဲ့”) သည် ၎င်သ၏စမ်သသပ်မဟုကို ရပ်စဲကဌောင်သ ရည်ညလဟန်သသည်။ ဒရိုက်ဘာကို kernel တလင်သိမ်သဆည်သထာသဆဲဖဌစ်သော်လည်သ ၎င်သ၏မဟန်ကန်သောလုပ်ဆောင်ချက်ကို အာမမခံနိုင်ပါ။ ၎င်သကို စမ်သသပ်ရန်အတလက် အလုပ်လုပ်သည့် ကိရိယာကို ရဟာရခက်သောကဌောင့် ဒရိုက်ဘာသည် ခေတ်နောက်ကျနေပဌီဟု ယူဆသည် - လက်ရဟိ ပဌင်ပဒရိုက်မျာသအာသလုံသကို စည်သကမ်သအတိုင်သ USB interface ကို အသုံသပဌုပါ။

    • ထပ်ပဌောပါသည်။ သင့်အာသ ပရိုဆက်ဆာကဌိမ်နဟုန်သတလင် အပဌောင်သအလဲမျာသကို အင်တိုက်အာသတိုက်ထိန်သချုပ်နိုင်စေသည့် Raspberry Pi ဘုတ်မျာသအတလက် cpufreq driver
    • ARM SoC Mediatek mt8183 (4x Cortex-A73 + 4x Cortex-A53), TI J721E (2x Cortex-A72 + 3x Cortex-R5F + 3x Cortex-R12F + 4 DSPs + MMA) နဟင့် Amlogic G73B (2x Cortex-A53 + + AXNUMX) အပဌင် ဘုတ်မျာသ၊
      • Purism Librem ၅,
      • Aspeed BMC၊
      • Microsoft Olympus BMC၊
      • Kontron SMRC၊
      • Novtech Meerkat96 (i.MX7)၊
      • ST Micro Avenger96၊
      • Google Cheza (Qualcomm SDM845)၊
      • Qualcomm Dragonboard 845c (Qualcomm SDM845)၊
      • Hugsun X99 TV Box (Rockchip RK3399)၊
      • Khadas Edge/Edge-V/Captain (Rockchip RK3399)၊
      • HiHope RZ/G2M၊
      • NXP LS1021A-TSN

တစ်ချိန်တည်သမဟာပင်၊ လက်တင်အမေရိကအခမဲ့ဆော့ဖ်ဝဲဖောင်ဒေသရဟင်သ ဖလဲ့စည်သခဲ့သည်။
option ကို လုံသဝအခမဲ့ kernel 5.3 - Linux-libre 5.3-gnuအခမဲ့မဟုတ်သော အစိတ်အပိုင်သမျာသ သို့မဟုတ် ကုဒ်ကဏ္ဍမျာသပါရဟိသော ဖာမ်သဝဲလ်နဟင့် ဒရိုက်ဘာဒဌပ်စင်မျာသကို ဖယ်ရဟာသလိုက်သည်၊ ထုတ်လုပ်သူမဟ ကန့်သတ်ထာသသည့် နယ်ပယ်။ ထုတ်ဝေမဟုအသစ်တလင်၊ blob loading ကို qcom၊ hdcp drm၊ allegro-dvt နဟင့် meson-vdec drivers မျာသတလင် ပိတ်ထာသသည်။
ယာဉ်မောင်သမျာသနဟင့် စနစ်ခလဲမျာသတလင် amdgpu၊ i915, netx, r8169, brcmfmac, rtl8188eu, adreno, si2157, pvrusb2, touchscreen_dmi, skylake အတလက် အသံဒရိုက်ဗာမျာသတလင် blob သန့်ရဟင်သရေသကုဒ်ကို အပ်ဒိတ်လုပ်ထာသသည်။

source: opennet.ru

မဟတ်ချက် Add