সমস্যা, উত্তেজনা এবং মতবিরোধের মধ্যে থাকা রাস্ট ফর লিনাক্স ইতিমধ্যেই প্রকাশ্যে এসেছে। 

লিনাক্স সমস্যার জন্য মরিচা

মনে হচ্ছে এই বছরটি লিনাক্সের বছর হবে না, কারণ গত বছরের শেষ প্রান্তিকে সবকিছু দেখে মনে হচ্ছিল ২০২৫ সালে লিনাক্স এবং ডেস্কটপগুলি দ্রুত গতিতে এগিয়ে যাবে, তবুও সবকিছু সবসময় যেমন মনে হয় তেমন হয় না।

আর মাত্র কয়েকটা দিন ক্রিস্টোফ হেলউইগ, একজন বিশিষ্ট ব্যক্তিত্ব লিনাক্স কার্নেলে DMA, KVM, স্ল্যাব অ্যালোকেটর এবং পাওয়ারপিসির মতো গুরুত্বপূর্ণ সাবসিস্টেমগুলি বজায় রাখার ক্ষেত্রে, প্যাচ সমর্থন করতে তার অস্বীকৃতি স্পষ্ট করেছে যা উন্নয়নকে সহজতর করে রাস্টে কন্ট্রোলারদের সংখ্যা।

ক্রিস্টোফ হেলউইগ উল্লেখ করে যে প্রশ্নবিদ্ধ প্যাচগুলি তারা DMA সাবসিস্টেম ফাংশনের চারপাশে র‍্যাপার অন্তর্ভুক্ত করার প্রস্তাব করেছিল যাতে রাস্টে লেখা ড্রাইভাররা এটি ব্যবহার করতে পারে। তবে, তিনি যুক্তি দেন যে এই কৌশলটিa কোড রক্ষণাবেক্ষণকে জটিল করে তোলে এবং C ইন্টারফেসের স্বচ্ছতা সংরক্ষণ করতে হবে, বিমূর্তকরণগুলিকে প্রসারিত হতে বাধা দেয় যা বাকি কার্নেলের সাথে ইন্টিগ্রেশনকে বাধাগ্রস্ত করতে পারে।

একটি প্রকল্পে ভাষা মিশ্রিত করার সমস্যাগুলি

হেলউইগের মতে, মূল সমস্যা হল রাস্ট কোডের ইন্টিগ্রেশন নির্ভরতা তৈরি করে যা C সাবসিস্টেম ডেভেলপারদের রাস্টের বাইন্ডিং কোডের উপর তাদের পরিবর্তনের প্রভাব বিবেচনা করতে বাধ্য করে। এই এর অর্থ হল কাঠামোর যেকোনো সমন্বয় অথবা C তে অভ্যন্তরীণ ফাংশন রাস্টের কোডে সমান্তরাল পরিবর্তনের প্রয়োজন হতে পারে, যা এমন একটি পরিস্থিতি তৈরি করে যা দীর্ঘমেয়াদে বজায় রাখা কঠিন।

এই পরিস্থিতি এড়াতে, হেলউইগ রাস্টের কন্ট্রোলারদের সরাসরি অ্যাক্সেস করার পরামর্শ দেওয়া হচ্ছে C-তে নেটিভ DMA API-তে, অতিরিক্ত র‍্যাপার ব্যবহার না করে যা তারা বিশ্বাস করে যে কার্নেল রক্ষণাবেক্ষণের সাথে আপস করবে।

তাদের অংশ জন্য, প্যাচগুলি প্রস্তাবকারী ডেভেলপাররা যুক্তি দিয়েছিলেন যে তারা রক্ষণাবেক্ষণের যত্ন নেবেন রাস্ট কোডের এবং এই লক্ষ্যে, লিঙ্কগুলিকে একটি নির্দিষ্ট সাবডিরেক্টরিতে (rust/kernel/dma.rs) সংগঠিত করা হয়েছে। তবে, হেলউইগ এই প্রস্তাবগুলিতে ভেটো দেন, সতর্ক করে দেন যে তার দায়িত্ব নেওয়ার প্রয়োজন নেই। অন্যান্য ভাষার কোডকে মূল সাবসিস্টেমে একীভূত করতে।

উপরন্তু, তিনি দৃঢ়ভাবে মন্তব্য করেছেন যে আপনি যদি কার্নেলকে একাধিক ভাষার মোজাইকে রূপান্তর করতে চান, তাহলে মৌলিক ক্ষেত্রগুলিতে এই জটিলতা আরোপের পরিবর্তে রাস্টের ড্রাইভার দিয়ে শুরু করা উচিত।

