মূল লিনাক্স কার্নেল এবং উবুন্টু দ্বারা ব্যবহৃত কার্নেলের মধ্যে বৈশিষ্ট্যটিতে কী পার্থক্য রয়েছে? উবুন্টু সরাসরি প্রধান কার্নেলটি সরাসরি ব্যবহার করার পরিবর্তে প্রধান কার্নেলের বাইরে ব্রাঞ্চ করা হবে কেন?
মূল লিনাক্স কার্নেল এবং উবুন্টু দ্বারা ব্যবহৃত কার্নেলের মধ্যে বৈশিষ্ট্যটিতে কী পার্থক্য রয়েছে? উবুন্টু সরাসরি প্রধান কার্নেলটি সরাসরি ব্যবহার করার পরিবর্তে প্রধান কার্নেলের বাইরে ব্রাঞ্চ করা হবে কেন?
উত্তর:
আপস্ট্রিম কার্নেলগুলি (উল্লেখ করা হয়, যখন আমরা এগুলি সরবরাহ করি, মাইনলাইন কার্নেল হিসাবে ) কেবলমাত্র নির্দিষ্ট সংস্করণের জন্য মূল প্রবাহের কার্নেল, খুব সামান্য কিছু কনফিগারেশন পরিবর্তন যুক্ত করা হয় যাতে উবুন্টু ইনস্টলটিতে এগুলি ব্যবহার করার ক্ষেত্রে ন্যূনতম সমস্যা থাকে।
এই কার্নেলগুলির সাথে এবং উবুন্টু সংস্করণের জন্য প্রকাশিত একের মধ্যে পার্থক্যটি হ'ল অন্যান্য কনফিগারেশন পরিবর্তনগুলি , উত্স প্যাচগুলি * এবং কিছু ক্ষেত্রে মডিউল এবং হার্ডওয়্যার সমর্থনে সংকলিত।
অন্তর্নিহিত কোডের খুব সামান্যই উপরের নোটের চেয়ে উজানের চেয়ে আলাদা।
*: উত্স প্যাচগুলি বেশিরভাগ ক্ষেত্রে কার্নেলের ডিফল্ট আচরণে পরিবর্তিত হয়। এটি সীমাবদ্ধ নয়: ব্ল্যাকলিস্ট, ভিডিও কুইর্কস টেবিলগুলি, মডিউলগুলিতে নির্মিত, উত্স পরিবর্তনগুলি যা লিনাসের গাছে এখনও নেই বা স্থির সারিতে এখনও বেশ কিছু ইত্যাদি etc.
সোর্স প্যাচগুলি হ'ল উবুন্টুর নির্দিষ্ট সংস্করণের জন্য প্রকাশিত সফ্টওয়্যারটির বিস্তৃত অ্যারে সমর্থন করার জন্য কনফিগারেশন বিকল্পগুলি প্রবর্তন করতে টিম ব্যবহার করে। বেশিরভাগ ক্ষেত্রে সেই অ্যাপ্লিকেশনগুলির সঠিকভাবে কাজ করা প্রয়োজন। এটি এবং আপস্ট্রিম কার্নেলের মধ্যে মূল পার্থক্য হ'ল খাঁটি আপস্ট্রিম কার্নেলটি বিতরণ নির্দিষ্ট নয়।
সুতরাং, কনফিগারেশনগুলি নির্দিষ্ট অ্যাপ্লিকেশনগুলি প্রত্যাশা অনুযায়ী কাজ করে তা নিশ্চিত করার দিকে তত্পর হয় না। এই কনফিগারগুলি নির্দিষ্ট জিনিসের জন্য কার্নেলের সেই স্তর পরিবর্তনযোগ্যতা সরবরাহ করতে উপস্থিত রয়েছে। তদ্ব্যতীত, কিরকস ব্যবহার আমাদের এমন হার্ডওয়্যার শনাক্ত করতে সহায়তা করে যা কার্নেল থেকে নির্দিষ্ট জিনিসগুলির প্রয়োজন যা আমরা সেগুলি সনাক্ত করার পরে সেট করতে পারি।
এটি লিনাক্সের অন্যতম প্রধান বৈশিষ্ট্য এবং এটি আমাদের অন্যতম কারণ যা আমরা বছরের পর বছর ধরে এতগুলি বিচিত্র প্ল্যাটফর্মে চালাতে সক্ষম হয়েছি। এমন অনেক সময় আসে যখন কৌতূহল এবং উত্স প্যাচগুলি একে অপরের মধ্যে সমস্যা সৃষ্টি করে। এই সময়ে, আমরা অন্তর্নিহিত কার্নেল আচরণে পরিবর্তনগুলি নিয়ে সমস্যাগুলি প্রশমিত করার কাজ করি। অনেক ক্ষেত্রে এই পরিবর্তনগুলি মুক্তির পরে অবধি প্রবাহিত করে না কারণ খুব বড় অংশে সঠিকভাবে ফিক্সটি কোড করা, যা করা হয়েছিল তার ডকুমেন্ট করা, পরিবর্তনগুলি পরীক্ষা করা এবং বিভিন্ন অন্যান্য পরীক্ষা এবং স্ট্রেস টেস্টিং পরিচালনা করা প্রয়োজন।
এই ক্ষেত্রে, প্যাচগুলি যেগুলি প্রবাহের দিকে এগিয়ে চলেছে উত্স প্যাচ হিসাবে একইভাবে পূর্ব স্থিতিশীল এবং প্যাচগুলি এখনও লিনাস গাছের মধ্যে নেই। ডেল্টা রিভিউ স্পেসের লিঙ্কটি উবুন্টু কার্নেলের বর্তমান নাট্টির মুক্তির জন্য যা পর্যালোচনা করা হয়েছিল তার একটি রেফারেন্স হিসাবে কাজ করবে।
লিনাক্স কার্নেলের ধ্রুবক বিকাশ চলছে। তাদের পরবর্তী প্রকাশের প্যাকেজিংয়ের সময়, কোনও এক সময় উবুন্টু টিমকে বলতে হবে, 'ঠিক আছে, আমরা কার্নেলটি এখন যেমন দাঁড়িয়েছি' তেমন সময়ে সময়ে আপনি নতুন কার্নেলটি রেপোতে ব্যবহারের জন্য উপলব্ধ করতে পারেন বর্তমান বিতরণ।
এই জায়গাটি কিছু আকর্ষণীয় পড়ার জন্য তৈরি করতে পারে তবে এটি অত্যন্ত প্রযুক্তিগত হতে পারে। উপরের দিকে কী রান্না করছে এবং আপনি বর্তমানে কী মিস করছেন তা আপনি কাজ করতে সক্ষম হতে পারেন (তবে শেষ পর্যন্ত তা পাবেন)।
এটি লক্ষ্য করা উচিত, সফ্টওয়্যারগুলির কোনও অংশের মতো, কার্নেলটি বাগ-চালিত হওয়ার প্রবণতা থাকে এবং প্রায়শই এমন ঘটনা ঘটে যে রিগ্রেশনগুলি ঘটে (নতুন স্টাফ যুক্ত হওয়া পুরানো কার্যকারিতা ভেঙে দেয়)। আজকাল কার্নেলগুলি আইএমএইচও আমাকে নতুন কার্যকারিতার ক্ষেত্রে সত্যই উত্তেজিত করে না। আমি বেশ আনন্দের সাথে একটি কার্নেল চালিত করব যা উদাহরণস্বরূপ দুই বছরের পুরানো ছিল।
আপনি উবুন্টুর গিট ট্রি ডাউনলোড করতে পারেন, এবং গিট ট্রিটি দেখতে একটি গ্রাফিকাল ভিউয়ার ব্যবহার করতে পারেন। এটি আপনাকে উবুন্টুর সমস্ত প্যাচগুলি প্রদর্শন করবে। https://wiki.ubuntu.com/Kernel/Dev/KernelGitGuide
অন্য সম্ভাব্য বিকল্প, উবুন্টু-কার্নেল মেলিং তালিকার সাবস্ক্রাইব করুন। তাদের সমস্ত কাজ সেখানে পোস্ট করা হয়েছে এবং তারা কী করে সে সম্পর্কে আপনি ধারণা পেতে পারেন। তবে, এটি উচ্চ ট্র্যাফিক এবং আইএমএইচও, বিরক্তিকর। (তবে ওহে, এটি তাদের তালিকা)