ပညာရှိ စာချုပ်များ
Iroha ငွေပေးချေမှုတွေမှာ Executable အသုံးဝင်ဝန်ဆောင်မှုတွေ လုပ်ဆောင်ပါတယ်။ လက်ရှိ ဒေတာပုံစံက အောက်ပါအချက်တွေကို ထောက်ပံ့တယ်။
Executable::Instructions: Iroha အထူးညွှန်ကြားချက်များ၏ အစီအစဉ်ချထားသောအစုExecutable::ContractCall: စေလွှတ်ထားသော သဘောတူစာချုပ်ဖြစ်စဉ်အတွက် ဘေးညွှန်ကြားချက်ခေါ်ဆိုမှုExecutable::Ivm: Iroha VM bytecodeExecutable::IvmProved: ကြိုတင် တွက်ချက်ထားသော ညွှန်ကြားမှု အပေါ်လွှာနှင့် သက်သေခံတာဝန်များရှိသည့် Iroha VM ဘိုက်ကုဒ်
Kotodama သည် Iroha ၏ အဆင့်မြင့် စမတ်ကန်ထရိုက် ဘာသာစကားဖြစ်သည်။ .ko အရင်းအမြစ်ဖိုင်ကို တိကျသတ်မှတ်ထားသော IVM ဘိုက်ကုဒ်အဖြစ် စုစည်းပြီး တပ်ဆင်ရန်အတွက် .to အာတီဖက်အဖြစ် ထုံးစံအတိုင်း သိမ်းဆည်းသည်။ Kotodama သည် IVM ကိုသာ ပစ်မှတ်ထားသည်။ RISC-V သို့မဟုတ် WebAssembly ကို ပစ်မှတ်မထားပါ။
ပထမဆုံး release တွင် ABI version 1 ကိုသာ support လုပ်သည်။ syscall နှင့် pointer-ABI policy ကို contract admission နှင့် execution က အခြေအနေမဲ့ အတည်ပြုအသုံးချသည်။ runtime compatibility toggle မရှိပါ။
ပညာရှိ စာချုပ်များကို ဘယ်အချိန် အသုံးပြုရမလဲ။
Transaction ကို တိုက်ရိုက် ဖော်ပြနိုင်တဲ့အခါ ပုံမှန် ညွှန်ကြားချက်တွေကို အသုံးပြုပါ။
- မှတ်ပုံတင် (သို့) မှတ်ပုံတင်ခြင်းမရှိသော ပစ္စည်းများ
- မင်တာ၊ လောင်ကျွမ်းခြင်း သို့မဟုတ် လွှဲပြောင်းမှု အရင်းအမြစ်များ
- မီတာဒေတာကို update လုပ်ပါ။
- ခွင့်ပြုချက်များ ပေးအပ်ခြင်း (သို့) ရုပ်သိမ်းခြင်း
- trigger တစ်ခုကို လုပ်ပါ။
- ကွင်းဆက်ပေါ်က parameters ကိုသတ်မှတ်ထားသည်
Transaction မှာ packaged logic လိုတဲ့အခါမှာ Smart Contract ကိုသုံးပြီး Static instruction sequence အဖြစ် ဖော်ပြဖို့ ခက်ခဲတဲ့ (သို့) deployed contract instance ကို reference နဲ့ခေါ်ဖို့လိုတဲ့အခါမှာ သုံးပါ။
IVM လုပ်ဆောင်နိုင်သော ကိရိယာများ
Executable::Ivm သည် raw IVM bytecode ကို သယ်ဆောင်သည်။ node များသည် chain အတွက်သတ်မှတ်ထားသော runtime ကန့်သတ်ချက်များအတွင်းတွင် ထိုbytecode ကိုလုပ်ဆောင်ကြသည်။ bytecode များကိုသေးငယ်ပြီး deterministic ထားရှိပါ။ စာချုပ်များသည် ငွေပေးချေမှု အကောင်အထည်ဖော်ခြင်း၏တစ်စိတ်တစ်ပိုင်းဖြစ်ပြီး ထို့ကြောင့် သဘောတူညီချက်ကိုသက်ရောက်စေသည်။
Executable::IvmProved သည် အတည်ပြုမှု သယ်ဆောင်သည့် စီးဆင်းမှုများအတွက် ရည်ရွယ်ထားပြီး အောက်ပါအချက်များကို သယ်ဆောင်သည်။
- IVM ဘိုင်တာကုဒ်
- deterministic instruction ကို overlay လုပ်ပေးခြင်း
- အကောင်အထည်ဖော်မှု-ဖြစ်ရပ်များအတွက် ကတိပေးချက်
- ဓာတ်ငွေ့ဆိုင်ရာ မူဝါဒ ကတိပေးချက်
proof က overlay ကို executed bytecode နဲ့ ချိတ်ဆက်ပေးပါတယ်။ pipeline policy အပေါ် မူတည်ပြီး validators တွေက proof ကို စစ်ဆေးနိုင်ပြီး ထပ်မံ play execution ကို safety check အဖြစ် ထပ်မံလုပ်နိုင်ပါတယ်။
အသုံးပြုထားသော စာချုပ်ခေါ်ဆိုချက်များ
Executable::ContractCall သည် အသုံးပြုထားသော စာချုပ်ဥပမာကို လိပ်စာဖြင့် ခေါ်ယူသည်။ စာချုပ်ကုဒ်ကို သီးခြားမှတ်ပုံတင်တဲ့အခါ ဒါကိုသုံးပြီး ငွေကြေးလုပ်ငန်းများတွင် ဘိုင်တာကုဒ်ကို အမြဲမပါဘဲ ရည်ညွှန်းချက်ဖြင့်ခေါ်ဆိုသင့်ပါတယ်။
လုပ်ငန်းဆိုင်ရာ လမ်းညွှန်ချက်များ
- စာချုပ်များကို သတ်မှတ်ထားပါ။ စာချုပ်အပြုအမူသည် ဒေသတွင်း နံရံနာရီအချိန်၊ အိမ်ရှင်ဖိုင်စနစ်အခြေအနေ၊ ကွန်ရက်ခေါ်ဆိုမှုများ သို့မဟုတ် အခြား peer-local input များအပေါ် မူတည်ခြင်းမရှိရပေ။
- အသုံးဝင်ဝန်ဆောင်မှုများကို ညှိထားပါ။ ဘိုင်တကုဒ်ကြီးသည် ငွေချေးမှု အရွယ်အစားကို မြှင့်တင်ပေးပြီး ဘလော့ကာ ပျံ့နှံ့မှု ကုန်ကျစရိတ်ကို မြှင့်တင်ပေးသည်။
- ရိုးရှင်းတဲ့ Ledger အပြောင်းအလဲတွေအတွက် ရိုက်နှိပ်ထားတဲ့ ညွှန်ကြားချက်တွေကို ကြိုက်တယ်။ ဒါတွေကို စစ်ဆေးဖို့ ပိုလွယ်ပြီး အကောင်အထည်ဖော်ဖို့ စျေးသက်သာပါတယ်။
- စာချုပ်တိုးတက်မှုနဲ့ မှတ်ပုံတင် ခွင့်ပြုချက်တွေကို အရဲစွန့်မှု မြင့်မားတဲ့ လုပ်ငန်း ထိန်းချုပ်မှုတွေအဖြစ် သတ်မှတ်ပေးပါ။
နောက်တစ်ချက်ကြည့်ပါ-