27 Mart 2025'ten itibaren AOSP'yi derlemek ve AOSP'ye katkıda bulunmak için aosp-main
yerine android-latest-release
kullanmanızı öneririz. Daha fazla bilgi için AOSP'de yapılan değişiklikler başlıklı makaleyi inceleyin.
16 KB açma/kapatma düğmesini etkinleştirme
Koleksiyonlar ile düzeninizi koruyun
İçeriği tercihlerinize göre kaydedin ve kategorilere ayırın.
16 KB açma/kapatma düğmesi, 16 KB çekirdek denemenizi sağlar. Bu açma/kapatma düğmesi, 4 KB çekirdek ile 16 KB çekirdek arasında geçiş yapar ve ayarlar uygulamasındaki "Geliştirici seçeneği" menüsünde bulunur. 16 KB açma/kapatma düğmesi, uygulamanın 16 KB çekirdekle uyumluluğunu kontrol etmek için kullanılabilir ancak 16 KB modunda alt sayfa bloklarının kullanılması (/data
ve /metadata
bölümleri için EXT4 kullanıldığında) nedeniyle gerçek 16 KB cihazın performansını yansıtmayabilir.
Açma/kapatma düğmesini yapılandırma adımları
Cihazın, değişkenleri sayfadan bağımsız olacak şekilde ayarladığından emin olun (hem 4 KB hem de 16 KB sayfa boyutu çekirdekleriyle çalışacak şekilde).
Geliştirici seçeneğini eklemeye devam etmeden önce cihazın doğrudan 16 KB modunda çalıştığından emin olmak için 16 KB çekirdeği doğrudan yükleyebilirsiniz.
Hedef yapılandırma sanal cihaz örneğine bakın.
PRODUCT_NO_BIONIC_PAGE_SIZE_MACRO := true
PRODUCT_MAX_PAGE_SIZE_SUPPORTED := 16384
Ürün değişkenini, ayarlar bölümünde geliştirici seçeneğini gösterecek şekilde ayarlama
PRODUCT_16K_DEVELOPER_OPTION := true
BOARD_KERNEL_PATH_16K
kullanarak çekirdek yolunu ayarlayın.
Bu çekirdek CONFIG_ARM64_16K_PAGES=y.
ile oluşturulmalıdır
BOARD_KERNEL_PATH_16K := kernel/prebuilts/mainline/$(TARGET_KERNEL_ARCH)/16k/kernel-mainline.
BOARD_KERNEL_MODULES_16K
modülleri yapılandırma yolu değişkenini ayarlayın. Bu değişken, 16 KB'ı destekleyen çekirdek modüllerini gösterir. Bu parametreler ayarlandığında sistem bölümünde iki OTA oluşturulur : boot_ota_16k.zip
(16 KB çekirdeğe geçmek için) ve boot_ota_4k.zip
(4 KB çekirdeğe geçmek için). Daha küçük boyutlu önyükleme OTA'ları için BOARD_16K_OTA_USE_INCREMENTAL := true
ayarlayarak artımlı OTA'ları etkinleştirin.
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)
OTA'ları tedarikçiye ait bölüme taşımak için BOARD_16K_OTA_MOVE_VENDOR := true
değerini ayarlayın.
Bu ayarı yalnızca OTA'ları sistemden tedarikçiye ait bölüme taşımak için ayarlayın.
Doğrulama
Açma/kapatma düğmesini başarıyla yapılandırdıktan sonra aşağıdaki adımları uygulayın:
- Ayarlar uygulamasında 16 KB sayfa boyutuyla başlat açma/kapatma düğmesinin görünür olup olmadığını kontrol edin.
/system/boot_otas
veya /vendor/boot_otas
'te iki OTA zip dosyası (boot_ota_16k.zip
ve boot_ota_4k.zip
) olup olmadığını kontrol edin.
16 KB açma/kapatma düğmesini kullanma
- Ayarlar > Sistem > Yazılım güncellemeleri'ne gidin ve mevcut güncellemeleri uygulayın.
- Geliştirici seçeneklerini etkinleştirin. Talimatlar için Cihaz üzerindeki geliştirici seçeneklerini yapılandırma başlıklı makaleyi inceleyin.
- Cihaz OEM kilitli olarak algılanırsa telefonun OEM kilidini açmanızı isteyen bir iletişim kutusu gösterilir. Talimatlar için Bootloader'ı kilitleme ve kilidini açma başlıklı makaleyi inceleyin.
- 16 KB sayfa boyutuyla başlat'ı tıklayın.
/data
ve /metadata
ext4 değilse cihazı silmenizi isteyen bir iletişim kutusu gösterilir. Cihazı silmek için Tüm verileri sil'i tıklayın. Cihaz temizlenir ve geliştirici seçeneklerini tekrar etkinleştirmeniz gerekir.
- 16 KB sayfa boyutuyla başlat'ı tıklayın. 16 KB'ya geçmenizi isteyen bir iletişim kutusu görüntülenir ve onayladığınızda önyükleme OTA'ları uygulanır. Ardından, uygulama davranışını test etmek için veri bölümünü temizlemeden 4 KB ve 16 KB modları arasında geçiş yapabilirsiniz.
16 KB modunu kontrol etme
Sayfa boyutunu doğrulamak için sayfa boyutunu alma bölümündeki adımları uygulayın.
Bu sayfadaki içerik ve kod örnekleri, İçerik Lisansı sayfasında açıklanan lisanslara tabidir. Java ve OpenJDK, Oracle ve/veya satış ortaklarının tescilli ticari markasıdır.
Son güncelleme tarihi: 2025-07-27 UTC.
[[["Anlaması kolay","easyToUnderstand","thumb-up"],["Sorunumu çözdü","solvedMyProblem","thumb-up"],["Diğer","otherUp","thumb-up"]],[["İhtiyacım olan bilgiler yok","missingTheInformationINeed","thumb-down"],["Çok karmaşık / çok fazla adım var","tooComplicatedTooManySteps","thumb-down"],["Güncel değil","outOfDate","thumb-down"],["Çeviri sorunu","translationIssue","thumb-down"],["Örnek veya kod sorunu","samplesCodeIssue","thumb-down"],["Diğer","otherDown","thumb-down"]],["Son güncelleme tarihi: 2025-07-27 UTC."],[],[],null,["# Enable 16 KB toggle\n\n16 KB toggle lets you to try a 16 KB kernel. This toggle switches\nbetween a 4 KB kernel and 16 KB kernel and can be found inside the\n\"Developer option\" menu in the settings app. The 16 KB toggle can be used\nto check application compatibility with the 16 KB kernel, but it might not\nreflect performance of actual 16 KB device due to the use of subpage blocks\n(when using EXT4 for `/data` and `/metadata` partitions) in 16 KB mode.\n\nSteps for configuring toggle\n----------------------------\n\n1. Make sure the device has set up the variables to be page-agnostic (to work\n with both 4 KB and 16 KB page size kernels).\n You may want to install the 16k kernel directly to make sure the device works in\n 16 KB mode directly before continuing to add the developer option.\n See the virtual device example [target config](https://cs.android.com/android/platform/superproject/+/android-latest-release:device/google/cuttlefish/vsoc_arm64_pgagnostic/phone/aosp_cf.mk;l=68).\n\n PRODUCT_NO_BIONIC_PAGE_SIZE_MACRO := true\n PRODUCT_MAX_PAGE_SIZE_SUPPORTED := 16384\n\n2. Setup product variable to display developer option in settings\n `PRODUCT_16K_DEVELOPER_OPTION := true`\n\n3. Set kernel path using `BOARD_KERNEL_PATH_16K`.\n This kernel should be built with `CONFIG_ARM64_16K_PAGES=y.`\n\n BOARD_KERNEL_PATH_16K := kernel/prebuilts/mainline/$(TARGET_KERNEL_ARCH)/16k/kernel-mainline.\n\n4. Set modules config path variable `BOARD_KERNEL_MODULES_16K`. This variable\n points to kernel modules which support 16KB. Setting these parameters creates\n two OTAs on the system partition : `boot_ota_16k.zip`(to switch to 16 KB\n kernel) and `boot_ota_4k.zip`(to switch to 4 KB kernel). Enable incremental\n OTAs by setting `BOARD_16K_OTA_USE_INCREMENTAL := true` for smaller size boot\n OTAs.\n\n BOARD_KERNEL_MODULES_16K += $(wildcard kernel/prebuilts/mainline/$(TARGET_KERNEL_ARCH)/16k/*.ko)\n BOARD_KERNEL_MODULES_16K += $(wildcard kernel/prebuilts/common-modules/virtual-device/mainline/$(TARGET_KERNEL_ARCH)/16k/*.ko)\n\n5. Set `BOARD_16K_OTA_MOVE_VENDOR := true` to move OTAs to the vendor partition.\n Only set this to move OTAs from system to vendor partition.\n\n### Verification\n\nAfter successfully configuring the toggle, follow these steps:\n\n1. Check if **Boot with 16 KB page size** toggle is visible in settings app.\n2. Check if `/system/boot_otas` or `/vendor/boot_otas` contains two OTA zip files : `boot_ota_16k.zip` and `boot_ota_4k.zip`.\n\nUse 16 KB toggle\n----------------\n\n1. Go to **Settings \\\u003e System \\\u003e Software updates** and apply any updates which are available.\n2. Enable developer options. For instructions, see [Configure on-device developer options](https://developer.android.com/studio/debug/dev-options).\n3. If the device is detected as OEM locked, a dialog displays asking you to OEM unlock the phone. For instructions, see [Lock and unlock the bootloader](/docs/core/architecture/bootloader/locking_unlocking).\n4. Click **Boot with 16 KB page size** . If `/data` and `/metadata`aren't ext4, a dialog displays asking you to wipe the device. Click **Erase all data** to wipe the device. The device is wiped and you must enable developer options again.\n5. Click **Boot with 16 KB page size**. A dialog displays asking you to switch to 16 KB, and on confirming, boot OTAs are applied. You can then toggle back and forth between 4 KB and 16 KB mode without clearing the data partition to test app behavior.\n\nCheck 16 KB Mode\n----------------\n\nFollow steps at [getting page size](/docs/core/architecture/16kb-page-size/getting-page-size)\nto verify page size."]]