AOSP কমন কার্নেল (যা অ্যান্ড্রয়েড কমন কার্নেল বা ACK নামেও পরিচিত) হলো kernel.org কার্নেলের পরবর্তী ধাপ এবং এতে অ্যান্ড্রয়েড কমিউনিটির জন্য গুরুত্বপূর্ণ এমন সব প্যাচ অন্তর্ভুক্ত থাকে যা মেইনলাইন বা লং টার্ম সাপোর্টেড (LTS) কার্নেলে একীভূত করা হয়নি। এই প্যাচগুলোর মধ্যে অন্তর্ভুক্ত থাকতে পারে:
- অ্যান্ড্রয়েড ফিচারের জন্য প্রয়োজনীয় আপস্ট্রিম কার্যকারিতার ব্যাকপোর্ট এবং চেরি-পিক।
- অ্যান্ড্রয়েড ডিভাইসের জন্য ফিচারগুলো প্রস্তুত, কিন্তু আপস্ট্রিম পর্যায়ে এখনও উন্নয়নের অধীনে রয়েছে।
- ভেন্ডর/ওইএম বৈশিষ্ট্য যা অন্যান্য ইকোসিস্টেম অংশীদারদের জন্য উপযোগী
android-mainline হলো অ্যান্ড্রয়েড ফিচারগুলোর জন্য প্রধান ডেভেলপমেন্ট ব্রাঞ্চ। যখনই লিনাস টরভাল্ডস কোনো রিলিজ বা রিলিজ ক্যান্ডিডেট পোস্ট করেন, লিনাক্স মেইনলাইনকে android-mainline মার্জ করা হয়। ২০১৯ সালের আগে, সদ্য ঘোষিত এলটিএস (LTS) কার্নেল ক্লোন করে এবং অ্যান্ড্রয়েড-নির্দিষ্ট প্যাচগুলো যোগ করে অ্যান্ড্রয়েড কমন কার্নেল তৈরি করা হতো। ২০১৯ সালে এই প্রক্রিয়াটি পরিবর্তিত হয় এবং android-mainline থেকে নতুন অ্যান্ড্রয়েড কমন কার্নেলের জন্য একটি ব্রাঞ্চ তৈরি করা শুরু হয়। এই নতুন মডেলটি পর্যায়ক্রমে একই ফলাফল অর্জন করার মাধ্যমে অ্যান্ড্রয়েড প্যাচ ফরওয়ার্ড পোর্ট এবং পরীক্ষা করার জন্য প্রয়োজনীয় বিপুল শ্রম এড়িয়ে চলে। android-mainline ক্রমাগত ব্যাপক পরীক্ষার মধ্য দিয়ে যায়, এবং এই মডেলে প্রকাশের দিন থেকেই একটি উচ্চ-মানের কার্নেল অন্তর্ভুক্ত থাকে।
যখন আপস্ট্রিমে একটি নতুন LTS ঘোষণা করা হয়, তখন সংশ্লিষ্ট কমন কার্নেলটি android-mainline থেকে ব্রাঞ্চ করা হয়। এর ফলে পার্টনাররা LTS সংস্করণটি ঘোষণার আগেই android-mainline থেকে মার্জ করার মাধ্যমে একটি প্রজেক্ট শুরু করতে পারেন। নতুন কমন কার্নেল ব্রাঞ্চটি তৈরি হয়ে গেলে, পার্টনাররা নির্বিঘ্নে মার্জ সোর্সটি নতুন ব্রাঞ্চে পরিবর্তন করতে পারেন।
অন্যান্য কমন কার্নেল ব্রাঞ্চগুলো তাদের সংশ্লিষ্ট এলটিএস কার্নেল থেকে নিয়মিত মার্জ পায়। এই মার্জগুলো সাধারণত এলটিএস রিলিজ পোস্ট করার পরপরই করা হয়। উদাহরণস্বরূপ, যখন লিনাক্স ৬.১.৭৫ পোস্ট করা হয়েছিল, তখন এটিকে ৬.১ কমন কার্নেলে ( android14-6.1 ) মার্জ করা হয়েছিল। এলটিএস এবং অ্যান্ড্রয়েড-নির্দিষ্ট বাগ ফিক্সের সাথে আপ-টু-ডেট থাকার জন্য পার্টনারদের তাদের কার্নেল আপডেট করতে জোরালোভাবে উৎসাহিত করা হচ্ছে।
ACK KMI কার্নেল শাখা
GKI কার্নেলগুলোতে একটি স্থিতিশীল কার্নেল মডিউল ইন্টারফেস (KMI) থাকে। KMI-টি কার্নেল সংস্করণ এবং অ্যান্ড্রয়েড প্ল্যাটফর্ম রিলিজ দ্বারা স্বতন্ত্রভাবে চিহ্নিত করা হয়, তাই শাখাগুলোর নামকরণ করা হয় ANDROID_RELEASE - KERNEL_VERSION ক্রমে। উদাহরণস্বরূপ, অ্যান্ড্রয়েড ১৪-এর জন্য ৬.১ GKI কার্নেলটির নাম android14-6.1 । অ্যান্ড্রয়েড ১৫-এর জন্য android15-6.6 GKI কার্নেলটি চালু করা হয়েছিল।
সাধারণ কার্নেল শ্রেণিবিন্যাস
অ্যান্ড্রয়েড-মেইনলাইন থেকে শাখা
সাধারণ কার্নেল স্তরক্রমের সর্বোচ্চ স্তরটি চিত্র ১-এ দেখানো হয়েছে।

