1 .. include:: ../../disclaimer-zh_CN.rst 2 3 :Original: Documentation/arch/riscv/boot-image 4 5 :翻译: 6 7 司延腾 Yanteng Si <siyanteng@loongson.cn> 8 9 .. _cn_boot-image-header.rst: 10 11 ========================== 12 RISC-V Linux启动镜像文件头 13 ========================== 14 15 :Author: Atish Patra <atish.patra@wdc.com> 16 :Date: 20 May 2019 17 18 此文档仅描述RISC-V Linux 启动文件头 19 20 TODO: 21 写一个完整的启动指南。 22 23 在解压后的Linux内核镜像中存在以 24 25 u32 code0; /* Executabl 26 u32 code1; /* Executabl 27 u64 text_offset; /* Image loa 28 u64 image_size; /* Effective 29 u64 flags; /* kernel fl 30 u32 version; /* Version o 31 u32 res1 = 0; /* Reserved 32 u64 res2 = 0; /* Reserved 33 u64 magic = 0x5643534952; /* Magic num 34 u32 magic2 = 0x05435352; /* Magic num 35 u32 res3; /* Reserved 36 37 这种头格式与PE/COFF文件头兼容,并 38 和RISC-V文件头可以在未来合并为一 39 40 注意 41 ==== 42 43 - 将来也可以复用这个文件头,用 44 EFI应用程序一样加载,EFI规范中 45 支持EFI桩,应该用“MZ”魔术字符 46 文件头的其余部分. 47 48 - 表示文件头版本号的Drop-bit位域 49 50 ========== ========== 51 Bits 0:15 次要 版本 52 Bits 16:31 主要 版本 53 ========== ========== 54 55 这保持了新旧版本之间的兼容性 56 当前版本被定义为0.2。 57 58 - 从版本0.2开始,结构体成员“magic 59 最初,该成员应该与ARM64头的“mag 60 “magic2”成员代替“magic”成员与 61 62 - 在当前的文件头,标志位域只剩 63 64 ===== ============================== 65 Bit 0 内核字节序。1 if BE, 0 if 66 ===== ============================== 67 68 - 对于引导加载程序加载内核映像 69 则将引导失败。
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.