لينڪس 6.2 ۾ زنگ جي ايندڙ ورهاڱي کي زنگ لاءِ سي کي تبديل ڪرڻ بابت بحث مباحثو ڪيو

RustLinux

لينڪس ۾ زنگ جي انضمام کي ڪميونٽي ۽ ڊولپرز پاران اعلي سطحي قبوليت حاصل ڪئي وئي آهي

مان هڪ اهم مسئلا جيڪي ڪنيل جي ترقي ۾ پيدا ٿيا آهن لينڪس جي هڪ ڊگهي وقت تائين، پروگرامنگ ٻولي کي تبديل ڪرڻ لاء هڪ مڪمل اميدوار ڳولڻ جو خيال آهي "سي" هڪ کان وڌيڪ جديد لاء ۽ تازو ئي زنگ جي اچڻ سان، هن خيال کي ميز تي رکڻ بند نه ڪيو آهي.

Rust جي پهرين ڏيک سان لينڪس 6.1 تي، مان ڊولپرز جي وڏي حصي جي حصي تي روح کي بحال ڪري ٿو ڪرنل ۽ جوناٿن ڪاربيٽ جو اشارو آهي ته ”اڃا به ڪافي رس نه هوندا ته ڪنيل ۾ ڪجهه به دلچسپ ڪرڻ لاءِ“، هن ٻولي جي شموليت ان بحث کي ٻيهر بحال ڪري ڇڏيو آهي ته سي ٻولي کي رد ڪرڻ جي ضرورت جي حوالي سان Rust جي حق ۾. سسٽم پروگرامنگ جي. سوال ڊولپر ڪميونٽي کي ورهائي ٿو.

آسيه لينيا زنگ ۾ Mac M1 لاءِ گرافڪس پروسيسنگ يونٽ (GPU) ڊرائيور تيار ڪرڻ جو ڪم ورتو.

زنگ ۽ سي ٻولين جي وچ ۾ توهان جي مقابلي تي ذڪر ڪري ٿو ته:

”بلڪل ڪو به موقعو ناهي ته توهان کي ڪنورنٽ رسائي مينيجمينٽ، ميموري وارن علائقن تائين پهچڻ لاءِ جاري ٿيڻ کان پوءِ جي ڪوششن، ۽ ٻين سڀني مسئلن سان منهن ڏيڻو نه پوندو جيڪڏهن توهان هن کي سي ۾ لکڻ چاهيو. سڀ اتفاقي مسئلا رسٽ سان ختم ٿي ويندا! ياداشت کي آزاد ڪيو ويندو آهي جڏهن ضرورت هجي! هڪ دفعو توهان سکيو ته ڪيئن ٺاهيو زنگ توهان لاءِ ڪم ڪري، منهنجو خيال آهي ته اهو توهان کي مهذب ڪوڊ لکڻ جي هدايت ڪندو، حتي زبان جي حفاظتي واعدن کان به ٻاهر. اهو واقعي جادوگر آهي! »

"ان بابت تمام گهڻو بحث آهي ته ڇا ڪرنيل ۾ زنگ مفيد آهي يا نه ... منهنجي تجربي ۾، اهو ان کان وڌيڪ مفيد آهي جيترو مون تصور ڪيو هو!" "، هوء شامل ڪري ٿي.

توهان جا رايا ورجائي رهيا آهن ٽيڪنيڪل سببن جي تاليف مان جيڪو شايد رسٽ جي حق ۾ سي ٻولي کي ختم ڪرڻ جو جواز ڏيو. حقيقت ۾، 15,9 خطرات مان 2288٪ جيڪي 20 سالن ۾ لينڪس ڪنيل کي متاثر ڪيا آهن (عام خطرات ۽ نمائش (CVE) ڊڪشنري مان انگ اکر) سي ٻولي ۾ خامين سان ڳنڍيل آهن، ياداشت جي انتظام سان لاڳاپيل مسئلا: بفر اوور فلوز , مختص آزاد نه ڪيو ويو، غلط يا آزاد ٿيل ميموري علائقن تائين رسائي، وغيره.

