在可执行文件中嵌入文件系统?

我只是好奇:如果我想在可执行文件中嵌入一个文件系统,我假设我只是使用objcopy嵌入了一个文件系统的图像。 但是,我应该使用哪种文件系统? 是否会有一个简单的库来直接访问文件系统映像?

我对此没有任何用处,所以像“不要这样做,使用实际文件”这样的回答是无关紧要的。

存在所谓的虚拟文件系统实现,其设计考虑了定制存储。 仅举几例:我们的Solid File System , CodeBase文件系统 ,AidAim的单文件系统 。

他们中的大多数使用文件作为容器,一些(例如我们的SolFS)允许您在自定义位置拥有容器并通过回调访问它。

根据实际要求,您也可以使用ZIP或甚至TAR格式。

如果要将可执行文件中包含的文件系统公开给操作系统,以便其他应用程序可以读取它,那么我们的虚拟存储解决方案之一(CallbackDisk或Callback File System)将在Windows上为您完成工作。 在Linux和MacOS X上还有其他方法可以做到这一点,包括FUSE和MacFUSE库(类似于我们的CBFS)。