grub
好喝不过一点点
这个作者很懒,什么都没留下…
展开
-
grub源码分析之boot.S
转载于“https://blog.csdn.net/conansonic/article/details/78482766”。本章开始分析grub的源码,版本为2.02。系统开机启动后,BIOS会将硬盘(假设从硬盘启动)的第一个扇区装载到内存0x7c00位置开始执行,该地址对应grub中的start函数,下面来看。grub-core/boot/i386/pc/boot.Sboot star...转载 2019-04-08 09:28:45 · 1994 阅读 · 0 评论 -
grub源码分析之diskboo.S
转载于“https://blog.csdn.net/conansonic/article/details/78482766”。第二个扇区的代码在grub源码的diskboot.S中,下面来看。grub-core/boot/i386/pc/diskboot.Sdiskboot start第一部分_start:pushw %dxpushw %siMSG(notification_...转载 2019-04-08 14:33:53 · 524 阅读 · 0 评论 -
grub源码分析之startup_raw.S
转载于 “https://blog.csdn.net/conansonic/article/details/78534950”继续上一章的分析,0x8200地址处的代码定义在startup_raw.S文件中。grub-core/boot/i386/pc/startup_raw.S_start:LOCAL (base):ljmp $0, $ABS(LOCAL (codestart)).....转载 2019-04-08 15:53:36 · 386 阅读 · 0 评论 -
grub源码分析之boot.img-Makefile
转载于 “https://blog.csdn.net/conansonic/article/details/78667939”本章记录grub2中的boot.img是如何生成的,总结如下:第一步:根据boot.S生成boot_image-boot.o文件。首先在对应目录下创建.dirstamp文件,然后将boot.S汇编文件编译成boot_image-boot.o,在编译过程中,将依赖关...转载 2019-04-09 10:21:18 · 1081 阅读 · 1 评论 -
grub源码分析之diskboot.img
同上篇boot.img生成过程类似,不再一一分析,仅记录编译过程log。第一步:根据diskboot.S生成diskboot_image-diskboot.o文件。【编译过程log如下】gcc -DHAVE_CONFIG_H -I. -I…/…/grub-core -I… -Wall -W -DGRUB_MACHINE_PCBIOS=1 -DGRUB_MACHINE=I386_PC -m...原创 2019-04-09 10:28:16 · 461 阅读 · 0 评论 -
grub源码分析之lzma_decompress.img
同上篇boot.img生成过程类似,不再一一分析,仅记录编译过程log。第一步:根据startup_raw.S.S生成lzma_decompress_image-startup_raw.o文件。【编译过程log如下】gcc -DHAVE_CONFIG_H -I. -I…/…/grub-core -I… -Wall -W -DGRUB_MACHINE_PCBIOS=1 -DGRUB_MAC...原创 2019-04-09 10:41:14 · 625 阅读 · 0 评论 -
grub源码分析之kernel.img-Makefile
转载于 “https://blog.csdn.net/conansonic/article/details/78735401”《grub源码分析之boot.img-Makefile》https://blog.csdn.net/baidu_31504167/article/details/89136605kernel.img生成过程总结如下:【config配置如下】../configur...转载 2019-04-09 16:47:59 · 1115 阅读 · 0 评论 -
grub源码分析之startup.S
转载于 “https://www.cnblogs.com/silmerusse/p/3536456.html”kernel.img由startup.S以及一堆c文件编译而成。这是一个ELF格式的文件。(其实前面的boot.img、 diskboot.img、lzma_decompress.img本来也都是ELF格式文件,但是经过了精简。)kernel.img链接时,目标装载地址是0x900...转载 2019-04-09 19:32:16 · 587 阅读 · 0 评论 -
Grub编译安装至MBR过程
Ubuntu环境下修改grub源码后重新编译安装过程如下:1、grub官网下载源码,并解压;2、进入主目录后执行 ./configure 【相应配置选项】;3、make; 【编译源码】4、sudo make install; 【安装grub工具到系统】至此grub已经安装完毕,但是生成的boot.img、core.img还未安装至硬盘相应位置。需要继续执行如下指令,进入上述编译目录...原创 2019-04-16 20:02:59 · 725 阅读 · 0 评论