চিত্র ১. অ্যান্ড্রয়েড-মেইনলাইন কার্নেল থেকে সাধারণ কার্নেল তৈরি করা
লক্ষ্য করুন যে ২০২২ সালে android-mainline থেকে android14-6.1 একটি নতুন অ্যান্ড্রয়েড কমন কার্নেল ব্রাঞ্চ করা হয়েছিল। ২০২৩ সালে, যখন পরবর্তী LTS ঘোষণা করা হয়, তখন android-mainline থেকে android15-6.6 ব্রাঞ্চ করা হয়েছিল।
চিত্র ১-এ যেমন দেখানো হয়েছে, প্রতিটি কার্নেল সংস্করণ দুটি GKI কার্নেলের ভিত্তি হতে পারে। উদাহরণস্বরূপ, দুটি v5.15 কার্নেল হলো android13-5.15 এবং android14-5.15 , যে দুটিই তাদের নিজ নিজ প্ল্যাটফর্ম রিলিজের জন্য ফিচার কার্নেল। 5.10-এর ক্ষেত্রেও এমনটিই ছিল; LTS ঘোষণার সময় android12-5.10 তৈরি করা হয়েছিল এবং Android 13-এর জন্য ফিচার ডেভেলপমেন্টের সুযোগ করে দিতে ২০২১ সালের বসন্তে কার্নেল ফিচার কমপ্লিট মাইলস্টোনে android13-5.10 থেকে android12-5.10 ব্রাঞ্চ করা হয়েছিল। Android 15 (২০২৪) থেকে শুরু করে, প্রতিটি কার্নেল সংস্করণের জন্য কেবল একটি নতুন GKI কার্নেল থাকবে ( android15-6.1 কার্নেল নেই)।
ACK KMI ব্রাঞ্চ লাইফসাইকেল
একটি ACK KMI ব্রাঞ্চের জীবনচক্র চিত্র ২-এ দেখানো হয়েছে।

