Bareflank သည် 64-bit Intel CPU များတွင် Linux၊ Windows နှင့် UEFI တို့ကို ပံ့ပိုးပေးသည်။ Intel VT-x နည်းပညာကို ဟာ့ဒ်ဝဲ မျှဝေခြင်းအတွက် virtual machine အရင်းအမြစ်များကို အသုံးပြုပါသည်။ macOS နှင့် BSD စနစ်များအတွက် ပံ့ပိုးမှုအား အနာဂတ်အတွက် စီစဉ်ထားသည့်အပြင် ARM64 နှင့် AMD ပလပ်ဖောင်းများတွင် လုပ်ဆောင်နိုင်စွမ်းရှိသည်။ ထို့အပြင်၊ ပရောဂျက်သည် VMM (Virtual Machine Manager)၊ VVM modules များကိုတင်ရန်အတွက် ELF loader နှင့် user space မှ hypervisor ကို ထိန်းချုပ်ရန်အတွက် bfm application ကို loading အတွက် ၎င်း၏ကိုယ်ပိုင် driver ကို တီထွင်နေပါသည်။ ၎င်းသည် C++ 11/14 သတ်မှတ်ချက်များတွင် သတ်မှတ်ထားသော အစိတ်အပိုင်းများကို အသုံးပြု၍ extension များရေးသားခြင်းအတွက် tools များ၊ exception stack (unwind) နှင့် constructors/destructors များအသုံးပြုမှုနှင့် exception handlers များကို မှတ်ပုံတင်ခြင်းအတွက် ၎င်း၏ကိုယ်ပိုင် runtime library ကို ပံ့ပိုးပေးပါသည်။
Bareflank ကို အခြေခံ၍ virtualization စနစ်တစ်ခုကို တီထွင်နေပါသည်။
Bareflank 2.0 ၏ အဓိက တီထွင်ဆန်းသစ်မှုများ
- virtual machine တွင် operating system ၏နောက်ဆက်တွဲလုပ်ဆောင်မှုအတွက် Bareflank ကို UEFI မှတိုက်ရိုက်ဖွင့်ခြင်းအတွက် ပံ့ပိုးမှု ထပ်လောင်းထည့်သွင်းထားသည်။
- Linux ရှိ SLAB/Buddy memory managers များနှင့် အလားတူ ဒီဇိုင်းထုတ်ထားသော memory manager အသစ်ကို အကောင်အထည်ဖော်ထားပါသည်။ မမ်မိုရီ မန်နေဂျာအသစ်သည် အကွဲကွဲအပြားပြား လျှော့ချခြင်းကို သရုပ်ပြပြီး ပိုမိုမြင့်မားသော စွမ်းဆောင်ရည်ကို ခွင့်ပြုပေးပြီး hypervisor မှတဆင့် တက်ကြွသော မှတ်ဉာဏ်ခွဲဝေမှုကို ပံ့ပိုးပေးသည်။
bfdriver Hypervisor ၏ ကနဦးအရွယ်အစားကို လျှော့ချနိုင်ပြီး CPU cores အရေအတွက်ပေါ်မူတည်၍ အကောင်းဆုံးစကေးကို လျှော့ချနိုင်စေပါသည်။ - အမိန့်ပေးစကားပြန်မပါဘဲ CMake ကိုအခြေခံထားသော တည်ဆောက်မှုစနစ်အသစ်သည် hypervisor စုစည်းမှုကို သိသာထင်ရှားစွာ အရှိန်မြှင့်နိုင်စေပြီး ARM ကဲ့သို့သော အပိုဗိသုကာများအတွက် အနာဂတ်ပံ့ပိုးမှုကို ရိုးရှင်းစေသည်။
- ကုဒ်ကို ပြန်လည်ဖွဲ့စည်းပြီး အရင်းအမြစ်စာသားများ၏ ဖွဲ့စည်းပုံကို ရိုးရှင်းအောင် ပြုလုပ်ထားသည်။ ကုဒ်ပွားခြင်းမလိုအပ်ဘဲ ဟိုက်ပါကာနယ်ကဲ့သို့သော ဆက်စပ်ပရောဂျက်များအတွက် ပိုမိုကောင်းမွန်သော ပံ့ပိုးမှု။ ပိုပြီး ပြတ်သားစွာ ခွဲထားတဲ့ ကုဒ်
hypervisor ၊ စာကြည့်တိုက်ကိုဖြေလျှော့ပါ၊ runtime၊ ထိန်းချုပ်ရေးကိရိယာများ၊ bootloader နှင့် SDK၊ - API အများစုကို C++ တွင် ယခင်ကအသုံးပြုခဲ့သော အမွေဆက်ခံမှုယန္တရားများအစား၊ အသုံးပြုမှုသို့ ပြောင်းထားသည်။
ကိုယ်စားလှယ်အဖွဲ့ API ကို ရိုးရှင်းစေသော၊ စွမ်းဆောင်ရည် တိုးမြင့်လာပြီး အရင်းအမြစ်သုံးစွဲမှုကို လျှော့ချပေးသည်။
source: opennet.ru