কার্নেল ওভারভিউ

Android কার্নেল আপস্ট্রিম Linux দীর্ঘ মেয়াদী সহায়তা (LTS) কার্নেল-এর উপর ভিত্তি করে তৈরি। Google-এ, LTS কার্নেলগুলিকে Android কমন কার্নেল (ACK) তৈরি করতে Android-নির্দিষ্ট প্যাচের সাথে একত্রিত করা হয়।

কার্নেল/কমন রিপোজিটরি থেকে ACK তৈরি করা হয়। এই রিপোজিটরি হল আপস্ট্রিম Linux কার্নেলের সুপারসেট, যাতে অতিরিক্ত Android-নির্দিষ্ট প্যাচ রয়েছে।

৫.১০ ও তার পরের ACK-কে *জেনারেটিক কার্নেল ইমেজ (GKI) কার্নেলও বলা হয়। GKI কার্নেল হার্ডওয়্যার-অ্যাগনস্টিক জেনেরিক কোর কার্নেল কোড এবং GKI মডিউল হার্ডওয়্যার-নির্দিষ্ট ভেন্ডর মডিউল থেকে আলাদা করতে সাহায্য করে।

ভেন্ডর মডিউলের প্রয়োজনীয় ফাংশন ও গ্লোবাল ডেটা শনাক্তকারী কার্নেল মডিউল ইন্টারফেস (KMI)-এর মাধ্যমে GKI কার্নেল ও ভেন্ডর মডিউলের মধ্যে ইন্টার‍্যাকশন চালু করা হয়। ছবি ১-এ GKI কার্নেল ও ভেন্ডর মডিউল আর্কিটেকচার দেখানো হয়েছে:

GKI কার্নেল ও ভেন্ডর মডিউল আর্কিটেকচার।

ছবি ১. GKI কার্নেল ও ভেন্ডর মডিউল আর্কিটেকচার।

কার্নেল শব্দকোষ

কার্নেল ডকুমেন্টেশন জুড়ে ব্যবহৃত শব্দগুলি নিচে দেওয়া হল।

কার্নেলের ধরন

Android Common Kernel (ACK)
LTS কার্নেলের ডাউনস্ট্রিম কার্নেল এবং এতে Android কমিউনিটির জন্য গুরুত্বপূর্ণ প্যাচ অন্তর্ভুক্ত থাকে। এইসব প্যাচ Linux মেইনলাইন বা লং টার্ম GKI কার্নেলে মার্জ করা হয়নি।

5.10 এবং তার পরবর্তী ভার্সনের কার্নেলকে জেনেরিক কার্নেল ইমেজ (GKI) কার্নেলও বলা হয়।

Android ওপেন সোর্স প্রজেক্ট (AOSP) কার্নেল
Android Common Kernel দেখুন।

Android 12 ফিচার 4.19 কার্নেলে ব্যাকপোর্ট করা যাবে না; ফিচার সেটটি Android 11-এ 4.19 দিয়ে লঞ্চ করা এবং Android 12-এ আপগ্রেড করা ডিভাইসের মতো হবে।

জেনেরিক কার্নেল ইমেজ (GKI) কার্নেল

যেকোনও 5.10 ও তার পরের যেকোনও ভার্সন ACK কার্নেল(শুধুমাত্র aarch64)। GKI কার্নেলের এই দুটি অংশ আছে:

  • জেনেরিক কার্নেল - GKI কার্নেলের সেই অংশ যা সব ডিভাইস জুড়ে সাধারণ।

  • GKI মডিউল - Google-এর তৈরি কার্নেল মডিউল যা প্রযোজ্য ডিভাইসে ডায়নামিক্যালি লোড করা যায়। এইসব মডিউল GKI কার্নেলের আর্টিফ্যাক্ট হিসেবে তৈরি করা হয় এবং GKI-এর সাথে system_dlkm_staging_archive.tar.gz আর্কাইভ হিসেবে ডেলিভার করা হয়। GKI মডিউলগুলি Google-এর দ্বারা কার্নেল বিল্ড টাইম কী পেয়ার ব্যবহার করে সাইন করা হয় এবং সেগুলি শুধুমাত্র GKI কার্নেলের সাথে মানানসই হয় যেগুলি দিয়ে সেগুলি তৈরি করা হয়।

কার্নেল মডিউল ইন্টারফেস (KMI) কার্নেল

GKI কার্নেল দেখুন।

দীর্ঘমেয়াদী কাজ করে (LTS) এমন কার্নেল

