问题描述
我正在用自己的init
可执行文件引导Linux,该可执行文件是用C编写的。
作为初始化过程的一部分,我想安装一个自定义的文件系统映像,该映像已预加载到物理内存中(例如,地址为0xFFFF0000)。
只要具有POSIX(例如ext4),就可以将文件系统映像的类型更改为可以使用的任何类型。
如何使用C代码从物理内存中完全成功装载映像?
我尝试过的事情:
- 从/ dev / mem挂载(如此处所示:http://www.qnx.com/developers/docs/qnxcar2/index.jsp?topic=%2Fcom.qnx.doc.neutrino.technotes%2Ftopic%2Fmultiple_Mounting.html),它不会失败,但是在目标目录中的映像中看不到所需的文件。而且,此方法使用char设备,因此ext4无效,因为它需要块设备。
- 在rootfs中构建另一个映像文件,并用0xFFFF0000中的原始数据填充该文件并进行安装。它很笨,重启后不会保存对图像本身的更改。
注意:如果需要,我已经为系统启用了循环设备
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)