Date: Tue, 16 May 1995 13:54:40 +0200 From: Wolfram Schneider <wosch@cs.tu-berlin.de> To: Bruce Evans <bde@zeta.org.au> Cc: hackers@FreeBSD.org, John Matzner <john@kiawah.atinc.com> Subject: Re: slow floppy Message-ID: <199505161154.NAA06414@ole.cs.tu-berlin.de> In-Reply-To: <199505151653.CAA04994@godzilla.zeta.org.au> References: <199505151653.CAA04994@godzilla.zeta.org.au>
next in thread | previous in thread | raw e-mail | index | archive | help
Bruce Evans writes: >>My floppy is very very very slow. > >>copy 1.2 MB: >>1) mcopy 50 sec >>2) cat 165 sec >>3) dd 165 sec >>4) mount -t msdos 585 sec (!!!) > >>4) mean that I need 1 1/2 h for installing bindist! A poor null modem >>is faster. > >cat and `dd bs=18k' on the raw device should be faster. The default >block size for /dev/fd0 is stupid (2k) while the default block size >for /dev/rfd0 is better (16k) although it still has nothing to do >with a hardware. dd if=/dev/fd0 of=/tmp/fd bs=18k 153 sec dd if=/dev/rfd0 of=/tmp/fd bs=18k 49 sec :-)) Hack without mread: $ dd if=/dev/rfd0 of=/tmp/fd bs=18k $ vnconfig -c /dev/vn0c /tmp/fd $ mount -t msdos /dev/vn0c /mnt $ cp /mnt/* /usr/distrib $ umount /mnt $ vnconfig -u /dev/vn0c $ rm /tmp/fd $ eject ~55 sec I hope we have some bytes on boot floppy for vnconfig? The following text shound be in the FAQ or Handbook (FreeBSD improve, TODO long) >The good performance for mcopy is probably because it uses the raw >device with a large block size and the especially bad performance >for msdosfs is probably because it uses the tiny file system block >size of 512 bytes. msdosfs apparently reads only one block at a >time and your system is apparently just slow enough that reading >adjacent blocks in separate i/o's requires waiting a full disk >revolution between the blocks. Thus you get a speed of about 1/5 >second per block and it takes at least 2880 / 5 = 576 seconds to >read the whole disk. > >To fix this, msdosfs needs to be improved. It doesn't call the vfs >clustering routines. It needs to call them or do its own clustering. >(The original version of it should have done its own clustering since >vfs clustering didn't exist then. ufs didn't suffer so much from >the lack of clustering because of its larger block size.) > >Bruce Gruß Wolfram -- http://hyperg.cs.tu-berlin.de/C~wosch
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199505161154.NAA06414>