linux内核的文件组织形式


前言

讲了Linux内核的一些文件组织管理


1. Linux内核体系结构

示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。

2. 内核引导与启动

在这里插入图片描述

BIOS/OF

  • 加电后处理器首先访问通常位于只读内存(一般是Flash ROM或仅仅是Flash)中的某一地址。
  • BIOS(基本输入输出)是x86系统加电后最先运行的代码。引导系统并与硬件相关的系统初始化代码。
  • Open Firmware是PPC(PowerPC)系统加电后最先运行的代码。

BIOS功能

  • 自检及初始化程序;
    自检,对CPU,640K基本内存,1M以上的扩展内存,ROM,主板,CMOS存储器等进行测试。
    初始化,包括创建中断向量、设置寄存器等。
    引导程序 ,引导DOS或Linux等操作系统。
  • 硬件中断处理;系统在加电引导机器时,要读取CMOS信息,用来初始化机器各个部件的状态。
  • 程序服务请求;程序服务处理程序主要是为应用程序和操作系统服务,这些服务主要与输入输出设备有关,例如读磁盘、文件输出到打印机等。

引导装入程序(Boot Loaders)

  • 格式化磁盘时,会创建主引导记录(MBR),该记录存储在引导设备的第一个扇区(0扇区、0磁道、0磁头)。包含:
  • 一个小程序
  • 一张四入口点的分区表
  • 结束标识符(0XAA55),用来做MBR的有效性检测。
  • Boot loader
    识别操作系统的文件格式,并根据已加载内核到内存中去执行。

BIOS 与boot loader及内核加载流程

在这里插入图片描述

GNU GRUB

GRUB(Grand Unified Bootloader),基于x86的引导装入程序,用来加载Linux。

  • GNU GRUB(GRand Unified Bootloader简称“GRUB”)是一个来自GNU项目的多操作系统启动程序。
  • GRUB允许用户可以在计算机内同时拥有多个操作系统,并在计算机启动时选择希望运行的操作系统。
  • GRUB可用于选择操作系统分区上的不同内核,也可用于向这些内核传递启动参数。

GRUB2

  • GRUB2(GRand Unified Bootloader, Version 2)是GRUB的第二版。

  • GRUB目前已经不再继续开发,只是修正存在的错误。

  • 官方的说法是GRUB的编码实在太烂,以至于没法进行维护升级了,所以重新从零开发了新的GRUB2,从此以后原来的GRUB就叫做GRUB Legacy了。

  • GRUB2对GRUB2的接口进行了完整地重写,并且采用了清晰的架构和模块化的布局。

  • 目前大部分都采用GRUB2作为内核引导管理器。

  • 操作系统必须有loader才有办法加载该OS的内核。但还是MBR是整个硬盘第一个扇区中的一个区块,大小400多B。如何存储loader的数据?

  • Stage1 :执行Boot Loader的主程序
    MBR或启动扇区仅安装boot loader的最小主程序

  • Stage2:主程序加载配置文件
    通过boot loader加载所有配置文件与相关的环境文件 ( ls –l /boot/grub2)

总结

Linux内核的文件组织形式

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

醉卧考场君莫笑

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值