16 केबी टॉगल की मदद से, 16 केबी वाले कर्नेल को आज़माया जा सकता है. यह टॉगल, 4 केबी कर्नेल और 16 केबी कर्नेल के बीच स्विच करता है. इसे सेटिंग ऐप्लिकेशन में "डेवलपर के लिए विकल्प" मेन्यू में देखा जा सकता है. 16 केबी टॉगल का इस्तेमाल, 16 केबी कर्नेल के साथ ऐप्लिकेशन के काम करने की जांच करने के लिए किया जा सकता है. हालांकि, हो सकता है कि 16 केबी मोड में सबपेज ब्लॉक (/data
और /metadata
पार्टीशन के लिए EXT4 का इस्तेमाल करते समय) के इस्तेमाल की वजह से, यह असल 16 केबी डिवाइस की परफ़ॉर्मेंस को न दिखाए.
टॉगल को कॉन्फ़िगर करने का तरीका
पक्का करें कि डिवाइस ने वैरिएबल को पेज-ऐग्नोस्टिक मोड में सेट अप किया हो, ताकि वे 4 केबी और 16 केबी, दोनों पेज साइज़ वाले कर्नेल के साथ काम कर सकें. डेवलपर के लिए सेटिंग और टूल जोड़ने से पहले, सीधे 16 केबी कर्नेल इंस्टॉल करें. इससे यह पक्का किया जा सकेगा कि डिवाइस सीधे 16 केबी मोड में काम कर रहा है. वर्चुअल डिवाइस के टारगेट कॉन्फ़िगरेशन का उदाहरण देखें.
PRODUCT_NO_BIONIC_PAGE_SIZE_MACRO := true PRODUCT_MAX_PAGE_SIZE_SUPPORTED := 16384
सेटिंग में डेवलपर का विकल्प दिखाने के लिए, प्रॉडक्ट वैरिएबल सेट अप करना
PRODUCT_16K_DEVELOPER_OPTION := true
BOARD_KERNEL_PATH_16K
का इस्तेमाल करके, कर्नेल का पाथ सेट करें. इस कर्नेल कोCONFIG_ARM64_16K_PAGES=y.
के साथ बनाया जाना चाहिएBOARD_KERNEL_PATH_16K := kernel/prebuilts/mainline/$(TARGET_KERNEL_ARCH)/16k/kernel-mainline.
मॉड्यूल के कॉन्फ़िगरेशन पाथ वैरिएबल
BOARD_KERNEL_MODULES_16K
को सेट करें. यह वैरिएबल, 16 केबी वाले पेज साइज़ के साथ काम करने वाले कर्नेल मॉड्यूल पर ले जाता है. इन पैरामीटर को सेट करने पर, सिस्टम के partition पर दो ओटीए बनते हैं :boot_ota_16k.zip
(16 केबी कर्नेल पर स्विच करने के लिए) औरboot_ota_4k.zip
(4 केबी कर्नेल पर स्विच करने के लिए). छोटे साइज़ के बूट ओटीए के लिएBOARD_16K_OTA_USE_INCREMENTAL := true
सेट करके, इंक्रीमेंटल ओटीए चालू करें.BOARD_KERNEL_MODULES_16K += $(wildcard kernel/prebuilts/mainline/$(TARGET_KERNEL_ARCH)/16k/*.ko) BOARD_KERNEL_MODULES_16K += $(wildcard kernel/prebuilts/common-modules/virtual-device/mainline/$(TARGET_KERNEL_ARCH)/16k/*.ko)
ओटीए को वेंडर पार्टीशन में ले जाने के लिए,
BOARD_16K_OTA_MOVE_VENDOR := true
सेट करें. सिर्फ़ सिस्टम से वेंडर पार्टीशन में ओटीए (ऑनलाइन ट्रांसफ़र) ले जाने के लिए, इसे सेट करें.
पुष्टि करें
टॉगल को कॉन्फ़िगर करने के बाद, यह तरीका अपनाएं:
- देखें कि सेटिंग ऐप्लिकेशन में 16 केबी पेज साइज़ के साथ बूट करें टॉगल दिख रहा है या नहीं.
- देखें कि
/system/boot_otas
या/vendor/boot_otas
में दो ओटीए zip फ़ाइलें :boot_ota_16k.zip
औरboot_ota_4k.zip
मौजूद हैं या नहीं.
16 केबी टॉगल का इस्तेमाल करना
- सेटिंग > सिस्टम > सॉफ़्टवेयर अपडेट पर जाएं और उपलब्ध सभी अपडेट लागू करें.
- 'डेवलपर के लिए सेटिंग और टूल' चालू करें. निर्देशों के लिए, डिवाइस पर डेवलपर के विकल्प कॉन्फ़िगर करना लेख पढ़ें.
- अगर डिवाइस ओईएम लॉक के तौर पर दिखता है, तो आपको एक डायलॉग दिखेगा. इसमें आपको फ़ोन को ओईएम अनलॉक करने के लिए कहा जाएगा. निर्देशों के लिए, बूटलोडर को लॉक और अनलॉक करना लेख पढ़ें.
- 16 केबी वाले पेज साइज़ से बूट करें पर क्लिक करें. अगर
/data
और/metadata
, text4 नहीं हैं, तो एक डायलॉग बॉक्स दिखेगा. इसमें, आपसे डिवाइस को मिटाने के लिए कहा जाएगा. डिवाइस को मिटाने के लिए, सारा डेटा मिटाएं पर क्लिक करें. डिवाइस का डेटा मिट जाता है और आपको डेवलपर के लिए सेटिंग और टूल की सुविधा फिर से चालू करनी होगी. - 16 केबी वाले पेज साइज़ से बूट करें पर क्लिक करें. आपको एक डायलॉग दिखेगा, जिसमें आपसे 16 केबी पर स्विच करने के लिए कहा जाएगा. पुष्टि करने पर, बूट ओटीए लागू हो जाएंगे. इसके बाद, ऐप्लिकेशन के व्यवहार की जांच करने के लिए, डेटा सेक्शन को मिटाए बिना 4 केबी और 16 केबी मोड के बीच टॉगल किया जा सकता है.
16 केबी मोड की जांच करना
पेज के साइज़ की पुष्टि करने के लिए, पेज का साइज़ पता करना पर दिया गया तरीका अपनाएं.