如何解决从C中的物理内存挂载文件系统映像
我正在用自己的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 举报,一经查实,本站将立刻删除。