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.
Koleksiyonlar ile düzeninizi koruyun
İçeriği tercihlerinize göre kaydedin ve kategorilere ayırın.
Bu sayfada, GBL ikilisinin nasıl dağıtılacağı açıklanmaktadır.
Başlatma donanım yazılımı gereksinimleri
GBL'yi kullanmak için önyükleme donanım yazılımının aşağıdaki koşulları karşılaması gerekir:
UEFI uyumluluğu. Donanım yazılımı, gerekli UEFI protokollerini uygulamalı ve kullanmalıdır. Donanım yazılımı, tanımlanmış UEFI protokollerini kullanan tedarikçiye özel uzantılara da izin vermelidir.
Güvenlik. Donanım yazılımı, yalnızca kimliği doğrulanmış resimlerin yüklenmesini sağlayarak Android Doğrulanmış Başlatma'nın (AVB) tüm yönlerini uygulamalıdır.
Başlatma modları. İkili program, normal önyükleme, kurtarma önyüklemesi ve hızlı önyükleme gibi çeşitli önyükleme modlarını işleyebilmelidir.
Dinamik bölümleme. Önyükleme donanım yazılımı, doğru A/B önyükleme yuvasının okunmasını desteklemek ve super'deki dinamik bölümlerle ve userdata ile uyumlu olmak için yuva seçim mantığını uygulamalıdır.
İşletim sistemi yapılandırması. Donanım yazılımı, cihazı başlatmak için gereken OEM özelleştirmeleriyle çekirdek komut satırını, cihaz ağacını (DTB) ve bootconfig dosyasını değiştirebilmelidir.
Korumalı sanal makine yükleniyor. İkili program, korumalı sanal makinelerin bulunduğu durumlarda Android çekirdeğinden önce önceden doğrulanmış korumalı sanal makine donanım yazılımını doğru şekilde yüklemelidir. Daha fazla bilgi için Microdroid açılış sırasına bakın.
Uyumluluk ve geriye dönük uyumluluk. Donanım yazılımı, farklı tedarikçi ve SOC'lere sahip cihazlarda çalışmalıdır ve ilgili Android sürümüyle geriye dönük uyumluluğu sürdürmelidir.
Açılış donanım yazılımı desteği
Önceki bölümdeki şartları desteklemek için gerekli değişikliklerle birlikte aşağıdaki UEFI donanım yazılımı uygulamaları GBF ile çalışır:
EDK2 (Tianocore). EDK2, popüler bir açık kaynak UEFI uygulamasıdır. EDK2 tabanlı önyükleme yükleyiciler için GBL desteği gerekir. UEFI desteği zaten mevcuttur.
U-Boot. GBL kullanımı için UEFI uyumluluğu kazanan, esnek ve yaygın olarak kullanılan açık kaynaklı bir önyükleme programı projesi.
LittleKernel (LK). Bazı tedarikçiler tarafından kullanılan açık kaynaklı bir önyükleme yükleyici.
GBL'yi çalıştırma
Çalıştırmak için önceden oluşturulmuş bir GBL ikili dosyası edinebilir veya kendi ikili dosyanızı oluşturup çalıştırabilirsiniz.
GBL ikilisini edinme ve çalıştırma
GBL, tek bir EFI uygulama ikili dosyası olarak dağıtılır. Bu ikili dosyayı, Android'in standart güncelleme mekanizmasını kullanarak cihazın temel donanım yazılımından bağımsız olarak güncelleyebilirsiniz.
Android 16'dan itibaren ARM-64 yonga setine dayalı bir cihaz gönderiyorsanız GBL'nin Google imzalı en son sürümünü dağıtmanızı ve önyükleme zincirinize entegre etmenizi önemle tavsiye ederiz.
GBL'yi derleyip çalıştırma
GBL'yi derleyip çalıştırmak için:
Depo aracının ve Bazel bootstrap'ın yüklü olduğunu doğrulayın:
sudo apt install repo bazel-bootstrap
uefi-gbl-mainline manifest dosyasını kullanarak mevcut dizininizi kaynak kontrolü için başlatın:
Sorularınız için GBL Ekibi ile iletişime geçin. android-gbl@google.com adresine e-posta gönderin.
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,["# Deploy GBL\n\nThis page explains how to deploy the GBL binary.\n\nBoot firmware requirements\n--------------------------\n\nTo use GBL, the boot firmware must meet the following requirements:\n\n- UEFI compliance. The firmware must implement and use the\n required UEFI protocols. The firmware must also allow for vendor-specific\n extensions using defined UEFI protocols.\n\n- Security. The firmware must implement all aspects of Android\n Verified Boot (AVB), ensuring only authenticated images are loaded.\n\n- Boot modes. The binary should be able to handle various boot modes, such as normal boot, recovery boot, and fastboot.\n\n- Dynamic partitioning. The boot firmware must implement slot selection logic so\n that it supports reading the correct A/B boot slot and is compatible with\n dynamic partitions and userdata in super.\n\n- OS configuration. The firmware must be capable of modifying the kernel\n command line, device tree (DTB), and bootconfig with OEM customizations\n needed to boot the device.\n\n- Protected VM loading. The binary should correctly load preverified protected\n VM firmware before the Android kernel in the presence of protected VMs. For\n further information, see Microdroid [boot sequence](/docs/core/virtualization/microdroid#boot-sequence).\n\n- Memory management. The boot firmware must support the UEFI memory allocation\n API.\n\n- Compatibility and backward compatibility. The firmware should work on devices\n with different vendor, SOCs, and maintain backward compatibility with the\n corresponding Android version.\n\n### Boot firmware support\n\nWith the modifications necessary to support requirements in the previous\nsection, the following UEFI firmware implementations work with the GBF:\n\n- [EDK2 (Tianocore)](https://github.com/tianocore/edk). A EDK2 is a popular open-source UEFI implementation. GBL support is needed for EDK2-based bootloaders, and UEFI support is already present.\n- [U-Boot](https://docs.u-boot.org/en/latest/). A flexible and widely used open-source bootloader project that is gaining UEFI compatibility for GBL usage.\n- [LittleKernel (LK)](https://github.com/littlekernel/lk). An open-source bootloader used by some vendors.\n\nRun GBL\n-------\n\nYou can obtain a prebuilt GBL binary to run or build your own and run it.\n\n### Obtain and run the GBL binary\n\nGBL is distributed as a single EFI app binary. You can update this\nbinary independently from the device's base firmware using Android's standard\nupdate mechanism.\n\nBeginning with Android 16, if you ship a device based\non ARM-64 chipset, we strongly recommend that you deploy the [latest\nGoogle-signed version](https://dl.google.com/android-gbl/android16/20250703/signed-gbl-img-13709664.zip) of GBL and integrate it into your boot chain.\n\n### Build and run the GBL\n\nTo build and run the GBL:\n\n1. Verify that you have the repo tool and Bazel bootstrap installed:\n\n sudo apt install repo bazel-bootstrap\n\n2. Initialize your current directory for source control using the `uefi-gbl-mainline` manifest file:\n\n repo init -u https://android.googlesource.com/kernel/manifest -b uefi-gbl-mainline\n repo sync -j16\n\n3. Build the EFI app:\n\n ./tools/bazel run //bootable/libbootloader:gbl_efi_dist --extra_toolchains=@gbl//toolchain:all\n\n4. Run the EFI app within Cuttlefish:\n\n cvd start --android_efi_loader=\u003cvar translate=\"no\"\u003e\u003cspan class=\"devsite-syntax-n\"\u003epath_to_the_EFI_app\u003c/span\u003e\u003c/var\u003e ...\n\n Instead of booting Android directly, this `cvd start` command uses the EFI\n app to boot Android.\n\n| **Note:** For x86 platform, use the EFI image built for x86_64.\n\nFile bugs and contact the bootloader team\n-----------------------------------------\n\nTo report a bug for the GBL, navigate to the\n[Android Generic Bootloader component in Buganizer](https://issuetracker.google.com/issues/new?component=1602063&template=2011730).\n\nFor questions, contact the GBL team, send an email to `android-gbl@google.com`."]]