SDI Seminar

Speaker: Alessandro Forin

An MS-DOS Filesystem for Unix

Date: September 23, 1993

Abstract: Driven by the simple practical need of making the best use of the limited disk size on our notebooks, we have written a filesystem for BSD Unix that uses the MS-DOS data structures for permanent data. The resulting filesystem can be used to mount existing disks and floppies written under MS-DOS, access and modify them just as if they were UFS directories and files, export them through NFS for remote use by other machines, and even used as a Unix root filesystem. Comparing the BSD filesystem with MS-DOS gave some obvious and some non-obvious insights. Some of the functional limits of the MS-DOS filesystem structure, such as the lack of any permanent data to support access control, can be overcome with simple workarounds. Other issues, such as the 16 bit limitation in the logical block numbering scheme are more fundamental. Simple optimizations that have long be present in the BSD filesystem such as I/O buffer caching, read-ahead and delayed writes when applied to the MS-DOS filesystem have dramatic benefits on performance.