NAME
   Filesys::POSIX - Provide POSIX-like filesystem semantics in pure Perl

SYNOPSIS
       use Filesys::POSIX
       use Filesys::POSIX::Mem;

       my $fs = Filesys::POSIX->new(Filesys::POSIX::Mem->new,
           'noatime' => 1
       );

       $fs->umask(0700);
       $fs->mkdir('foo');

       my $fd = $fs->open('/foo/bar', $O_CREAT | $O_WRONLY);
       my $inode = $fs->fstat($fd);
       $fs->printf("I have mode 0%o\n", $inode->{'mode'});
       $fs->close($fd);

DESCRIPTION
   Filesys::POSIX provides a fairly complete suite of tools comprising the
   semantics of a POSIX filesystem, with path resolution, mount points,
   inodes, a VFS, and some common utilities found in the userland. Some
   features not found in a normal POSIX environment include the ability to
   perform cross- mountpoint hard links (aliasing), mapping portions of the
   real filesystem into an instance of a virtual filesystem, and allowing
   the developer to attach and replace inodes at arbitrary points with
   replacements of their own specification.

   Two filesystem types are provided out-of-the-box: A filesystem that
   lives in memory completely, and a filesystem that provides a "portal" to
   any given portion of the real underlying filesystem.

   By and large, the manner in which data is structured is quite similar to
   a real kernel filesystem implementation, with some differences: VFS
   inodes are not created for EVERY disk inode (only mount points); inodes
   are not referred to numerically, but rather by Perl reference; and,
   directory entries can be implemented in a device-specific manner, as
   long as they adhere to the normal interface specified within.

READ MORE
   For further information, please consult the POD documentation for the
   Filesys::POSIX module.

COPYRIGHT AND LICENSE
   See the COPYRIGHT and LICENSE files for further details.