Linux 6.12 এর রিয়েল টাইমে "PREEMPT_RT" সমর্থন থাকতে পারে

Preempt-RT হল একটি পরিবর্তন যা উচ্চ অগ্রাধিকারের কাজগুলিকে কম অগ্রাধিকারের সাথে কাজগুলিকে বাধা দেওয়ার অনুমতি দেয়।

El একটি বাস্তব সময় সিস্টেমের ধারণা এটি এমন কিছু নয় যা সাম্প্রতিক বছরগুলিতে লিনাক্সে চিন্তা করা হয়েছিল, এই ধারণার পর থেকে 20 সালে সঠিক হতে প্রায় 2005 বছর আগে শুরু হয়েছিল লিনাক্স কার্নেলের জন্য PREEMPT_RT মোডের বিকাশ সহ "রিয়েলটাইম-প্রিম্পট" ("-rt") প্রকল্পের অংশ হিসাবে।

যারা জানেন না তাদের জন্য PREEMPT_RT, তাদের এটি জানা উচিত এটা একটা প্যাচ লিনাক্স কার্নেলের জন্যএবং অপারেটিং সিস্টেমকে রিয়েল-টাইমে রূপান্তর করে (রিয়েল-টাইম)। PREEMPT_RT-এর প্রধান লক্ষ্য হল লেটেন্সি কমানো এবং টাস্ক এক্সিকিউশনের পূর্বাভাসযোগ্যতা নিশ্চিত করা, যা দ্রুত প্রতিক্রিয়ার প্রয়োজন এমন অ্যাপ্লিকেশনগুলির ক্ষেত্রে অত্যন্ত গুরুত্বপূর্ণ।

সহজ কথায়, আমরা বলতে পারি যে PREEMPT_RT কার্নেলের প্রায় সমস্ত অংশকে বাধা দেওয়ার অনুমতি দেয়, যা লেটেন্সি কমায়। একটি আদর্শ কার্নেলের বিপরীতে, সমস্ত বিভাগ বাধাগ্রস্ত করা যায় না, যা প্রতিক্রিয়ার সময় বিলম্বের কারণ হতে পারে।

2015 সাল থেকে প্রকল্পটি লিনাক্স ফাউন্ডেশনের তত্ত্বাবধানে রয়েছে এবং এখন পর্যন্ত, PREEMPT_RT মোডের বাস্তবায়ন বাহ্যিক প্যাচের আকারে অফার করা হয়েছে। এই প্যাচ উপর ভিত্তি করে, যেমন বিতরণ RHEL, SUSE এবং Ubuntu তাদের পণ্যের রিয়েল-টাইম সংস্করণ তৈরি করেছে, আর্থিক ব্যবস্থা, অডিও এবং ভিডিও প্রক্রিয়াকরণ ডিভাইস, বিমান চালনা ব্যবস্থা, ওষুধ, রোবোটিক্স, টেলিযোগাযোগ এবং শিল্প অ্যাপ্লিকেশনের মতো সেক্টরগুলিতে অত্যন্ত চাহিদা, যেখানে ইভেন্টগুলির জন্য অনুমানযোগ্য প্রতিক্রিয়ার সময় গ্যারান্টি দেওয়া অপরিহার্য।

En 2019 প্রচার প্রক্রিয়া শুরু হয়েছে PREEMPT_RT প্রকল্পে বিকশিত প্যাচগুলির মধ্যে প্রধান লিনাক্স কার্নেলে। কার্নেল সংস্করণ 5.3-এ, রিয়েল-টাইম মোড সক্রিয় করতে কনফিগারেশন ফাইলে PREEMPT_RT বিকল্পটি অন্তর্ভুক্ত করা হয়েছিল।

