当前位置:   article > 正文

linux 操作系统启动原理,Linux( bootloader)启动操作系统过程

在linux使用reboot loader

Linux Booting Process:

(1) BIOS

功能:执行计算机系统完整性检测;通电自检;搜索/加载/执行 boot loader程序。

一旦 boot loader 程序被探测到,并且加载到内存,BIOS会把控制权交给它。

(2) MBR

MBR位于引导盘(Bootable Disk)的第一个扇区(512B)。

通常是在/dev/sda或者/dev/hda。

5746b2e24be6

图片.png

注意:引导盘(bootable disk)和引导分区(bootable partition)的区别。

(3) GRUB

GRUB = Grand Unified Bootloader

如果在系统中安装有多个内核镜像,你可以选择某一个被执行。

GRUB展示了一个启动画面,等待几秒,如果你不输入任何字符,它将会按照grub配置文件的规定加载默认的内核镜像。

Grub配置文件在: /boot/grub/grub.conf

它包含了内核和initrd.img

(4) Kernal

(注意Kernal和kernel不一样)

Kernal按照grub.conf文件的规定,挂载根文件系统。

一旦kernal启动,它第一件事情就是执行:sbin/init 进程。

initrd是被kernel用做临时根文件系统,直到Kernal挂载了根文件系统。

(5) INIT(Initilization)

根据/etc/inittab文件决定Linux运行层级,运行级别决定了哪个初始化程序(Initial Programs)被加载到启动项。

(6) Run Level

根据你的运行级别的设定,操作系统会执行下来对应的文件夹下的程序:

Run level 0 - /etc/rc.d/rc0.d/

Run level 1 - /etc/rc.d/rc1.d/

Run level 2 - /etc/rc.d/rc2.d/

Run level 3 - /etc/rc.d/rc3.d/

Run level 4 - /etc/rc.d/rc4.d/

Run level 5 - /etc/rc.d/rc5.d/

Run level 6 - /etc/rc.d/rc6.d/

Linux的7个运行级别(Run levels):

0 - halt // 系统停机状态,系统默认运行级别不能设置为0,否则不能正常启动,机器关闭。

1 - Single user mode // 单用户模式,root权限,用于系统维护,禁止远程登录,就像Windows下的安全模式登录。

2 - Multiuser, without NFS // 多用户状态,没有NFS支持

3 - Full multiuser mode // 完整的多用户模式,有NFS,登录后进入控制台命令行模式。

4 - unused // 系统未使用,保留一般不用,在一些特殊情况下可以用它来做一些事情。例如,笔记本电脑电池用尽时候,可以切换到这个模式来做一些设置。

5 - X11 // X11控制台,登录后进入图形GUI模式,XWindow系统。

6 - reboot // 系统正常关闭并重启,默认运行级别不能设置为6,否则不能正常启动。运行init6 机器就会重启

# init 6

标准的Linux运行级别为3或者5,如果是3的话,系统就在多用户状态;如果是5的话,则是运行着XWindow系统。不同的运行级别有着不同的用处,也应该根据自己的不同清晰来设置。例如,如果丢失了root口令,那么可以让机器启动进入单用户模式来设置。

[root@localhost rc.d]# cd rc4.d/

[root@localhost rc4.d]# ls

K50netconsole S10network

如果是使用S(Start)开头的程序,那么是用在启动的时候,

如果是使用K(Kill)开头的程序,那么是用在关机的时候。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家自动化/article/detail/730914
推荐阅读
相关标签
  

闽ICP备14008679号