বিতর্ক তীব্রতর হয় যখন NVIDIA-তে জেসন গুনথর্প, TPM, VFIO এবং ইনফিনিব্যান্ড রক্ষণাবেক্ষণকারীর মতো ব্যক্তিত্বরা মেমরি সাবসিস্টেমে কীভাবে পরিবর্তন হয় তার উদাহরণ শেয়ার করেছিলেন, যদিও C কোডের দৃষ্টিকোণ থেকে সঠিক, রাস্ট সাপোর্ট সহ কার্নেল কম্পাইল করার চেষ্টা করার সময় সমস্যা তৈরি করে। এই ঘটনাগুলি স্পষ্ট করে দিয়েছে যে C এবং Rust-এর মধ্যে বন্ধন অতিরিক্ত নির্ভরতা তৈরি করতে পারে যা সমন্বিত উন্নয়নকে কঠিন করে তোলে।

এটি উল্লেখ করার মতো আলোচনাটি কেবল প্রযুক্তিগত দিকগুলিতে সীমাবদ্ধ ছিল না। হেক্টর মার্টিন পরামর্শ দিয়েছিলেন যে সমাধান হতে পারে সরাসরি লিনাস টরভাল্ডসের মাধ্যমে লিঙ্কটি গ্রহণ করা, ডিএমএ সাবসিস্টেম রক্ষণাবেক্ষণকারীর হস্তক্ষেপ এড়িয়ে। তবে, এই পদ্ধতিটি কার্নেল বিকাশের ঐতিহ্যবাহী শ্রেণিবদ্ধ কাঠামোকে ব্যাহত করতে পারে।

হেক্টর এমন আচরণের কথাও উল্লেখ করেছিলেন যা তিনি বিষাক্ত বলে মনে করতেন, এমনকি উল্লেখ করেছেন যে হেলউইগের সমালোচনা, যিনি রাস্টকে "ক্যান্সারজনিত টিউমার" এর সাথে তুলনা করেছিলেন, তার হতাশা এবং শেষ পর্যন্ত মেইনলাইন কার্নেলে ARM/Apple প্ল্যাটফর্ম রক্ষণাবেক্ষণকারীর পদ থেকে পদত্যাগের সিদ্ধান্তে অবদান রেখেছিল। তার পদত্যাগ সত্ত্বেও, প্ল্যাটফর্মটি সোভেন পিটার দ্বারা সমর্থিত থাকবে, যিনি এটি বজায় রাখার প্রতিশ্রুতি দিয়েছেন।

অন্যদিকে, লিনাস টোরভাল্ডস কথোপকথনে যোগ দিলেন, উন্নয়ন প্রক্রিয়ার উপর জোর দিয়ে কার্নেলের, যদিও অসম্পূর্ণ, কাজ করছে এবং প্রযুক্তিগত আলোচনাগুলি প্যাচগুলির উপর কেন্দ্রীভূত হওয়া উচিত, সামাজিক নেটওয়ার্কগুলিতে বাইরের চাপ বা হয়রানির দ্বারা প্রভাবিত না হয়ে। টরভাল্ডসের জন্য, ব্যক্তিগত বিরোধ বাদ দিয়ে, পদ্ধতিটি সম্পূর্ণরূপে প্রযুক্তিগত হওয়া উচিত।

ক্রিস্টোফ হেলউইগের ডিএমএ সাবসিস্টেমে রাস্ট র‍্যাপার অন্তর্ভুক্ত করতে অস্বীকৃতি লিনাক্স কার্নেল ডেভেলপারদের মধ্যে উত্তেজনা তুলে ধরে। যদিও কেউ কেউ রাস্টকে নতুন প্রকল্প তৈরির জন্য একটি শক্তিশালী হাতিয়ার হিসেবে দেখেন, অন্যরা আশঙ্কা করেন যে একাধিক ভাষা একীভূত করলে রক্ষণাবেক্ষণযোগ্যতা এবং কোডবেসের ধারাবাহিকতা বাধাগ্রস্ত হতে পারে।

পরিস্থিতি বিতর্কের বিষয় হিসেবে রয়ে গেছে। এবং কার্নেলে রাস্ট সাপোর্টের ভবিষ্যতের জন্য এর উল্লেখযোগ্য প্রভাব থাকতে পারে। যাই হোক না কেন, যা স্পষ্ট তা হল লিনাক্স ডেভেলপমেন্ট কমিউনিটি জটিল চ্যালেঞ্জের মুখোমুখি হচ্ছে, যেখানে দীর্ঘমেয়াদে প্রকল্পের স্থায়িত্ব নিশ্চিত করার জন্য প্রযুক্তিগত সিদ্ধান্তগুলি সাবধানতার সাথে পরিমাপ করা উচিত।


পছন্দের উৎস হিসেবে যোগ করুন