ان کان علاوه، لينڪس ڪنيل جي مکيه سنڀاليندڙ سي ٻولي سان واقف آهن، جن جي عمر اڳ ۾ ئي 3rd عمر ۾ سمجهي ويندي آهي. سنڀاليندڙن جو هڪ نئون نسل جن جي عمر جو گروپ انهن جي XNUMX سالن ۾ آهي، عروج تي آهي، ۽ اهڙيء طرح لينڪس ڪرنل لاء سنڀاليندڙ ڳولڻ جي مشڪلاتن ۾ اضافو ٿيڻ جو امڪان آهي جيڪڏهن ان جي ترقي C ٻولي ۾ جاري رهي، ڇو ته Linus Torvalds kernel لاء دروازو کوليو. مورچا ۾ ترقي.

سي ٻولي کي رد ڪرڻ جي امڪان جي سوال تي، سي ٻولي جو خالق ڪيترن ئي سببن جي فهرست ڏئي ٿو ڇو ته شروعاتن جي ناڪام ٿيڻ جو امڪان آهي جيڪو هن طرف وڃي ٿو:

VS ٻولي ٽول چين

سي ٻولي نه رڳو خود ٻولي آهي، پر ان ٻوليءَ لاءِ ترقيءَ جا سمورا اوزار پڻ آهن.

ڇا توھان پنھنجي ماخذ ڪوڊ جو جامد تجزيو ڪرڻ چاھيو ٿا؟ - اتي ڪيترائي ماڻھو ڪم ڪري رھيا آھن ھن تي سي. ٽولز لاءِ ميموري ليڪ، ڊيٽا ريس ۽ ٻيون نقص معلوم ڪرڻ لاءِ؟ ڪيتريون ئي آهن، جيتوڻيڪ توهان جي ٻولي بهتر ليس آهي.

جيڪڏھن توھان چاھيو ٿا ھڪ ننڍڙي سڃاتل پليٽ فارم کي نشانو بڻائين، موقعا آھن ته توھان استعمال ڪري رھيا آھيو C. C جي حيثيت جيئن اڄ ڪلھ ڪمپيوٽنگ جي lingua franca ان کي لکڻ جي لائق بڻائي ٿي اوزارن لاءِ، ۽ ڪيترائي اوزار لکيل آھن.

جيڪڏهن ڪنهن وٽ ڪم ڪندڙ ٽول چين آهي:

ٻولي تبديل ڪرڻ جو خطرو ڇو؟ هڪ "بهتر سي" کي نئين ٽول چين قائم ڪرڻ ۾ خرچ ڪيل وقت کي متحرڪ ڪرڻ لاءِ تمام گهڻي اضافي پيداوار پيدا ڪرڻ گهرجي. ڇا اهو ممڪن آهي اهو ڏسڻ لاءِ باقي آهي.

نئين ٻولي جي غير يقيني صورتحال

ان کان اڳ جو ڪا ٻولي پختگي تي پهچندي، اُن ۾ بگڙيل هجڻ جو امڪان آهي. ۽ ٻولي جي معنوي مسئلن کي حل ڪرڻ لاءِ خاص طور تي تبديل ٿيل آهي. ۽ ڇا ٻولي به اشتهار سان مطابقت رکي ٿي؟ اهو ڪجهه پيش ڪري سگهي ٿو جهڙوڪ "غير معمولي مرتب وقت" يا "سي کان تيز"، پر اهي مقصد حاصل ڪرڻ ڏکيو ٿي ويندا آهن جڏهن ٻولي شامل ڪري ٿي.