চিত্র ২. ৬.৬ ACK KMI শাখার জীবনচক্র
উন্নয়ন প্রক্রিয়া এবং ব্রাঞ্চের জীবনচক্র স্পষ্ট করার জন্য, চিত্র ২-এ 6.6-এর ACK KMI ব্রাঞ্চগুলোর উপর আলোকপাত করা হয়েছে।
প্রতিটি ACK KMI শাখা তিনটি পর্যায়ের মধ্য দিয়ে আবর্তিত হয়, যা চিত্র ২-এ প্রতিটি শাখায় ভিন্ন ভিন্ন রঙ দ্বারা নির্দেশিত। যেমনটি দেখানো হয়েছে, পর্যায় নির্বিশেষে LTS নিয়মিতভাবে একীভূত হয়।
উন্নয়ন পর্যায়
যখন এটি তৈরি করা হয়, একটি ACK KMI ব্রাঞ্চ ডেভেলপমেন্ট পর্যায়ে প্রবেশ করে (চিত্র ২-এ dev হিসাবে চিহ্নিত), এবং পরবর্তী অ্যান্ড্রয়েড প্ল্যাটফর্ম রিলিজের জন্য ফিচার অবদানের জন্য উন্মুক্ত থাকে। চিত্র ২-এ, android15-6.6 তৈরি করা হয়েছিল যখন 6.6-কে নতুন আপস্ট্রিম LTS কার্নেল হিসাবে ঘোষণা করা হয়েছিল।
স্থিতিশীলতা পর্যায়
যখন ACK KMI ব্রাঞ্চকে ফিচার কমপ্লিট হিসেবে ঘোষণা করা হয়, তখন এটি স্টেবিলাইজেশন পর্যায়ে প্রবেশ করে (চিত্র ২-এ স্থিতিশীল হিসেবে চিহ্নিত)। পার্টনার ফিচার এবং বাগ ফিক্স তখনও গ্রহণ করা হয়, কিন্তু ইন্টারফেসকে প্রভাবিত করে এমন যেকোনো পরিবর্তন শনাক্ত করার জন্য KMI ট্র্যাকিং সক্রিয় করা হয়। এই পর্যায়ে, KMI-ব্রেকিং পরিবর্তনগুলো গ্রহণ করা হয় এবং একটি পূর্বনির্ধারিত বিরতিতে (সাধারণত প্রতি দুই সপ্তাহে) KMI ডেফিনিশন আপডেট করা হয়। KMI মনিটরিং সম্পর্কে বিস্তারিত জানতে GKI ওভারভিউ দেখুন।
কেএমআই হিমায়িত পর্যায়
AOSP-তে একটি নতুন প্ল্যাটফর্ম রিলিজ পুশ করার আগে, ACK KMI ব্রাঞ্চটি ফ্রিজ করা হয় এবং ব্রাঞ্চটির জীবনকাল পর্যন্ত তা ফ্রিজ করাই থাকে। এর মানে হলো, KMI-এর ভারসাম্য নষ্ট করে এমন কোনো পরিবর্তন গ্রহণ করা হয় না, যদি না এমন কোনো গুরুতর নিরাপত্তা সমস্যা চিহ্নিত করা হয় যা স্টেবল KMI-কে প্রভাবিত না করে সমাধান করা সম্ভব নয়। KMI-এর ভারসাম্য নষ্ট হওয়া এড়ানোর জন্য, LTS থেকে মার্জ করা কিছু প্যাচ পরিবর্তন করা হতে পারে বা বাদ দেওয়া হতে পারে, যদি সেই সমাধানটি অ্যান্ড্রয়েড ডিভাইসের জন্য প্রয়োজনীয় না হয়।
যখন একটি ACK KMI ব্রাঞ্চ ফ্রিজ করা হয়, তখন বাগ ফিক্স এবং পার্টনার ফিচার গ্রহণ করা যেতে পারে, যতক্ষণ পর্যন্ত বিদ্যমান KMI কমন কার্নেলটি অক্ষত থাকে। KMI-কে নতুন এক্সপোর্টেড সিম্বল দিয়ে সম্প্রসারিত করা যেতে পারে, যতক্ষণ পর্যন্ত বর্তমান KMI-এর অন্তর্ভুক্ত ইন্টারফেসগুলো প্রভাবিত না হয়। যখন KMI-তে নতুন ইন্টারফেস যুক্ত করা হয়, তখন সেগুলো অবিলম্বে স্থিতিশীল হয়ে যায় এবং ভবিষ্যতের কোনো পরিবর্তনের দ্বারা সেগুলোকে আর ভাঙা যায় না।
উদাহরণস্বরূপ, KMI ইন্টারফেস কমন কার্নেল দ্বারা ব্যবহৃত কোনো স্ট্রাকচারে একটি ফিল্ড যোগ করে এমন কোনো পরিবর্তন অনুমোদিত নয়, কারণ এটি ইন্টারফেসের সংজ্ঞা পরিবর্তন করে দেয়:
struct foo {
int original_field1;
int original_field2;
int new_field; // Not allowed
};
int do_foo(struct foo &myarg)
{
do_stuff(myarg);
}
EXPORT_SYMBOL_GPL(do_foo);
তবে, একটি নতুন ফাংশন যোগ করা ঠিক আছে:
struct foo2 {
struct foo orig_foo;
int new_field;
};
int do_foo2(struct foo2 &myarg)
{
do_stuff2(myarg);
}
EXPORT_SYMBOL_GPL(do_foo2);
GKI কার্নেলের জীবনকাল জুড়ে ইউজারস্পেসের সাথে ব্যাকওয়ার্ড কম্প্যাটিবিলিটি বজায় রাখা হয়, যাতে ডিভাইসটি যে অ্যান্ড্রয়েড প্ল্যাটফর্ম রিলিজ দিয়ে চালু করা হয়েছিল, সেটির জন্য কার্নেলটি নিরাপদে ব্যবহার করা যায়। পূর্ববর্তী রিলিজগুলোর সাথে ক্রমাগত পরীক্ষার মাধ্যমে সামঞ্জস্যতা বজায় রাখা হয়। তাই চিত্র ২-এ, android15-6.6 কার্নেলটি অ্যান্ড্রয়েড ১৫ ডিভাইস এবং তার পরবর্তী ডিভাইসগুলোর জন্য ব্যবহার করা যাবে। যেহেতু অ্যান্ড্রয়েড প্ল্যাটফর্ম রিলিজটি পূর্ববর্তী সংস্করণগুলোর সাথেও সামঞ্জস্যপূর্ণ, তাই android14-6.1 কার্নেলটি অ্যান্ড্রয়েড ১৫ ডিভাইসগুলোতে লঞ্চ বা আপগ্রেড—উভয় ক্ষেত্রেই ব্যবহার করা যেত।
কেএমআই প্রজন্মের সংখ্যা
যদি স্থিতিশীলতা পর্বের সময় কোনো LTS মার্জ হয়, অথবা এর পরে কোনো নিরাপত্তা সমস্যা বা অন্য কোনো ঘটনা ঘটে যার জন্য KMI-পরিবর্তনকারী প্যাচ গ্রহণ করা প্রয়োজন, তাহলে build.config.common এ রেকর্ড করা KMI জেনারেশন নম্বরটি বৃদ্ধি করা হয়। বর্তমান KMI জেনারেশনটি uname কমান্ড ব্যবহার করে খুঁজে পাওয়া যায়:
$ uname -r
6.6.30-android15-6-g86d10b30f51f
প্ল্যাটফর্ম রিলিজের পরের সংখ্যাটি হলো KMI জেনারেশন (এই ক্ষেত্রে 6 )।
KMI জেনারেশন পরিবর্তিত হলে, কার্নেল পূর্ববর্তী KMI জেনারেশন অনুযায়ী তৈরি ভেন্ডর মডিউলগুলোর সাথে সামঞ্জস্যপূর্ণ থাকে না, তাই মডিউলগুলোকে অবশ্যই কার্নেলের সাথে একযোগে পুনর্নির্মাণ ও আপডেট করতে হবে। KMI ফ্রিজ হওয়ার পর, KMI জেনারেশন পরিবর্তন খুব বিরল হবে বলে আশা করা যায়।
কার্নেলগুলির মধ্যে সামঞ্জস্য
নতুন GKI কার্নেলগুলো থেকে একই LTS পরিবারের কার্নেলগুলোর মধ্যে সামঞ্জস্যের শর্তাবলী পরিবর্তিত হচ্ছে।
জিকেআই কার্নেল
GKI কার্নেলগুলো সেই সমস্ত অ্যান্ড্রয়েড প্ল্যাটফর্ম রিলিজের সাথে ব্যাকওয়ার্ড কম্প্যাটিবিলিটি বজায় রাখে, যেগুলো কার্নেল সংস্করণটিকে সমর্থন করে। এছাড়াও, অ্যান্ড্রয়েড প্ল্যাটফর্ম রিলিজগুলো পূর্ববর্তী রিলিজের GKI কার্নেলগুলোর সাথেও ব্যাকওয়ার্ড-কম্প্যাটিবল। তাই আপনি অ্যান্ড্রয়েড ১৪ (২০২৩)-এর জন্য তৈরি android14-6.1 কার্নেলটি অ্যান্ড্রয়েড ১৫ (২০২৪) চালিত ডিভাইসগুলোতে নিরাপদে ব্যবহার করতে পারেন। সমস্ত সমর্থিত রিলিজের সাথে GKI কার্নেলগুলোর ক্রমাগত VTS এবং CTS পরীক্ষার মাধ্যমে এই সামঞ্জস্যতা যাচাই করা হয়।
KMI স্থিতিশীল হওয়ায় ভেন্ডর ইমেজে কার্নেল মডিউলগুলো পুনর্নির্মাণের প্রয়োজন ছাড়াই কার্নেল আপডেট করা যায়।
বিভিন্ন GKI কার্নেলের মধ্যে KMI সামঞ্জস্য বজায় রাখা হয় না। তাই, উদাহরণস্বরূপ, সমস্ত মডিউল রি-বিল্ড না করে একটি android14-6.1 কার্নেলকে android15-6.6 কার্নেল দিয়ে প্রতিস্থাপন করা যায় না।
GKI কার্নেলগুলো শুধুমাত্র তাদের প্রাথমিক এবং পরবর্তী রিলিজগুলোর জন্যই সমর্থিত। পুরোনো রিলিজগুলোর জন্য এগুলো সমর্থিত নয়। তাই, Android 14 (2023) চালিত ডিভাইসগুলোর জন্য android15-6.6 কার্নেল সমর্থিত নয়।
সামঞ্জস্য ম্যাট্রিক্স
এই সারণিতে প্রতিটি অ্যান্ড্রয়েড প্ল্যাটফর্ম রিলিজের সাথে সমর্থিত ও পরীক্ষিত কার্নেল সংস্করণগুলো দেখানো হয়েছে।
| অ্যান্ড্রয়েড প্ল্যাটফর্ম রিলিজ | সমর্থিত কার্নেল |
|---|---|
| অ্যান্ড্রয়েড ১৭ (২০২৬) | android17-6.18android16-6.12android15-6.6android14-6.1android14-5.15android13-5.15android13-5.10 (অ্যান্ড্রয়েড ১৭ কিউপিআর১ বা উচ্চতর সংস্করণে সমর্থিত নয়)android12-5.10 (অ্যান্ড্রয়েড ১৭ কিউপিআর১ বা উচ্চতর সংস্করণে সমর্থিত নয়) |
| অ্যান্ড্রয়েড ১৬ (২০২৫) | android16-6.12android15-6.6android14-6.1android14-5.15android13-5.15android13-5.10android12-5.10 |
| অ্যান্ড্রয়েড ১৫ (২০২৪) | android15-6.6android14-6.1android14-5.15android13-5.15android13-5.10android12-5.10 |
| অ্যান্ড্রয়েড ১৪ (২০২৩) | android14-6.1android14-5.15android13-5.15android13-5.10android12-5.10 |
| অ্যান্ড্রয়েড ১৩ (২০২২) | android13-5.15android13-5.10android12-5.10 |
| অ্যান্ড্রয়েড ১২ (২০২১) | android12-5.10 |
জীবনকাল এবং নিরাপত্তা প্যাচ সমর্থন করুন
ACK-গুলো আপস্ট্রিম থেকে LTS মার্জ এবং অ্যান্ড্রয়েড-নির্দিষ্ট কোডের জন্য বাগ ফিক্স গ্রহণ করে। এই ফিক্সগুলোর মধ্যে মাসিক অ্যান্ড্রয়েড সিকিউরিটি বুলেটিনে উল্লিখিত সমস্ত কার্নেল নিরাপত্তা প্যাচ অন্তর্ভুক্ত থাকে, যেগুলো ACK-এর জন্য প্রাসঙ্গিক।
kernel.org- এ থাকা সংশ্লিষ্ট আপস্ট্রিম স্টেবল কার্নেলের চেয়ে ACK-গুলো বেশিদিন ধরে সমর্থিত থাকতে পারে। এক্ষেত্রে, গুগল এই বিভাগে দেখানো এন্ড-অফ-লাইফ (EOL) তারিখ পর্যন্ত বর্ধিত সমর্থন প্রদান করে। যখন কার্নেলগুলোর EOL হয়ে যায়, তখন গুগল সেগুলোকে আর সমর্থন করে না এবং যে ডিভাইসগুলোতে সেগুলো চলে, সেগুলোকে ঝুঁকিপূর্ণ বলে মনে করা হয়।
কার্নেল ৬.৬ থেকে শুরু করে স্থিতিশীল কার্নেলগুলোর সমর্থনের মেয়াদ ৪ বছর।
এই সারণিতে সমর্থিত ACK-গুলোর জীবনকাল দেখানো হয়েছে:
| ACK শাখা | লঞ্চ তারিখ | সমর্থন আজীবন (বছর) | EOL |
|---|---|---|---|
| অ্যান্ড্রয়েড১২-৫.১০ | ২০২০-১২-১৩ | ৬ | ২০২৭-০৭-০১ |
| অ্যান্ড্রয়েড১৩-৫.১০ | ২০২০-১২-১৩ | ৬ | ২০২৭-০৭-০১ |
| অ্যান্ড্রয়েড১৩-৫.১৫ | ২০২১-১০-৩১ | ৬ | ২০২৮-০৭-০১ |
| অ্যান্ড্রয়েড১৪-৫.১৫ | ২০২১-১০-৩১ | ৬ | ২০২৮-০৭-০১ |
| অ্যান্ড্রয়েড১৪-৬.১ | ২০২২-১২-১১ | ৬ | ২০২৯-০৭-০১ |
| অ্যান্ড্রয়েড ১৫-৬.৬ | ২০২৩-১০-২৯ | ৪ | ২০২৮-০৭-০১ |
| অ্যান্ড্রয়েড১৬-৬.১২ | ২০২৪-১১-১৭ | ৪ | ২০২৯-০৭-০১ |
| অ্যান্ড্রয়েড১৭-৬.১৮ | ২০২৫-১১-৩০ | ৪ | ২০৩০-০৭-০১ |
সাধারণ কার্নেল টেস্টিং
ভেন্ডরদের দ্বারা ডাউনস্ট্রিম টেস্টিং ছাড়াও কমন কার্নেলগুলো বিভিন্ন CI সিস্টেমের মাধ্যমে পরীক্ষা করা হয়।
কার্নেলসিআই টেস্টিং
যখনই কোনো সাধারণ কার্নেল শাখায় একটি নতুন প্যাচ কমিট করা হয়, তখনই KernelCI-এর বিল্ড ও বুট পরীক্ষা শুরু করা হয়। কয়েকশ বিল্ড কনফিগারেশন বিভিন্ন বোর্ডে পরীক্ষা ও বুট করা হয়। অ্যান্ড্রয়েড কার্নেলের সাম্প্রতিক ফলাফল KernelCL সাইটে পাওয়া যাবে।
অ্যান্ড্রয়েড প্রি-সাবমিট এবং পোস্ট-সাবমিট টেস্টিং
অ্যান্ড্রয়েড কমন কার্নেলে কোনো ত্রুটি প্রবেশ করা প্রতিরোধ করার জন্য প্রিসাবমিট টেস্ট ব্যবহার করা হয়। অ্যান্ড্রয়েড কমন কার্নেল গ্যারিটে থাকা কোড পরিবর্তনের 'চেকস' ট্যাবে এই পরীক্ষার ফলাফলের সারাংশ পাওয়া যায়।
যখন ci.android.com- এ কোনো অ্যান্ড্রয়েড কমন কার্নেল ব্রাঞ্চে নতুন প্যাচ কমিট করা হয়, তখন সেই ব্রাঞ্চের নতুন প্রকাশিত বিল্ডগুলোর উপর অ্যান্ড্রয়েড পোস্টসাবমিট টেস্টিং করা হয়। ci.android.com- এ আংশিক ব্রাঞ্চের নাম হিসেবে aosp_kernel লিখলে, আপনি ফলাফলসহ কার্নেল ব্রাঞ্চগুলোর একটি তালিকা দেখতে পাবেন। উদাহরণস্বরূপ, android-mainline এর ফলাফল অ্যান্ড্রয়েড কন্টিনিউয়াস বিল্ড ইন্টিগ্রেশন (অ্যান্ড্রয়েড সিআই) ড্যাশবোর্ডে পাওয়া যাবে। Test Results ট্যাবে পরীক্ষার অবস্থা জানতে নির্দিষ্ট বিল্ডটিতে ক্লিক করুন।
অ্যান্ড্রয়েড প্ল্যাটফর্ম সোর্স ট্রিতে টেস্ট-ম্যাপিং দ্বারা সংজ্ঞায়িত টেস্টগুলো, যা kernel-presubmit টেস্ট গ্রুপের অন্তর্ভুক্ত, অ্যান্ড্রয়েড কার্নেল ব্রাঞ্চগুলোর জন্য প্রিসাবমিট হিসেবে চালানো হয়। উদাহরণস্বরূপ, test/vts/tests/kernel_proc_file_api_test/TEST_MAPPING- এ নিম্নলিখিত কনফিগারেশনটি অ্যান্ড্রয়েড কমন কার্নেল কোড চেক-ইন-এর সময় vts_kernel_proc_file_api_test প্রিসাবমিট টেস্ট হিসেবে সক্রিয় করে।
{
"kernel-presubmit": [
{
"name": "vts_kernel_proc_file_api_test"
}
]
}
০-দিনের পরীক্ষা
নতুন প্যাচ কমিট করা হলে, জিরো-ডে টেস্টিং অ্যান্ড্রয়েডের সমস্ত কমন কার্নেল ব্রাঞ্চে প্যাচ-বাই-প্যাচ টেস্টিং করে থাকে। এতে বিভিন্ন বুট, ফাংশনাল এবং পারফরম্যান্স টেস্ট চালানো হয়। cros-kernel-buildreports পাবলিক গ্রুপে যোগদান করুন।
টেস্ট ম্যাট্রিক্স
| অ্যান্ড্রয়েড কমন কার্নেল | অ্যান্ড্রয়েড প্ল্যাটফর্ম রিলিজ | টেস্ট স্যুট | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| প্রধান | ১৭ | ১৬ | ১৫ | ১৪ | ১৩ | কার্নেলসিআই | প্রাক জমা | পোস্ট জমা দিন | ০-দিন | ||
android-mainline | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ | |
android17-6.18 | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ | |
android16-6.12 | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ | |
android15-6.6 | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ | |
android14-6.1 | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ✅ | ✅ | android13-5.15 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
android12-5.10 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | |
অ্যান্ড্রয়েড সাধারণ কার্নেলগুলিতে অবদান রাখুন
সাধারণত, ফিচার ডেভেলপমেন্ট অ্যান্ড্রয়েডের সাধারণ কার্নেলে নয়, বরং মেইনলাইন লিনাক্সে করা উচিত। আপস্ট্রিম ডেভেলপমেন্টকে জোরালোভাবে উৎসাহিত করা হয় এবং সেখানে ডেভেলপমেন্ট গৃহীত হওয়ার পর, প্রয়োজন অনুযায়ী এটিকে নির্দিষ্ট ACK ব্রাঞ্চে ব্যাকপোর্ট করা যেতে পারে। অ্যান্ড্রয়েড কার্নেল টিম অ্যান্ড্রয়েড ইকোসিস্টেমের স্বার্থে আপস্ট্রিমিং প্রচেষ্টাকে সমর্থন করতে পেরে আনন্দিত।
Gerrit- এ প্যাচ জমা দিন এবং এই অবদান নির্দেশিকাগুলো মেনে চলুন।