Intel တွင်အလုပ်လုပ်ပြီး Crates.io ဖွံ့ဖြိုးတိုးတက်မှုကိုကြီးကြပ်သည့်ကော်မတီတွင်ရှိသော Josh Triplett သည် Open Source Technology Summit တွင်စကားပြောခဲ့သည်။
ဖန်တီးနေသည့် လုပ်ငန်းအဖွဲ့တွင်၊ Intel မှ အင်ဂျင်နီယာများနှင့်အတူ Rust developer များသည် စနစ်ပရိုဂရမ်ရေးဆွဲခြင်းအတွက် Rust တွင် အကောင်အထည်ဖော်ရန် လိုအပ်သည့် လုပ်ဆောင်နိုင်စွမ်းကို သတ်မှတ်သည့် သတ်မှတ်ချက်များကို ပြင်ဆင်မည်ဖြစ်သည်။ စနစ်ပရိုဂရမ်ရေးဆွဲခြင်းသည် အခွင့်ထူးခံပရိုဆက်ဆာညွှန်ကြားချက်များကို လုပ်ဆောင်ခြင်းနှင့် ပရိုဆက်ဆာ၏အခြေအနေအသေးစိတ်အချက်အလက်များကို ရယူခြင်းကဲ့သို့သော အဆင့်နိမ့်ခြယ်လှယ်မှုများ လိုအပ်သည်။ Rust အတွက် တီထွင်ထားပြီးသား အလားတူ အင်္ဂါရပ်များအနက်၊ အမည်မဖော်လိုသော ဖွဲ့စည်းပုံများ၊ သမဂ္ဂများအတွက် ပံ့ပိုးမှု၊ စည်းဝေးပွဲဘာသာစကား ထည့်သွင်းမှုများ (“asm!” macro) နှင့် BFLOAT16 ရေပေါ်အမှတ်ဖော်မတ်တို့ကို မှတ်သားထားသည်။
စနစ်ပရိုဂရမ်ရေးဆွဲခြင်း၏အနာဂတ်သည် Rust နှင့်သက်ဆိုင်သည်ဟု Josh ကယုံကြည်ပြီး ခေတ်သစ်ဖြစ်ရပ်မှန်များတွင် C language သည် လွန်ခဲ့သည့်နှစ်များက Assembly မှသိမ်းပိုက်ထားသည့်နေရာကိုတောင်းဆိုနေသည်။ သံချေး
အဆင့်နိမ့် Memory ဖြင့် အလုပ်လုပ်ခြင်းကြောင့် ဖြစ်ပေါ်လာသော C language တွင် ဖြစ်ပေါ်လာသော ပြဿနာများမှ developer များကို သက်သာရာရစေရုံသာမက ခေတ်မီ ပရိုဂရမ်ရေးဆွဲခြင်းဆိုင်ရာ ပါရာဒိုင်းများ ဖွံ့ဖြိုးတိုးတက်ရေးတွင်လည်း ၎င်းကို အသုံးပြုရန် အခွင့်အရေးကို ပေးပါသည်။
စဉ်အတွင်း
Josh သည် Rust ဘာသာစကားရှိ Linux kernel တွင် driver များကို တီထွင်နိုင်စွမ်းကို ထည့်သွင်းရန် စိတ်ကူးရလာခဲ့ပြီး ၎င်းသည် လွတ်ကင်းပြီးနောက် memory access ကဲ့သို့သော ပြဿနာများမှ ကင်းလွတ်ကာ အနည်းငယ်သာ အားစိုက်ထုတ်ခြင်းဖြင့် ပိုမိုဘေးကင်းပြီး ပိုမိုကောင်းမွန်သော drivers များကို ဖန်တီးနိုင်စေမည်ဖြစ်သည်။ pointer dereferences နှင့် buffer overruns များ။
Linux kernel ၏ တည်ငြိမ်သော ဌာနခွဲကို ထိန်းသိမ်းရန် တာဝန်ရှိသော Greg Kroah-Hartman က၊ ဥပမာ C ထက် အမှန်တကယ် အားသာချက်များရှိပါက kernel တွင် Rust ဘာသာစကားဖြင့် driver များ ရေးဆွဲခြင်းအတွက် မူဘောင်တစ်ခုကို ထည့်သွင်းရန် အဆင်သင့်ရှိကြောင်း ထုတ်ဖော်ပြောကြားခဲ့သည်၊၊ Kernel API နှင့် ချိတ်ဆက်မှု။ ထို့အပြင်၊ Greg သည် kernel ပေါ်တွင် တည်ဆောက်မှုမှီခိုမှုတစ်ခုအဖြစ် Rust မပါဝင်စေရန် မူလပုံစံအတိုင်း လုပ်ဆောင်ခြင်းမရှိသည့် ရွေးချယ်မှုတစ်ခုအဖြစ် Greg ကယူဆသည်။
အဖွဲ့များစွာသည် ဤလမ်းကြောင်းအတိုင်း လုပ်ဆောင်နေပြီဟု သိလာရသည်။ ဥပမာအားဖြင့်၊ ကုမ္ပဏီ "ငါးစည်" မှ developer များ၊
စင်ပြိုင်
ရည်ရွယ်ထားသည့် လုပ်ဆောင်နိုင်စွမ်းအားလုံးကို အကောင်အထည်မဖော်ရသေးသော်လည်း မူဘောင်သည် အလုပ်အတွက် အတော်လေးသင့်လျော်ပြီး Raspberry Pi 9512 ဘုတ်တွင် ပံ့ပိုးပေးထားသော LAN3 USB Ethernet controller အတွက် အလုပ်လုပ်သော driver တစ်ခုရေးရန် အသုံးပြုခဲ့သည်။ ရှိပြီးသား smsc95xx driver တွင် ရေးထားသော၊ C ဘာသာစကား။ Rust တွင် ဒရိုက်ဘာကို တီထွင်သောအခါတွင် မော်ဂျူးအရွယ်အစားနှင့် အပိုခေါင်းစဥ်များသည် Rust တွင် အရေးမပါသဖြင့် အကန့်အသတ်ရှိသော အရင်းအမြစ်များရှိသည့် စက်ပစ္စည်းများအတွက် မူဘောင်ကို အသုံးပြုခွင့်ပေးသည့် မူဘောင်ကို မှတ်သားထားသည်။
source: opennet.ru