bootloader 如何加载内核和initramfs
时间: 2023-11-28 09:27:20 浏览: 76
Bootloader会先加载内核,然后再加载initramfs。首先,它会寻找内核并将其加载到内存中,并且会将内核命令行传递给内核。接下来,它会将initramfs加载到内存中的一个临时文件系统,以便内核可以使用其中的文件和工具来启动和初始化系统。一旦初始化完成,initramfs将被卸载并释放内存,然后系统将继续启动。
相关问题
Linux内核配置和编译的过程
Linux内核的配置和编译过程可以分为以下几个步骤:
1. 下载内核源码:可以从官方网站或者镜像站点下载。
2. 解压内核源码:使用tar命令,例如:
```
tar -xvf linux-x.y.z.tar.gz
```
其中,x.y.z表示内核版本号。
3. 进入内核源码目录:使用cd命令,例如:
```
cd linux-x.y.z
```
4. 配置内核:使用make命令中的config选项,例如:
```
make menuconfig
```
这个命令会打开一个菜单界面,可以在里面配置内核选项,例如设备驱动、文件系统、网络协议等等。配置完成后保存并退出。
5. 编译内核:使用make命令,例如:
```
make
```
这个命令会编译整个内核源码。
6. 安装内核:使用make命令的install选项,例如:
```
make install
```
这个命令会把编译好的内核文件复制到/boot目录下,并且生成一个新的initramfs镜像文件。
7. 更新bootloader配置:如果使用的是GRUB引导程序,需要使用update-grub命令更新配置文件,例如:
```
update-grub
```
以上是Linux内核的配置和编译过程的主要步骤。其中,第4步中的make menuconfig命令是配置内核的关键步骤,需要根据实际需求选择需要的内核选项。如果没有特殊需求,可以使用默认选项进行配置。另外,在第5步中,可以使用make -jN命令指定使用N个线程来加速编译过程,其中N为正整数。
linux内核文件储存结构
Linux内核文件储存结构大致分为以下几部分:
1. Bootloader:引导程序,通常是GRUB或LILO,在系统启动时负责加载内核到内存中。
2. 内核镜像:也称为vmlinuz,是内核编译后生成的二进制可执行文件,包含了全部的内核代码和数据。
3. initramfs/initrd:是一个压缩的文件系统,包含了内核启动时需要用到的驱动程序、文件系统和其他必要的组件。
4. 内核模块:是一种动态链接库,可以在运行时加载和卸载,包括设备驱动程序、文件系统、网络协议栈等。
5. 内核参数:是内核启动时的配置参数,可以通过bootloader传递给内核,包括根文件系统的位置、调试选项、内存参数等。
这些文件通常存储在/boot目录下,其中内核镜像和initramfs/initrd的文件名可以根据实际情况进行更改。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)