PREEMPT_RT-এর জন্য প্রয়োজনীয় প্রিন্ট বিটগুলি linux-পরবর্তীতে অবস্থিত। এই PREEMPT_RT এর জন্য শেষ পরিচিত বাধা ছিল। আরটি কিউ আছে এছাড়াও UART 8250 এর জন্য "পারমাণবিক কনসোল" যা এখনও নেই linux-পরবর্তী। এর অর্থ হল "লেগ্যাসি কনসোল" আচরণ যেমন থেকে মুদ্রণ করা হয় না জরুরী পরিস্থিতিতে পারমাণবিক প্রসঙ্গ। 8250 UART কন্ট্রোলার একমাত্র যা আজ "পারমাণবিক কনসোল" সমর্থন প্রদান করে।

করণীয় এই কাজ ফল বহন করতে হবে, যেহেতু প্রয়োজনীয় পরিবর্তনগুলির সম্পূর্ণ একীকরণে পাঁচ বছর সময় লেগেছে এবং এটি সম্পূর্ণ হওয়ার কাছাকাছি, যেহেতু এটি প্রত্যাশিত যে সংস্করণ 6.12-এ, অতিরিক্ত প্যাচ প্রয়োগ করার প্রয়োজন ছাড়াই কার্নেলটি PREEMPT_RT মোডে কম্পাইল করা যেতে পারে।

এতে সর্বশেষ বাধা বলে উল্লেখ করা হয় যেটি PREEMPT_RT কে সক্ষম হতে বাধা দেয় তার অভাব ছিল প্রিন্টক ফাংশন ব্যবহার করে নন-ব্লকিং পারমাণবিক আউটপুটের জন্য সমর্থন। এই কার্যকারিতা ইতিমধ্যে হয়েছে linux-পরবর্তী শাখায় গৃহীত। অতিরিক্তভাবে, 8250 UART কন্ট্রোলারের জন্য একটি নন-ব্লকিং পারমাণবিক কনসোল বাস্তবায়ন মুলতুবি রয়েছে, যার অনুপস্থিতি বর্তমানে পারমাণবিক প্রসঙ্গে কার্যকর করা কোড থেকে কনসোলে জরুরি বার্তাগুলির আউটপুটকে বাধা দেয়।

প্রিন্ট বিট একত্রিত করার সাথে, PREEMPT_RT X86, ARM64 এ সক্ষম করা যেতে পারে এবং Risc-V. এই তিনটি একত্রিত স্থাপত্যের জন্য বছরের পর বছর পরিবর্তন প্রয়োজন।
বছর, আমাকে এমন একটি অবস্থানে রেখে যেখানে আমার কোন অপরিহার্য পরিবর্তন নেই
সারি যা তাদের প্রভাবিত করবে। ARM এবং POWERPC এর কিছু প্রয়োজনীয় প্যাচ বাকি আছে...

লিনাক্স কার্নেল ডেভেলপাররা linux-nex শাখায় সর্বশেষ প্রয়োজনীয় পরিবর্তনগুলির একীকরণ ঘোষণা করেছেt, যা সংস্করণ 6.12 কম্পাইল করতে ব্যবহার করা হবে। এই পরিবর্তনগুলি কার্নেলকে PREEMPT_RT বিকল্পের সাথে কম্পাইল করার অনুমতি দেবে, যা রিয়েল-টাইম ক্ষমতা প্রবর্তন করে।

একবার এই পরিবর্তন গৃহীত হয় প্রধান শাখায়, PREEMPT_RT মোড এটি X86, ARM64 এবং RISC-V আর্কিটেকচারের জন্য উপলব্ধ হবে। ARM এবং POWERPC আর্কিটেকচারের জন্য সমর্থন পরে যোগ করা হবে, কারণ প্রয়োজনীয় প্যাচগুলি এখনও সম্পূর্ণরূপে একত্রিত করা হয়নি।

এটি উল্লেখ করার মতো যে প্রস্তাবিত পরিবর্তনগুলি এখনও চূড়ান্ত নয় এবং এটি সম্ভব যে যদি PREEMPT_RT 6.12 শাখায় না আসে তবে এটি পরবর্তী বছর 6.13 সংস্করণে একত্রিত হবে।

পরিশেষে, আপনি যদি এটি সম্পর্কে আরও জানতে আগ্রহী হন, আপনি বিশদে পরীক্ষা করতে পারেন নিম্নলিখিত লিঙ্ক.