Final Year Project:
Using Linux Filesystems Under Windows
Chris Bryden
BEng. Electronics and Software Engineering
School of Computer Science
University of Birmingham
57
Exceptions or Divide by Zero errors, which do not lock the machine, but merely
result in the application being terminated. It should be noted though, that these
faults only occur if the filesystem contains errors. On a clean filesystem very few
errors occur.
The copy file function returns an average transfer speed when copying a
file and this can be used for measuring file transfer performance. The
performance of the cd and ls commands is not measured in this way, but a feel
for their performance is quickly gained by navigating the filesystem a little. The
overall performance of the library is good, the ls command produces directory
listings more or less instantly and the cp command copies files with very
reasonable average transfer times, up to about 300 Kb/sec. This means that a
5MB file copies from the ext2 partition to the DOS partition in about 15-20
seconds. The performance of these functions is helped considerably by the read-
ahead cache that is implemented in the library. The cd command sometimes
pauses for no more than about 0.5 sec before returning the command prompt
while it is reading the disk. However, the FIFO cache of recently read blocks has
improved this.
Overall the project has been successful within its scope. A library
containing the functions necessary to mount and read an ext2 filesystem (cd, ls
and cp) along with a Windows based command line interface have been
produced that work, are reliable and perform reasonably well.