A TMPFS Implementation for FreeBSD
Rohit Jalan
rohitj at purpe.com
Sat Feb 25 12:38:50 PST 2006
Hi,
I have ported TMPFS from NetBSD. The first beta can be found at
http://download.purpe.com/files/tmpfs-BETA_01.tgz
Kindly refer to the README file for usage details and the
NOTES file for issues, bugs and todo-s.
The NetBSD man pages can located at
http://netbsd.gw.com/cgi-bin/man-cgi?tmpfs++NetBSD-current
http://netbsd.gw.com/cgi-bin/man-cgi?pool++NetBSD-current
Under NetBSD TMPFS uses the POOL subsystem for its metadata storage,
POOL has been ported but presently it is private. The NetBSD POOL
subsystem is not module based and was not designed to handle
de-initialization hence at the moment one cannot reload tmpfs.ko
without rebooting. This deficiency will be rectified shortly.
At present the ported POOL subsystem uses MALLOC for page allocation,
in the future it will (like its NetBSD counterpart) cache VM addresses
and map physical pages on demand removing its reliance on the MALLOC
allocator and making it standalone. I am also thinking of implementing
a version of TMPFS that would use the UMA zone allocator instead of POOL.
*IMPORTANT*
I have yet to perform a security audit of the TMPFS code vis-a-vis
the UFS2 code hence this port may contains security bugs and should
not be used in a sensitive environment.
This port has NOT been tested with SMP.
rohit --
More information about the freebsd-hackers
mailing list