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以上的高端内存,通常文件比较大

添加新评论

  Timeline:又是一天

test

updated on :

  关于博主

一个快乐的肥宅~

  近期评论

  •  FLy: 你好,我的surfacepro4 接的pro3的扩展坞,在黑苹果下面pd口可用,能够识别到显示...
  •  BeiDou: 谢谢,已成功解决。
  •  ud3的博客: 第一种方法没有找到路径啊。CommonMark没有
  •  helloworld: 度盘地址呢
  •  老油条: 感谢楼主和老赵的付出。感叹确实现实可悲,种种原因不能继续做下去。
  •  ian: 请问这里说的完美驱动扩展坞,是微软原装的那台充电口扩展坞吗
  •  TIGRE: 求config.plist!同Miix4用户,感谢🙏
  •  李飞: 博主 你好 可否发下完整的详细步骤,小白一个,谢谢!
  •  xuzhimin1993: 那么,能正确显示电量吗
  •  fowse: 赞,完美解决方案。

离别时的伤感,时候却很难说出口,哪怕是短暂的分离!—— by 小宇

人生应该树立目标,否则你的精力会白白浪费。

山涧的泉水经过一路曲折,才唱出一支美妙的歌。

如若不是为了一个人,谁肯枯守一座城。城市和爱情,总是有着这样那样的关系。我们会因为一个人,去到那座城,因为那是一座爱的城;我们也会因为一个人,离开一座城,那是一座绝望的伤城。

常求有利别人,不求有利自己。