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

এই পৃষ্ঠাটি জেনেরিক কার্নেল ইমেজ (GKI) প্রকল্প এবং এটি কীভাবে Android স্থিতিশীলতা বাড়ায় এবং নিরাপত্তা উন্নত করে তা বর্ণনা করে।

ইতিহাস

প্রতিটি অ্যান্ড্রয়েড-চালিত ডিভাইসের একটি উত্পাদন কার্নেল প্রয়োজন। GKI-এর আগে, কার্নেলগুলি কাস্টম ছিল এবং অ্যান্ড্রয়েড কমন কার্নেল (ACK) এর উপর ভিত্তি করে, সিস্টেম অন চিপ (SoC) বিক্রেতা এবং OEMগুলির দ্বারা ডিভাইস-নির্দিষ্ট পরিবর্তনগুলি সহ।

এই কাস্টমাইজেশনের ফলে কার্নেল কোডের 50% পর্যন্ত গাছের বাইরের কোড হতে পারে এবং আপস্ট্রিম লিনাক্স কার্নেল বা ACK থেকে নয়। যেমন, প্রাক-GKI কার্নেলের কাস্টম প্রকৃতির ফলে উল্লেখযোগ্য কার্নেল ফ্র্যাগমেন্টেশন হয়েছে।

খণ্ডিতকরণের খরচ

কার্নেল ফ্র্যাগমেন্টেশনের Android সম্প্রদায়ের উপর বেশ কিছু নেতিবাচক প্রভাব রয়েছে।

নিরাপত্তা আপডেট শ্রম নিবিড় হয়

অ্যান্ড্রয়েড সিকিউরিটি বুলেটিনে (ASB) উদ্ধৃত নিরাপত্তা প্যাচগুলি অবশ্যই প্রতিটি ডিভাইস কার্নেলে ব্যাকপোর্ট করতে হবে। যাইহোক, কার্নেল ফ্র্যাগমেন্টেশনের কারণে, ক্ষেত্রের মধ্যে অ্যান্ড্রয়েড ডিভাইসগুলিতে নিরাপত্তা সংশোধনগুলি প্রচার করা নিষিদ্ধভাবে ব্যয়বহুল।

দীর্ঘমেয়াদী সমর্থিত আপডেটগুলি মার্জ করা কঠিন৷

লং-টার্ম সাপোর্টেড (LTS) রিলিজে নিরাপত্তা সংশোধন এবং অন্যান্য জটিল বাগ সংশোধন অন্তর্ভুক্ত রয়েছে। LTS রিলিজের সাথে আপ টু ডেট থাকা নিরাপত্তা সমাধান প্রদানের সবচেয়ে কার্যকর উপায় বলে প্রমাণিত হয়েছে। Pixel ডিভাইসগুলিতে, এটি আবিষ্কৃত হয়েছে যে ASB-তে রিপোর্ট করা কার্নেল নিরাপত্তা সংক্রান্ত সমস্যাগুলির 90% ইতিমধ্যেই আপ টু ডেট থাকা ডিভাইসগুলির জন্য ঠিক করা হয়েছে।

যাইহোক, ডিভাইস কার্নেলের সমস্ত কাস্টম পরিবর্তনের সাথে, LTS ফিক্সগুলিকে ডিভাইস কার্নেলে মার্জ করা কঠিন।

অ্যান্ড্রয়েড প্ল্যাটফর্ম রিলিজ আপগ্রেড বাধা দিন

ফ্র্যাগমেন্টেশন নতুন অ্যান্ড্রয়েড বৈশিষ্ট্যগুলির জন্য কঠিন করে তোলে যার জন্য ক্ষেত্রের ডিভাইসগুলিতে কার্নেল পরিবর্তনগুলি যোগ করা প্রয়োজন৷ অ্যান্ড্রয়েড ফ্রেমওয়ার্ক কোডকে বিভিন্ন কার্নেলের বৈচিত্রের জন্য অ্যাকাউন্ট করতে হয়েছিল এবং কার্নেলে প্রয়োগ করা নতুন অ্যান্ড্রয়েড বৈশিষ্ট্যগুলির উপর নির্ভর করতে পারে না এটি উদ্ভাবনকে ধীর করে দেয় এবং কোডের আকার এবং জটিলতা বৃদ্ধি করে।

আপস্ট্রিম লিনাক্সে কার্নেল পরিবর্তনগুলি অবদান রাখা কঠিন

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

ফ্র্যাগমেন্টেশন ঠিক করুন: জেনেরিক কার্নেল ইমেজ

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

  • GKI কার্নেল ACK উৎস থেকে তৈরি করা হয়েছে।
  • GKI কার্নেল হল একটি একক-কারনেল বাইনারি প্লাস যুক্ত লোডযোগ্য মডিউল প্রতি আর্কিটেকচার, প্রতি LTS রিলিজ।
  • GKI কার্নেলটি সমস্ত Android প্ল্যাটফর্ম রিলিজের সাথে পরীক্ষা করা হয় যা সংশ্লিষ্ট ACK-এর জন্য সমর্থিত। একটি GKI কার্নেল সংস্করণের জীবনকালের জন্য কোনো বৈশিষ্ট্য অবমূল্যায়ন নেই।
  • GKI কার্নেল একটি নির্দিষ্ট LTS-এর মধ্যে ড্রাইভারদের কাছে একটি স্থিতিশীল KMI প্রকাশ করে।
  • GKI কার্নেলে SoC-নির্দিষ্ট বা বোর্ড-নির্দিষ্ট কোড থাকে না।

GKI আর্কিটেকচারের একটি চিত্রের জন্য, কার্নেল ওভারভিউ পড়ুন।

সাধারণ চিত্র

অ্যান্ড্রয়েড 12 থেকে শুরু করে, কার্নেল সংস্করণ 5.10 বা উচ্চতর ডিভাইসগুলিকে অবশ্যই জিকেআই কার্নেলের সাথে শিপিং করতে হবে। জেনেরিক কার্নেল ইমেজ (GKI) রিলিজ বিল্ডগুলি নিয়মিত আপডেট করা হয় এবং LTS এবং জটিল বাগ ফিক্সের সাথে নিয়মিত আপডেট করা হয়। যেহেতু KMI-এর জন্য বাইনারি স্থিতিশীলতা বজায় রাখা হয়, আপনি বিক্রেতা ইমেজে পরিবর্তন না করে এই বুট ইমেজগুলি ইনস্টল করতে পারেন। GKI প্রকল্পের এই লক্ষ্যগুলি রয়েছে:

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