Transfer speed when moving files around the file system

Posted on

QUESTION :

When I am copying files to other locations on my hard drive, what is the speed I am seeing measuring?

Is this the write speed of the HD or the SATA transfer speed?

ANSWER :

It is a best guess by your operating system (whatever you use) as to how rapidly the file is being copied. It is not the HDD write speed or the SATA transfer speed, although if those are improved by an upgrade, files will move faster. Those and multiple other factors come into play in the calculation. A discussion of several methods of calculation may be found at https://stackoverflow.com/questions/1152208/computing-estimated-times-of-file-copies-movements and a Windows-centric discussion may be had at http://blogs.msdn.com/b/oldnewthing/archive/2004/01/06/47937.aspx

It is both and neither – its the response time the OS believes the hardware is taking, and is governed by the speed of the HD, the SATA transfer speed, the hard drive cache, the disk write-back policy and the filesystem.

It is possible to move a file within a filesystem without ever touching the actual file by simply updating the pointers in the file system table – much like doing a rename, and this is pretty instantaneous – Of-course, this is not always possible, for example when moving the file between partitions on the same disk, or if the OS is doing the move by way of copy then delete.

For small files moved between 2 filesystems/copy+deleted, it is entirely possible the hard drive will receive the file into cache, and then tell the OS that the move is complete – before its written to the disk. I’d imagine that the default on most OS’s would be to disable this functionality unless the disk has a battery backup, super-caps big enough to ensure the write completes or, in the case of an SSD hybrid is written to the SSD.

Leave a Reply

Your email address will not be published. Required fields are marked *