The implementation of Virtualfs is based on the weak_alias concept
which have some limitations. Here they are
- It is fragile. A program statically linked won't
co-operate with Virtualfs. It will operate as if Virtualfs
was not installed.
Some program may be using weak_alias on their own, which will
complict with Virtualfs.
- It is a little slower. The processing needed to intercept
a file operation and decided if further processing is needed
is slowing down a bit. Except for few program, the overhead is
not visible though.
- Currently, Virtualfs does not deal properly with symbolic links. If you
set a symbolic link that point inside a virtual volume, Virtualfs
won't notice. This is a minor weakness though.
The major advantage (of the current implementation) is that it is
very simple to add new drivers. Further, it allows the per process
per user configuration, which is a key aspect.
Another advantage is that it works right now and solve a real
problem which is the transparent access to floppy and CDs.