د لینوکس کرنل لپاره د پیچ ​​نوې نسخه د زنګ ژبې لپاره ملاتړ سره

میګیویل اوجیدا، د Rust-for-Linux پروژې لیکوال، د لینکس کرنل پراختیا کونکو لخوا په پام کې نیولو لپاره د زنګ په ژبه کې د وسیلې ډرایورانو رامینځته کولو لپاره د v5 اجزاو خوشې کولو وړاندیز وکړ. دا د پیچونو شپږمه نسخه ده، د لومړۍ نسخې په پام کې نیولو سره، د نسخې شمیره پرته خپره شوې. د زنګ ملاتړ تجربه کونکی ګڼل کیږي، مګر دمخه د لینکس-راتلونکي څانګې کې شامل شوی او په کافي اندازه رامینځته شوی ترڅو د کرنل فرعي سیسټمونو کې د خلاصون پرتونو رامینځته کولو کار پیل کړي ، او همدارنګه د ډرایورونو او ماډلونو لیکلو لپاره. پراختیا د ګوګل او ISRG (انټرنیټ امنیت څیړنې ګروپ) لخوا تمویل کیږي، کوم چې د لیټس انکریپټ پروژې بنسټ ایښودونکی دی او HTTPS ته وده ورکوي او د انټرنیټ امنیت ښه کولو لپاره د ټیکنالوژیو پراختیا ته وده ورکوي.

په یاد ولرئ چې وړاندیز شوي بدلونونه دا ممکنه کوي چې د ډرایورانو او کرنل ماډلونو رامینځته کولو لپاره د دویمې ژبې په توګه د Rust کارول. د زنګ ملاتړ د یو اختیار په توګه وړاندې کیږي چې د ډیفالټ لخوا فعال شوی نه وي او پایله یې نه کیږي چې زنګ د کرنل لپاره د اړین جوړونې انحصار په توګه شامل شي. د ډرایور پراختیا لپاره د زنګ کارول به تاسو ته اجازه درکړي د لږترلږه هڅو سره خوندي او غوره ډرایورونه رامینځته کړئ ، له ستونزو څخه پاک وي لکه د خلاصیدو وروسته حافظې ته لاسرسی ، د نول پوائنټر ډیریفرنسونه ، او بفر اوورون.

د حافظې خوندي اداره کول په زنګ کې د تالیف په وخت کې د حوالې چیک کولو له لارې چمتو شوي ، د شیانو ملکیت تعقیب او د څیز ژوند وخت (سوق) ، او همدارنګه د کوډ اجرا کولو پرمهال د حافظې لاسرسي سموالي ارزونې له لارې. زنګ د انټیجر د زیاتیدو پروړاندې محافظت هم چمتو کوي ، د کارولو دمخه د متغیر ارزښتونو لازمي پیل ته اړتیا لري ، په معیاري کتابتون کې خطاګانې په ښه توګه اداره کوي ، د ډیفالټ لخوا د بدلیدونکي حوالې او متغیرونو مفهوم پلي کوي ، د منطقي غلطیو کمولو لپاره قوي جامد ټایپینګ وړاندیز کوي.

د پیچونو نوې نسخه د پیچونو د لومړۍ، دویمې، دریمې، څلورمې او پنځمې ګڼې د بحث په ترڅ کې د شویو تبصرو له منځه وړلو ته دوام ورکوي. په نوې نسخه کې:

  • Toolkit د Rust 1.59.0 خوشې کولو لپاره تازه شوی. د الوک کتابتون یو ډول هم د زنګ نوي نسخې سره همغږي شوی ، د "ویرې" حالت احتمالي نسل له مینځه وړي کله چې غلطي پیښیږي ، لکه د حافظې څخه بهر. د اسمبلر داخلولو کارولو وړتیا ("خصوصیت(global_asm)") ثبات شوی.
  • په Rust کې د کوربه برنامو رامینځته کولو لپاره ملاتړ اضافه شوی چې د کرنل تالیف پرمهال کارول کیږي.
  • د دمخه تولید شوي هدف پلیټ فارم مشخصاتو فایلونو وړاندې کولو پرځای ، دوی په متحرک ډول د کرنل ترتیب پراساس تولید شوي.
  • د HAVE_RUST کرنل پیرامیټر اضافه شوی ترڅو د معمارۍ لپاره فعال کړي چې د زنګ ملاتړ کوي.
  • لنډیزونه د هارډویر سیډو - تصادفي نمبر جنریټر لپاره د زنګ کوډ کې کارولو لپاره وړاندیز شوي.
  • د "Error::" مخکینۍ (د مثال په توګه، "return Err(EINVAL)") پرته د تېروتنې کوډونو کارولو ته اجازه ورکړل شوې ترڅو په C کې د تېروتنې کوډونو نږدې اداره کولو لپاره.
  • د دودیز C-strings لپاره د "CSstring" ډول اضافه شوی. د فارمټر او بفر ډولونه یوځای شوي.
  • د بول او لاک انفو ډولونه اضافه شوي.
  • د سپن لاکونو پلي کول ساده شوي.

سرچینه: opennet.ru

Add a comment