CDLinux操作系统的结构

本文转帖自:http://kxs-co.gicp.net/Linux/help/CDLinux/loader.html

1. 目录结构

1.1 打开CDLinux的iso会有以下目录:

CDlinuxCDLinux操作系统的核心目录,所有重要的文件都放在这里面
[BOOT]一个隐藏文件夹,是mkisofs时生成的,可直接无视它的存在
efi存放efi启动文件的目录
isolinuxBIOS启动工具,科学社添加,原iso不带此件夹,内有详细说明
boot.cat一个隐藏文件,打包iso时生成的,可直接无视它的存在
mkisofs.sh科学社重写的打包iso脚本,内有详细使用说明,非原iso打包工具

1.2 CDlinux 子目录说明:

boot启动目录
doc文档目录
extramd模块存放目录,核心目录
lan语言目录,在zh目录下的zh-cdl.md是fcitx输入法模块
local作用与extra相同,可以存放md模块或tgz软件包模块
settings配置文件目录,设置文件会存放于此,LiveCD用不到
bzImage内核映像文件,核心文件
initrd内核辅助文件,核心文件

2. 加载顺序

下图是一张Linux通用加载顺序图:
cdlinux-catalog.png

然而,在CDLinux中的文件加载顺序为:
[boot.efi 或 boot.cat] --> [bzImage] --> [initrd] --> [xx-cdl.md] --> [xx-cdl.tgz]
注意:
1,上面的加载顺序中前三个是固定不变的,不管何时都一定会按此顺序加载。
2,xxx-cdl.md 模块的优先级高于 xxx-cdl.tgz,所以是先加载md模块再加载tgz模块。
3,当有多个md模块和多个tgz模块时,加载顺序按[0-9],[A-z]首字母或数字升序加载。

3. 几个文件简单科普

vmlinux编译生成的内核映像文件,未压缩
vmlinuzvmlinux压缩后的内核映像文件
initrd编译vmlinux时如果有把一些重要的硬件设备支持编译成了内核模块,比如:硬盘支持,文件系统支持,固件等时产生的。它把这些模块抢在内核启动前加载,否则内核可能会因为缺少什么而造成系统启动失败
zImage压缩vmlinuz后的文件,即vmlinux的第二次压缩内核映像文件
bzImagebig-zImage,大型zImage文件,zImage加载于第一640K低端内存,bzImage加载于大于1M以上的高端内存,通常文件比较大

添加新评论

  关于博主

一个快乐的技术肥宅~~

您是第位访问本站的大侠~~

  近期评论

  •  ud3的博客: 第一种方法没有找到路径啊。CommonMark没有
  •  helloworld: 度盘地址呢
  •  老油条: 感谢楼主和老赵的付出。感叹确实现实可悲,种种原因不能继续做下去。
  •  ian: 请问这里说的完美驱动扩展坞,是微软原装的那台充电口扩展坞吗
  •  TIGRE: 求config.plist!同Miix4用户,感谢🙏
  •  李飞: 博主 你好 可否发下完整的详细步骤,小白一个,谢谢!
  •  xuzhimin1993: 那么,能正确显示电量吗
  •  fowse: 赞,完美解决方案。
  •  超平和buster: 强啊,但是无网络就很难受OωO
  •  崔先森: 第二种方法简单粗暴~

青春就是用来追忆的,当你怀揣着它时,它一文不值,只有将它耗尽后,再回过头看,一切才有了意义,爱过我们的人和伤害过我们的人,都是我们青春存在的意义。

既然活着来到这个世界,就没有打算活着回去。所以,在这有限的时间里,我们应该珍惜生命,珍惜机会,更要珍惜那得之不易的时间。因那滴答做响的时间脚步,一旦走过,再不回头。

青春是一个充满魁力,充满诱惑的时代。好动是青春,好奇是青春,好玩是青春。玩世不恭更是青春,我们的一切切都是青春。

要先打败任何事情得先学会打败自己。

我会把每一次改变当做成长,哪怕是痛也值得。