initrd及initramfs文件的制作

启动执行流程

initrd和 initramfs 中的文件 在系统启动的时候被执行
此两者二者只可取其一或取0
	// 取0为 无initxxx流程
	// 二者都有则为initrd
initrd执行流程在内核流程上要早于initramfs.
	也就是 1 2 只可取其一或取0,在整个内核流程上如下:
		...
		initrd执行流程 --- 1
		...
		initramfs执行流程 --- 2


initrd执行流程
	/linuxrc
		mount -t proc proc /proc
		mount -t sysfs sysfs /sys
		insmod xxx
		insmod yyy
		mdev -s
		// 然后A下一步是进入内核,做一些其他驱动的注册
		// 然后B挂载磁盘上的文件系统,并执行/sbin/init
initramfs执行流程
	/init
		mount -t proc proc /proc
		mount -t sysfs sysfs /sys
		insmod xxx
		insmod yyy
		mdev -s
		mount /dev/xxx /mnt
		exec switch_root /mnt /sbin/init // 然后下一步一般是磁盘上的文件系统 /sbin/init 的执行流程
文件系统中的文件
最少组成
initrd和 initramfs 里面有一些文件,也可以为空
如果 kernel 中有所有板子或者pc的驱动,那么 initrd和 initramfs 中的文件为空也可以.
通常组成
    1. 设备文件
/dev/null 		: mknod -m 666 null 	c 1 3
/dev/console 	: mknod -m 666 console 	c 5 1
    1. init系统
对应 initrd 	  为 /linuxrc
对应 initramfs 为 /sbin/init
    1. etc 中的文件
/etc/initab
/etc/fatab
    1. 一些bin文件
mdev
对于 initramfs ,要有 switch_root
    1. 驱动文件
可 通过 make modules_install  INSTALL_MOD_PATH=/path/to/initxxx/
可在 /etc/inittab 中指定 执行 /etc/init.d/rcS,可在 /etc/init.d/rcS 中 执行 insmod xxx
参考
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值