Linux启动过程中,是先内核加载还是先加载驱动程序

如题所述

这是一个很好的问题;因为如果先加载驱动,那么没有内核启动,他是怎么加载驱动的呢?
如果先加载内核那他是怎么识别文件系统和磁盘驱动的呢?
是一个先有鸡还是先有蛋的问题;
在rel系列的操作系统中;在/boot目录下有grub目录,还有initrd-XXX.img,还有vmlinuz.....其实这3个文件和目录是系统启动的关键;
grub第一阶段在MBR中,功能就是引导第2阶段,第1.5阶段和第2阶段在/boot/grub当中;
为什么叫他1.5阶段,是因为系统中就这么命名的;
而1.5阶段中就启动需要的常见的文件系统类别,当然如果自制系统,可以把文件系统模块放到这个里面;
第2阶段就是为了引导系统的;
之后系统启动,然后通过rc.sysinit开始加载和初始化各种驱动;

所以你的问题的总结是:先部分驱动,然后系统,然后全部驱动;
当时学完了这个就自制了在手机上启动一个linux;当然也可以称为安卓;因为我也是用busybox实现的;只是没有好看画面,还有驱动不全;只是能启动而已;
温馨提示:内容为网友见解,仅供参考
无其他回答

linux系统启动过程主要有哪些
首先,当计算机打开电源后,会进行BIOS开机自检,按照BIOS中设置的启动设备来启动。操作系统接管硬件以后,首先读入\/boot目录下的内核文件,这是Linux系统启动的第一步,即内核引导。内核是操作系统的核心,负责管理系统的进程、内存、设备驱动程序、文件和网络系统,决定着系统的性能和稳定性。紧接着,内核...

Linux启动过程与级别,以ARM-RK3566开发板系统为例
Linux启动流程分为三个关键步骤:BootLoader -> kernel -> RootFilesystem。系统启动后,BootLoader执行内核加载,随后内核初始化硬件与驱动,调用init程序。init程序根据\/etc\/inittab文件决定默认运行级别,执行\/etc\/init.d\/rc脚本,按顺序启动指定级别下的服务。系统级别的对应如下:runlevel 0 : 系统停机...

linux如何启动端口linux如何启动
开机--加电自检--读取CMOS设置--从硬盘引导记录查找系统所在位置--读取GRUB配置文件(\/boot\/grub\/grub.conf),加载内核,驱动硬件--开启init进程,读取相应配置文件(\/etc\/inittab),打开默认运行级别,加载相应服务,开机启动项--完成启动过程 linux系统的cmd在哪里启动啊?解决linux系统的cmd在哪里启动...

嵌入式linux启动流程
2. 内核加载:在Bootloader完成硬件初始化和准备好内核映像后,接下来就是将Linux内核加载到内存中。通常,内核映像会被加载到RAM中的一个特定位置,这个位置是由Bootloader在之前的步骤中设置好的。内核映像包括压缩的内核代码和一些必要的参数,如设备树(Device Tree)或ATAGS。设备树用于描述硬件配置,使得...

请教linux的启动过程
第一步、加载内核 操作系统接管硬件以后,首先读入 \/boot 目录下的内核文件。以我的电脑为例,\/boot 目录下面大概是这样一些文件:ls \/boot config-3.2.0-3-amd64 config-3.2.0-4-amd64 grub initrd.img-3.2.0-3-amd64 initrd.img-3.2.0-4-amd64 System.map-3.2.0-3-amd64 System...

简述linux操作系统启动流程
1. 启动流程概述:Linux操作系统启动过程涉及多个阶段,包括系统自检、加载内核、初始化系统环境等。下面是具体的启动流程。详细解释:系统自检阶段:在启动过程中,计算机首先进行硬件自检,检查各项硬件设备是否正常运行。这一阶段完成后,启动BIOS。BIOS会查找启动设备上的第一个可引导块,找到内核文件的存放...

linux如何加载驱动
linux操作系统下,加载驱动的方式有两种方法:静态加载驱动。通过将驱动程序编译到内核而进行的一系列配置操作。动态加载驱动。是内核注册设备信息,从而在kernel启动后,再通过insmod指令,关联好主、次设备号,从而以模块的形式进行加载。

linux操作系统的详细启动过程,谢谢(硬件启动的先后顺序)
统初始化和运行服务的任务后,返回init;init启动了mingetty后,打开了终端供用户登录系统,用户登录成功后进入了Shell,这样就完成了从开机到登录的整个启动过程。加载内核 LILO启动之后,如果你选择了Linux作为准备引导的操作系统,第一个被加载的东西就是内核。请记住此时的计算机内存中还不存在任何操作系统, PC(因为...

Linux 内核启动流程
Linux 内核启动流程经过一系列关键步骤:首先,ARM-Linux启动从内核自解压开始,接着是内核引导,随后是初始化阶段,包括BusyBox的初始化,它启动"init"进程并执行用户空间关键脚本。编译内核时,通过scripts\/link-vmlinux.S脚本链接多个子目录的文件生成vmlinux可执行文件,其中vmlinux.lds脚本确定启动入口...

Linux开机启动详解
Linux开机启动过程详述如下:开机启动首先从加载BIOS开始,BIOS存于主板,包含CPU、硬盘、内存等硬件的基本信息,与操作系统独立。接着,BIOS将控制权转交硬盘的MBR,MBR位于硬盘第0磁道第1扇区,包含分区表和引导程序。引导程序,如grub或lilo,可能位于MBR或硬盘数据区。加载引导程序后,内核地址被读取并...

相似回答