你好!
我目前手上有一块TMDXEVM3358-SK-LCD,板子上有一个2Gb的DDR3,板子是从SD卡启动的。
我目前有几个问题:
1. 我用电脑,打开SD卡,里面有一个rootfs的文件夹,这个文件夹是不是为了挂载内核用的?
2. SD开里面,有另外一个文件夹boot,里面有MLO, u-boot, ulmage, 我把ulmage删除掉,再重新上电,为什么LINUX仍旧可以跑起来?
3. 一般理解是不是u-boot和系统都是在DDR3上面运行(对于这块板子而言)?那么等系统起来以后,那么按理说,是不是把SD卡拔出来也没问题?
但是我这样做了,串口打印出了错误信息。
noaming:
1,rootfs是你板子上运行linux的根文件系统。
noaming:
2,把SD卡中ulmage删除掉后仍然能够启动,请检查你的板子是否是:Booting kernel image from the SD card,可能内核是从其他存储器中获得。
noaming:
3 u-boot和系统都运行起来时,都是在DDR3上面运行,但是SD卡也有设备驱动文件在系统中运行或者作为系统的存储硬盘介质,详细检查一下串口打印出了什么错误信息
leo chen:
回复 noaming:
这个可以看uboot的启动参数,有的是从根目录的/boot中加载uImage的
leo chen:
回复 noaming:
那是因为文件系统还在sd卡上,所以是不能把sd卡去掉的
Yaoming Qin:
1. rootfs 不是文件夹,是分区,就是放根文件系统的。
2. 你确定你删掉了uImage吗?
3. 文件系统在sd卡上,你报的错误都是和文件系统相关的。
haolin xie:
回复 leo chen:
你好!
我查看了,确实如你所说,我的uImage是在/rootfs/boot/下。
我的SD卡格式化为:
/boot (vfat)
/rootfs (ext3)
拿到手的时候,/boot里面有uImage,MLO,u-boot.img, 所以一直以为镜像是在/boot里面的uImage,但是后来经过试验,发现镜像是在/rootfs/boot里面。
在/rootfs/boot里面,也有上面提到的三个文件(uImage,MLO,u-boot.img),经过试验,发现,在系统启动的时候,MLO,u-boot.img都是从/boot里面加载的
我把/rootfs/boot里面的MLO,u-boot.img删除掉,系统没问题,而uImage是从/rootfs/boot加载的,我把/boot里面的uImage删除掉,系统没问题。
我还想问下,对于你说的“因为文件系统还在sd卡上”,我不太懂,系统上来以后,不是整个系统都被加载到DDR上了吗,问什么会还在SD卡上?还有rootfs根文
件系统,同内核有什么联系吗?哦一直以为,把uImage解压处理啊,就有里面那些文件夹了(例如:/boot, /dev ,/home/ , 等等。)
第一次接触ARM,许多不懂,还请见谅。