移植Linux内核ramfs和ramdisk文件系统

在移植linux内核早期时,如果flash等存储设备的驱动还没写好,可以将文件系统放到内存中运行。
此时可以使用ramfs和ramdisk,即将内存的一部分用作文件系统。
ramfsramfs就是将文件系统和内核一起编译,编译出来的镜像就包括 内核本身和文件系统 。
内核打开ramfs:
在initramfs source file(s)选项中,填入文件系统的路径即可。
最后,uboot的bootargs中需要将init=/sbin/init修改为rdinit=/sbin/init,主要就是init和rdinit的区别。
ramdiskramdisk也是将内存的一部分用作文件系统,只不过不用像上面一样要重新编译内核。
ramdisk制作ramdisk制作可以使用genext2fs工具或者mke2fs等工具制作。
方法一:genext2fsgenext2fs安装:
sudo apt-get install genext2fsramdisk制作脚本:
genext2fs -b 16384 -d /home/book/rootfs ramdisk.imagegzip –v9 ramdisk.imagemkimage -a arm -o linux -t ramdisk -c gzip -n 'xx ramdisk filesystem' -d ramdisk.image.gz uramdisk.image.gz先使用genext2fs把/home/book/rootfs制作成一个名为ramdisk.image的ramdisk然后使用gizp压缩ramdisk.image,得到ramdisk.image.gz最后用mkimage工具生成uramdisk.image.gz给uboot使用方法二:mke2fsramdisk制作脚本:
dd if=/dev/zero of=ramdisk.image bs=1k count=15360mke2fs –f –v –m 0 ramdisk.imagemount –o loop ramdisk.image /mnt/loopcp -a rootfs/* /mnt/loopumount /mnt/loopgzip –v9 ramdisk.imagemkimage -a arm -o linux -t ramdisk -c gzip -n 'xx ramdisk filesystem' -d ramdisk.image.gz uramdisk.image.gz过程类似,只不过是先制作一个空的镜像,然后拷贝文件系统的内容。

对RISC-V GCC工具链进行简单的中文科普与介绍
TCL家电增持奥马电器的背后原因分析
为什么需要购买云服务器,云服务器能为我们做什么
缓冲器是什么?AD8244缓冲器设计方案
一定要掌握的45个电机常识
移植Linux内核ramfs和ramdisk文件系统
什么是阻抗,阻抗是什么意思?
人工智能能为酒店带来什么
怎么查看MySQL语句有没有用到索引
2012年中国MCU市场研判:嵌入式应用全面起飞
苹果MR产业链迎新?两中国厂商有望供货Vision Pro显示屏 打破索尼独供局面
英特尔三年来首次从AMD手中夺回1% PC市场份额
压力传感器的功能及应用
一文带你分清普通电机、减速电机、步进电机、舵机、伺服电机的区别
如何在LTspice中模拟非线性变压器
pcb设计逻辑芯片功能测试
阿里、腾讯及科大讯飞相继在地铁语音购票发力,期能搭上“快车”赢占商机
索尼电子公司成立 整合并优化三大业务
最美小米6?3月即将发布的小米新机颜值超高!
usb-c接口是什么意思 pd接口和usb接口哪个更好