Linux小知识2 系统的启动

我们在上文中介绍了文件系统,提到了Linux的文件系统存在一个块的概念,其中有一个特殊的块:引导块。这和我们这里要讲的系统启动有关。

BIOS

基本输入输出系统,基本上是一个操作系统最早实现也是最早运行的第一个程序。是一个比较古早经典的概念。

它的作用就是初始化硬件,检测硬件功能,以及最重要的:引导操作系统。

最开始写在只读存储器中,后来写在可读写的Eprom或者闪存。也就是可以修改了。

首先完成的是芯片组和内存的初始化,然后把自己加载到主存。

然后接着三个任务:

1,加电自检

2,初始化。

3,加载引导程序。

引导程序

启动设备的0磁道0柱面1扇区为引导扇区,包含两个部分:MBR(446字节),DPT(64字节)。

分别叫做主引导程序和磁盘分区表。每个磁盘分区要用16字节来描述,这也是为什么只能有4个基本分区的原因。

最后两字节为55AA,是该磁盘包含MBR启动引导的标识。

引导程序在磁盘上,bios在闪存和eprom中。

MBR不是直接引导操作系统,而是用来引导第二部分的引导程序的,第二部分的引导程序可以位于磁盘的其他分区,NTLDR,BOOTMGR,GNU GRUB等等。

引导程序包括MBR,NTLDR,GRUB。

GNU GRUB是大部分Linux发行版的引导程序。

GRUB

一个多操作系统启动程序,用来引导多个不同的系统。比如我们的Linux和Windows可以使用这个来引导,它属于第二阶段的引导程序,允许用户加载一个操作系统内核。

Ubuntu22.04采用2.06版本的GRUB。

配置文件为grub.cfg。

通过GNUB加载Linux内核,这之后就会转移控制权给Linux内核,进入内核阶段。

内核阶段

内核阶段会完成一些内存操作和数据结构的初始化,完成硬件诊断。创建init进程,进程id为1,。

之后就会进入登录,然后进入系统。

其他的内容

MBR还有GPT,Bios和UEFI的区别。

UEFI是统一可拓展固件接口的英文缩写,定义了一种在操作系统和平台固件之间的接口标准。用于操作系统自动从预启动的操作环境加载到一种操作系统上。UEFI准确来说不是一个程序,而是一个规范,和BIOS不同。

UEFI比BIOS先进。

GPT比MBR先进。

legacy启动也就是BIOS启动。

GPT是全局唯一标识分区列表。支持分区数目没有限制,支持硬盘大小也远高于MBR的DPT分区表。GPT仅支持64位操作系统。

目前UEFI只支持GPT,但是现在出现了UEFI加BIOS的兼容并行模式了,由BIOS集成UEFI。

关闭系统

shutdown命令,init命令,halt命令,poweroff命令,reboot命令。

相关推荐
一方热衷.3 分钟前
在线安装对应版本NVIDIA驱动
linux·运维·服务器
独自归家的兔6 分钟前
ubuntu系统安装dbswitch教程 - 备份本地数据到远程服务器
linux·运维·ubuntu
m0_694845576 分钟前
tinylisp 是什么?超轻量 Lisp 解释器编译与运行教程
服务器·开发语言·云计算·github·lisp
ONE_SIX_MIX8 分钟前
ubuntu 24.04 用rdp连接,桌面黑屏问题,解决
linux·运维·ubuntu
龙飞059 分钟前
Systemd -systemctl - journalctl 速查表:服务管理 + 日志排障
linux·运维·前端·chrome·systemctl·journalctl
*小海豚*10 分钟前
在linux服务器上DNS正常,但是java应用调用第三方解析域名报错
java·linux·服务器
June`10 分钟前
muduo项目排查错误+测试
linux·c++·github·muduo网络库
春日见12 分钟前
如何创建一个PR
运维·开发语言·windows·git·docker·容器
DARLING Zero two♡20 分钟前
告别 Docker 命令行!Portainer+cpolar 让容器管理从局域网走向公网
运维·docker·容器
消失的旧时光-194326 分钟前
Linux 编辑器入门:nano 与 vim 的区别与选择指南
linux·运维·服务器