इस पेज पर, Cuttlefish डिवाइस पर Android बूटलोडर की सुविधाओं को बनाने, चलाने, और डेवलप करने का तरीका बताया गया है.
AOSP के सोर्स
Android बूटलोडर की सुविधाएं डेवलप करने के लिए, Android 11 या इसके बाद के वर्शन के लिए, Cuttlefish के साथ U-boot के Cuttlefish कॉन्फ़िगरेशन का इस्तेमाल करें. इसके लिए, android16-release या जेनेरिक सिस्टम इमेज (जीएसआई) ब्रांच का इस्तेमाल करें. AOSP में ये सोर्स शामिल हैं:
U-boot के Cuttlefish कॉन्फ़िगरेशन के लिए मेनिफ़ेस्ट (
u-boot-mainline).
बूटलोडर डेवलप करना
बूटलोडर की सुविधाओं को स्थानीय तौर पर बनाने, चलाने, और डेवलप करने के लिए, यह तरीका अपनाएं:
U-boot के Android फ़ोर्क के लिए मेनिफ़ेस्ट क्लोन करें:
$ mkdir u-boot-mainline $ cd u-boot-mainline $ repo init -u https://android.googlesource.com/kernel/manifest -b u-boot-mainline $ repo sync -j$(nproc) -qCuttlefish आर्किटेक्चर के लिए सही बूटलोडर टारगेट बनाएं. उदाहरण के लिए:
x86_64
$ tools/bazel run //u-boot:crosvm_x86_64_distaarch64
$ tools/bazel run //u-boot:crosvm_aarch64_dist
बूटलोडर बाइनरी (arm64 के लिए
u-boot.binऔर x86_64 के लिएu-boot.rom)$PATH_TO_REPO/out/u-boot-mainline/distमें मिलती है.बूटलोडर की मदद से Cuttlefish डिवाइस लॉन्च करें. ऑटोबूट की सुविधा बंद करने और बूटलोडर के साथ इंटरैक्ट करने के लिए,
pause_in_bootloaderपैरामीटर शामिल करें.$ launch_cvd \ -bootloader /$PATH/$TO/u-boot-mainline/out/u-boot-mainline/dist/u-boot.rom \ -pause_in_bootloader -console=trueबूटलोडर से इंटरैक्ट करने के लिए, बूटलोडर कंसोल से कनेक्ट करें.
$ screen ~/cuttlefish_runtime/consoleबूटलोडर इंटरैक्शन पूरा होने के बाद, कंसोल में
bootटाइप करके बूट करना जारी रखें.
अलग-अलग कर्नल के साथ बूटलोडर फ़्लो की जांच करना
अलग-अलग कर्नल या कर्नल मॉड्यूल के साथ बूटलोडर फ़्लो की जांच करने के लिए, --kernel_path और --initramfs_path आर्ग्युमेंट का इस्तेमाल करके टारगेट आर्टफ़ैक्ट (कर्नल और कर्नल मॉड्यूल) पास करें. असेंबलर, बूट इमेज को फिर से पैक करता है. यह काम, आर्ग्युमेंट में पास किए गए आर्टफ़ैक्ट के आधार पर किया जाता है.
cvd create \
-kernel_path=/$PATH/$TO/common-android14-6.1/out/android14-6.1/dist/bzImage \
-initramfs_path=/$PATH/$TO/common-android14-6.1/out/android14-6.1/dist/initramfs.imgज़्यादा जानकारी के लिए, Android कर्नल डेवलप करना लेख पढ़ें.