全球最实用的IT互联网信息网站!

AI人工智能P2P分享&下载搜索网页发布信息网站地图

当前位置:诺佳网 > 电子/半导体 > 嵌入式技术 >

Linux配置kernel使用ramdisk文件系统

时间:2023-10-04 14:48

人气:

作者:admin

标签: 系统  文件 

导读:配置kernel使用ramdisk文件系统 修改 uboot 的环境变量: setenv initrd_high= 0 xffffffff setenv bootargs console=ttyS 0 , 115200 root=/dev/ram rw init=/sbin/init; bootm ${loadaddr} ${ramdiskaddr} ${fdtaddr} initrd_high 为 0xfff...

配置kernel使用ramdisk文件系统

修改uboot的环境变量:

setenv initrd_high=0xffffffff
setenv bootargs console=ttyS0,115200 root=/dev/ram rw init=/sbin/init; bootm ${loadaddr} ${ramdiskaddr} ${fdtaddr}

initrd_high0xffffffff,表示将initrd加载到最高的可用内存地址上。这样可以确保在启动过程中有足够的内存空间来加载initrd文件。

bootargs中,主要是这句:root=/dev/ram rw init=/sbin/init要对。

bootm启动中,loadaddr是内核的加载地址,ramdiskaddrramdisk的加载地址,fdtaddr是设备树的加载地址

制作好的uramdisk.image.gz文件系统,可以在uboot中,先通过tftp命令将uramdisk.image.gz加载到某段内存,例如tftp 82000000 uramdisk.image.gz。最后通过bootm启动。

kernel配置

打开ramfs支持:

General setup  --- >
 [*] Initial RAM filesystem and RAM disk (initramfs/initrd) support

图片

打开ext2文件系统支持:

File systems  --- >
  * > Second extended fs support

图片

打开ram block支持,并设置大小:

Device Drivers  --- >
 [*] Block devices  --- >
  < * >   RAM block device support                                   
       (16)    Default number of RAM disks                          
     (65536) Default RAM disk size (kbytes)

图片

正确配置后,uboot启动时,能够看到类似如下ramdisk加载的过程:

## Loading init Ramdisk from Legacy Image at 42000000 ...
   Image Name:   
   Image Type:   ARM Linux RAMDisk Image (gzip compressed)
   Data Size:    2168875 Bytes = 2.1 MiB
   Load Address: 00000000
   Entry Point:  00000000
   Verifying Checksum ... OK
温馨提示:以上内容整理于网络,仅供参考,如果对您有帮助,留下您的阅读感言吧!
相关阅读
本类排行
相关标签
本类推荐

CPU | 内存 | 硬盘 | 显卡 | 显示器 | 主板 | 电源 | 键鼠 | 网站地图

Copyright © 2025-2035 诺佳网 版权所有 备案号:赣ICP备2025066733号
本站资料均来源互联网收集整理,作品版权归作者所有,如果侵犯了您的版权,请跟我们联系。

关注微信