এই নথিতে Android কার্নেল সম্পর্কে প্রায়শই জিজ্ঞাসিত প্রশ্ন রয়েছে, যা জেনেরিক কার্নেল ইমেজ (GKI) কার্নেল নামেও পরিচিত৷ আপনি যদি GKI এবং GKI কার্নেল পরিভাষার সাথে অপরিচিত হন, তাহলে কার্নেল ওভারভিউ পড়ুন।
কার্নেল মডিউল ইন্টারফেস (KMI) প্রতীক তালিকা একটি স্থিতিশীল কার্নেলে পরিবর্তন করা যেতে পারে?
বিদ্যমান KMI-কে প্রভাবিত করে না এমন পরিবর্তনগুলি হিমায়িত কার্নেলে যোগ করা যেতে পারে। এই পরিবর্তনগুলির মধ্যে নতুন রপ্তানিকৃত ফাংশন এবং প্রতীক তালিকা এন্ট্রি অন্তর্ভুক্ত রয়েছে। বিশদ বিবরণের জন্য, প্রতীক তালিকা পরিচালনা করুন দেখুন।
আমি কি একটি স্থিতিশীল কার্নেলে বিক্রেতা মডিউল দ্বারা ব্যবহৃত কাঠামো পরিবর্তন করতে পারি?
একটি KMI ইন্টারফেসের অংশ এমন স্ট্রাকচারগুলিকে হিমায়িত KMI দিয়ে কার্নেলে পরিবর্তন করা যাবে না। KMI হিমায়িত করার আগে, এই কাঠামো পরিবর্তন করা যেতে পারে।
যতক্ষণ না আমি বাইনারি বা উত্স সামঞ্জস্য না ভাঙি ততক্ষণ আমি কি কার্নেল পরিবর্তন করতে পারি?
যে পরিবর্তনগুলি KMI কে প্রভাবিত করে না সেগুলি Android-নির্দিষ্ট প্যাচগুলিতে বর্ণিত হিসাবে করা যেতে পারে৷
কিভাবে GKI কার্নেল কনফিগারেশন পরিচালনা করে?
কার্নেল কনফিগারেশন সম্পর্কে তথ্যের জন্য, gki_defconfig-তে পরিবর্তনগুলি পড়ুন।
বিদ্যমান GKI মডিউলগুলিতে ওভাররাইট করার জন্য আমি কীভাবে আপস্ট্রিম বাগ ফিক্সগুলি পরিচালনা করব?
আপনি যদি অ্যান্ড্রয়েড কমন কার্নেল (ACK) এ ড্রাইভারের উপর ভিত্তি করে একটি ভেন্ডর মডিউল তৈরি করেন, তাহলে আপস্ট্রিম এবং ACK থেকে বাগ ফিক্সগুলি আপনার মডিউলে প্রচার করা হয়েছে তা নিশ্চিত করা আপনার উপর নির্ভর করে। সাধারণত, GKI কার্নেল এবং GKI মডিউলগুলি পরিবর্তন ছাড়াই ব্যবহার করা আপনার সর্বোত্তম স্বার্থে তাই এই আপডেটগুলি Google দ্বারা ধারাবাহিকভাবে প্রদান করা হয়৷
GKI নির্দিষ্ট পরীক্ষা আছে কি?
ভেন্ডর টেস্ট স্যুট (VTS) পরীক্ষা রয়েছে যা যাচাই করে যে একটি প্রত্যয়িত GKI বিল্ড ইনস্টল করা হয়েছে এবং প্রতি-রিলিজ GKI প্রয়োজনীয়তাগুলি প্রয়োগ করার জন্য। উদাহরণস্বরূপ, বুট হেডার v3 এর জন্য এবং 5.10 কার্নেল চালিত একটি ডিভাইসে প্রয়োজনীয় পার্টিশনের অস্তিত্ব যাচাই করার জন্য Android 12 VTS পরীক্ষা রয়েছে।
আমি কিভাবে ডিভাইস বিল্ডের জন্য প্রকল্প defconfig খণ্ড ফাইল তৈরি করব?
বিক্রেতা মডিউলগুলি তৈরি করতে, gki_defconfig
ছাড়াও প্রয়োজনীয় কনফিগারেশন বিকল্পগুলি বর্ণনা করার জন্য অনেক GKI- সম্মতিযুক্ত ডিভাইস একটি কনফিগারেশন ফ্র্যাগমেন্ট ব্যবহার করে। ACK কোডবেসের অংশের উদাহরণগুলির মধ্যে রয়েছে Cuttlefish এবং DB845c। ফ্র্যাগমেন্ট অপ্টিমাইজ করার জন্য কনফিগারেশন বিকল্পগুলির কিছু ম্যানুয়াল পরীক্ষা এড়ানোর কোন উপায় নেই, তবে কার্নেল উত্স থেকে scripts/diffconfig
gki_defconfig
এবং gki_defconfig+device.fragment
এর ফলাফল তুলনা করার জন্য দরকারী।
মোডপ্রোবের চিকিৎসার জন্য কি কোনো সমাধান আছে - এবং _কে সমতুল্য?
modprobe ম্যান পৃষ্ঠায় এই বিবরণ রয়েছে: " modprobe
বুদ্ধিমত্তার সাথে Linux কার্নেল থেকে একটি মডিউল যোগ করে বা সরিয়ে দেয়: মনে রাখবেন যে সুবিধার জন্য, মডিউল নামের মধ্যে _ এবং - এর মধ্যে কোন পার্থক্য নেই (স্বয়ংক্রিয় আন্ডারস্কোর রূপান্তর করা হয়)।" GKI টিম স্ট্যান্ডার্ড আপস্ট্রিম কনভেনশন মেনে চলে, তাই ভেন্ডর টুল বা মডিউল নামকরণ কনভেনশনগুলিকে অবশ্যই এই আনুগত্য বিবেচনায় নিতে হবে।
আমি কিভাবে অভ্যন্তরীণ ব্যবহারের জন্য debugf সক্রিয় করতে পারি?
debugf সক্রিয় করার বিষয়ে বিস্তারিত জানার জন্য, অনুপ্রবেশকারী ডাউনস্ট্রিম ডিবাগ বৈশিষ্ট্য দেখুন।
আমি কীভাবে একটি নির্দিষ্ট মডিউল কনফিগারেশন সক্ষম করে GKI কার্নেলের মধ্যে অমিল ABI গুলি সমাধান করতে পারি?
GKI কার্নেল এবং মডিউল কনফিগারেশনের মধ্যে অমিল ABIs একটি অন্তর্নিহিত মডিউল কনফিগারেশন নির্ভরতাকে উপস্থাপন করে, যেখানে একটি মডিউল সক্রিয় করার ফলে কার্নেল ইমেজে একটি বাইনারি কনফিগারেশন তৈরি করা হয়। এগিয়ে যাওয়ার পথ নির্ধারণ করতে Android কার্নেল টিমের ( kernel-team@android.com ) সাথে যোগাযোগ করুন৷ চিহ্নগুলির তালিকা নির্ধারিত হওয়ার পরে, ইস্যু ট্র্যাকারে একটি বাগ তৈরি করুন এবং প্রতীক তালিকায় একটি পরিবর্তন আপলোড করুন।