Personal tools

Peerix FS

From OrganicDesign Wiki

(Redirected from Virtual file systems)
Jump to: navigation, search

It seems reasonable to be able to implement a file system that gives an entry into peer-to-peer space. In this way any existing unix applications can be used without modification.

Using FUSE we can have a virtual filesystem containing all the peerix structure and legacy applications and this structure can be completely managed by the peerd. This gives the FS the grouping/forking, security and redundancy capabilities of all the other nodal content.

The actual persistent storage can make use of local hard drives such as /dev/hda etc, but the actual data is read from a peerix mount point because the nodal data is an unuseable GUID-tree.

1 Advantages

Propagation of change is extremely efficient using Peerix FS because only the actual changes need to propagate when any part of a file changes. The data which has been written to a part of the file is transferred to the network directly from RAM since it is initiated by the write operation itself.

2 Booting

We can't boot peerix from its own file system because FUSE requires the kernel, so the first step would be to have the boot record and kernel dynamically maintained, or mirrored, by peerd in the boot device.

When the Kernel is invoked, it expects to have a root file system, sometimes known as initrd available to it. This file system is contains the first userspace program the kernel executes as specified in the init= kernel parameter (default /sbin/init). At this point it would be possible to mount the virtual file system and use pivot_root(busybox docs) to make it the new root file system. libfuse would be required in userspace. Also a script would need to mount, pivotroot and rerun init.

3 File structure

The GNU Project Debian Linux Ubuntu Linux Wikipedia Affiliate Button MediaWiki