# Tổng quan về kiến trúc và quy trình khởi động

Cold boot là quy trình khởi động hệ thống từ trạng thái đang tắt nguồn. Quy trình khởi động nguội bao gồm các bước sau:

1. Cold boot bắt đầu thực thi trên trình tải khởi động chính (PBL) thiết lập hệ thống ban đầu cho Trình tải khởi động có thể mở rộng (XBL).
2. XBL thực hiện khởi tạo hệ thống rộng hơn, bao gồm khởi tạo DDR và tải ảnh UEFI.
3. UEFI cung cấp một giao diện firmware phong phú, cho phép tải systemd-boot như một trình quản lý khởi động (boot manager) trên hệ thống Linux sử dụng nền tảng Qualcomm Linux, để quản lý các ảnh hệ điều hành (OS images).

Để biết thêm thông tin về quy trình cold boot hoàn chỉnh, hãy xem phần [Kiến trúc cold boot](https://docs.qualcomm.com/bundle/publicresource/topics/80-70020-4/bootloader-architecture.html).

## Trình quản lý khởi động UEFI

Qualcomm Linux hỗ trợ systemd-boot làm trình quản lý khởi động theo chuẩn giao diện firmware mở rộng phổ biến (UEFI) để tải và khởi động Linux kernel. Trong trường hợp này, Qualcomm Linux kernel được xây dựng dưới dạng stub EFI.

## Systemd-boot

Systemd-boot là một trình quản lý khởi động UEFI thực thi ảnh EFI, cung cấp các mục khởi động và hỗ trợ ảnh kernel hợp nhất (UKI). Systemd-boot hỗ trợ các thành phần sau:

- Các mục khởi động: Các mục đặc tả trình tải khởi động loại 1 nằm trong thư mục `loader/entries/` trên ESP. Các tệp này mô tả ảnh Qualcomm^®^ Linux kernel cùng với ảnh initrd liên quan và các tệp thực thi EFI khác.
- UKI: Ảnh kernel hợp nhất EFI  đặc tả trình tải khởi động loại 2 là các tệp thực thi EFI nằm trong thư mục `/EFI/Linux/` trên ESP.

    Để biết thêm thông tin về các mục khởi động và ảnh kernel hợp nhất, hãy xem [The Boot Loader Specification](https://uapi-group.org/specifications/specs/boot_loader_specification/).

Systemd-boot là một phần của gói systemd thuộc lớp meta Yocto. Yocto recipe sử dụng tệp recipe `systemd-boot_254.4.bb` để biên dịch systemd-boot và tệp recipe `uki.bbclass` để xử lý việc tạo ảnh ESP.

Để biết thêm thông tin về systemd-boot, hãy xem phần [Đặt cấu hình và khởi động bảo mật bằng systemd-boot và UKI](https://docs.qualcomm.com/bundle/publicresource/topics/80-70020-27/qualcomm_linux_software_components.html#configure-and-secure-boot-with-systemd-boot-and-uki).

## Qualcomm Linux kernel dưới dạng stub EFI

Stub khởi động EFI cho phép khởi động trực tiếp Linux kernel Qualcomm mà không cần trình tải khởi động EFI thông thường.

Firmware khởi động có thể tải ảnh EFI dưới dạng tệp thực thi khi Qualcomm Linux kernel được biên dịch với tùy chọn cấu hình kernel `CONFIG_EFI_STUB`. Trong trường hợp này, trình tải firmware sẽ điều hướng đến vị trí `EFI boot stub` trong ảnh EFI `drivers/firmware/efi/libstub/` để khởi động kernel này.

Đối với Arm^®^ (Arm64), khi không hỗ trợ kernel nén, ảnh kernel hoạt động như một định dạng tệp thực thi di động (PE) hoặc ảnh có định dạng tệp đối tượng chung (COFF), và stub EFI được liên kết với kernel.

Để biết thêm thông tin về cách khởi động Linux kernel dưới dạng ảnh EFI, hãy xem [The EFI Boot Stub](https://docs.kernel.org/admin-guide/efi-stub.html).

## Ảnh khởi động và ESP hoặc phân vùng khởi động

ESP hoặc phân vùng khởi động đóng vai trò là vị trí lưu trữ cho ảnh `efi.bin`  trong đó đóng gói systemd-boot và UKI. UKI bao gồm ảnh kernel, initramfs và các tham số dòng lệnh kernel.

Firmware UEFI chạy trình tải khởi động UEFI và tải ảnh khởi động kernel. ESP được định dạng theo hệ thống tập tin FAT, được hỗ trợ trong phần đặc tả UEFI. Để biết thêm thông tin về định dạng ảnh UKI và sự hỗ trợ tương ứng trong các lớp meta Qualcomm Linux cơ sở, hãy xem phần [Đặt cấu hình và khởi động bảo mật bằng systemd-boot và UKI](https://docs.qualcomm.com/bundle/publicresource/topics/80-70020-27/configure_and_secure_boot_with_systemd_boot_and_uki.html).

## Chọn Device tree blob

Tất cả các device tree blob đều được đóng gói trong `dtb.bin`. UEFI chọn và tải DTB phù hợp cho Qualcomm Linux kernel.

Để hiểu về lựa chọn DTB trong thời gian khởi động, hãy xem [Platform device tree](https://docs.qualcomm.com/doc/80-70020-3VI/topic/kernel-development.html#device-tree).

Last Published: Jan 01, 2026

[Previous Topic
Bắt đầu với Qualcomm Linux kernel](https://docs.qualcomm.com/bundle/publicresource/80-70020-3VI/topics/getting_started_chapter2.md) [Next Topic
Đặt cấu hình cài đặt postboot](https://docs.qualcomm.com/bundle/publicresource/80-70020-3VI/topics/post-boot-settings.md)