২ থেকে ৬ বছর পর্যন্ত কাজ করে এমন Linux কার্নেল। LTS কার্নেল প্রতি বছর একবার রিলিজ করা হয় এবং এটি Google-এর প্রতিটি Android কমন কার্নেলের ভিত্তি।

ব্রাঞ্চের ধরন

ACK KMI কার্নেল ব্রাঞ্চ
যে ব্রাঞ্চের জন্য GKI কার্নেল তৈরি করা হয়। ব্রাঞ্চের নামগুলি কার্নেল ভার্সনের সাথে সম্পর্কিত, যেমন android15-6.6।
Android-mainline
Android ফিচারের জন্য প্রাথমিক ডেভেলপমেন্ট ব্রাঞ্চ। আপস্ট্রিমে নতুন LTS কার্নেল ঘোষণা করা হলে, android-mainline থেকে সংশ্লিষ্ট নতুন GKI কার্নেল ব্রাঞ্চ করা হয়।

Linux মেইনলাইন :LTS কার্নেল সহ আপস্ট্রিম Linux কার্নেলের জন্য প্রাথমিক ডেভেলপমেন্ট ব্রাঞ্চ।

অন্যান্য শর্তাবলী

সার্টিফায়েড বুট ইমেজ
বাইনারি ফর্ম্যাটে (boot.img) ডেলিভার করা কার্নেল ডিভাইসে ফ্ল্যাশ করা হয়। এই ছবিকে সার্টিফায়েড হিসেবে বিবেচনা করা হয় কারণ এতে এম্বেড করা সার্টিফিকেট থাকে, তাই Google যাচাই করতে পারে যে ডিভাইসটি Google দ্বারা সার্টিফায়েড কার্নেল সহ শিপ করা হয়েছে।
ডায়নামিক লোড করা যায় এমন কার্নেল মডিউল (DLKM)
ডিভাইসের প্রয়োজনীয়তার উপর নির্ভর করে ডিভাইস বুট করার সময় ডায়নামিক লোড করা যায় এমন একটি মডিউল। GKI ও ভেন্ডর মডিউল, দুটিই DLKM-এর ধরন। DLKM .ko ফর্ম্যাটে রিলিজ করা হয় এবং এটি ড্রাইভার হতে পারে অথবা অন্য কার্নেল ফাংশনালিটি প্রদান করতে পারে।
GKI প্রোজেক্ট
একটি Google প্রোজেক্ট যা সাধারণ কোর কার্নেল ফাংশনকে ভেন্ডর-নির্দিষ্ট SoC ও বোর্ড সাপোর্ট থেকে আলাদা করে লোড করা যায় এমন মডিউলে ভাগ করার মাধ্যমে কার্নেল ফ্র্যাগমেন্টেশন সমাধান করে।

Generic Kernel Image (GKI) :Google-এর সার্টিফাই করা বুট ইমেজ যাতে ACK সোর্স ট্রি থেকে তৈরি করা GKI কার্নেল থাকে এবং এটি Android-পরিচালিত ডিভাইসের বুট পার্টিশনে ফ্ল্যাশ করার জন্য উপযুক্ত।

কার্নেল মডিউল ইন্টারফেস (KMI)
GKI কার্নেল ও ভেন্ডর মডিউলের মধ্যে একটি ইন্টারফেস যা ভেন্ডর মডিউলকে GKI কার্নেল থেকে স্বাধীনভাবে আপডেট করার অনুমতি দেয়। এই ইন্টারফেসে কার্নেল ফাংশন ও গ্লোবাল ডেটা থাকে, যা পার্টনার পিছু সিম্বল লিস্ট ব্যবহার করে ভেন্ডর/OEM নির্ভরতা হিসেবে শনাক্ত করা হয়েছে।
ভেন্ডর মডিউল
পার্টনারের তৈরি করা হার্ডওয়্যার-নির্দিষ্ট মডিউল যাতে SoC এবং ডিভাইস-নির্দিষ্ট কার্যকারিতা থাকে। ভেন্ডর মডিউল হল এক ধরনের ডাইনামিক লোড করা যায় এমন কার্নেল মডিউল।

এর পরে কী করতে হবে

আপনি Android কার্নেল ডেভেলপমেন্টে নতুন হলে, নিম্নলিখিতগুলি পড়ে শুরু করুন:

আপনি GKI কার্নেল ডেভেলপমেন্টে নতুন হলে, প্রথমে GKI ডেভেলপমেন্ট পড়ুন।