۽ سنڀاليندڙ؟ يقينا، توهان هڪ کليل ذريعو ٻولي کي ڇڪي سگهو ٿا، پر مون کي شڪ آهي ته ڪيتريون ئي ڪمپنيون هڪ ٻولي استعمال ڪرڻ ۾ دلچسپي رکن ٿيون جيڪي انهن کي بعد ۾ رکڻ تي مجبور ڪيو وڃي. نئين ٻولي تي بيٽنگ هڪ وڏو خطرو آهي.

حقيقت اها آهي ته ٻولي شايد سٺي نه هجي

ڇا ٻولي سي جي حقيقي درد پوائنٽن کي پتو پوي ٿو؟

اهو ظاهر ڪري ٿو ماڻهو هميشه ان ڳالهه تي متفق نه آهن ته سي جي ڪمزوريون ڇا آهن. ميموري مختص ڪرڻ، صف ۽ اسٽرنگ هينڊلنگ اڪثر مشڪل هوندا آهن، پر صحيح لائبريرين ۽ سٺي ميموري حڪمت عملي سان، انهن کي گهٽائي سگهجي ٿو.

ڇا ٻوليءَ جي مسئلن جو پتو نه ٿو پوي ته ترقي يافته استعمال ڪندڙ حقيقت ۾ پرواه نٿا ڪن؟ جيڪڏهن ائين آهي، ان جي حقيقي قيمت توقع کان تمام گهٽ ٿي سگهي ٿي.

۽ اڃا به بدتر، ڇا ٿيندو جيڪڏهن ٻولي اهم خصوصيتن کي ختم ڪري ٿي جيڪي سي ۾ موجود آهن؟ خاصيتون جيڪي ترقي يافته سي پروگرامر تي ڀروسو ڪن ٿا؟ اهو خطرو وڌي ويو آهي جيڪڏهن ٻولي ڊيزائنر گهڻو C استعمال نه ڪيو آهي، پر C++، Java، وغيره مان ايندو آهي.

نئين ٻولي لاءِ تجربيڪار ڊولپرز جي کوٽ

هڪ نئين ٻولي قدرتي طور تي تجربيڪار ڊولپرز جو تمام ننڍڙو تلاءُ هوندو. ڪنهن به وچولي يا وڏي ڪمپني لاء، اهو هڪ وڏو مسئلو آهي. وڌيڪ ڊولپر جيڪي هڪ ڪمپني لاء دستياب آهن، اهو بهتر آهي.

انهي سان گڏ، جيڪڏهن ڪمپني کي سي ڊولپرز کي ڀرتي ڪرڻ جو تجربو آهي، انهن کي خبر ناهي ته هن نئين ٻولي لاء ڪيئن ڀرتي ڪجي.

آخرڪار ، جيڪڏهن توهان انهي بابت وڌيڪ inاڻڻ چاهيندا ، توهان سان صلاح ڪري سگهو ٿا هيٺين لنڪ ۾ تفصيل.


مضمون جو مواد اسان جي اصولن تي عمل ڪري ٿو ايڊيٽوريل اخلاقيات. غلطي ڪلڪ ڪرڻ جي رپورٽ لاءِ هتي.

تبصرو ڪرڻ جو پهريون

پنهنجي راءِ ڏيو

پنهنجي اي ميل ايڊريس شايع نه ڪيو ويندو. گهري شعبن سان لڳل آهن *

*

*

  1. ڊيٽا جو ذميوار: Miguel Ángel Gatón
  2. ڊيٽا جو مقصد: ڪنٽرول سپيم ، تبصرو جي انتظام.
  3. سازش: توهان جي رضامندي
  4. ڊيٽا جي ابلاغ: ڊيٽا کي قانوني ذميواري کانسواءِ ٽئين پارٽين تائين رسائي نه ڏني ويندي.
  5. ڊيٽا اسٽوريج: ڊيٽابيس اويسينٽس نيٽورڪ (اي يو) پاران ميزباني ڪيل
  6. حق: ڪنهن به وقت توهان پنهنجي معلومات کي محدود ، ٻيهر ۽ ختم ڪري سگهو ٿا.