Disk I/O average access time is improved by estimating access time for pending I/O requests and selecting the request with the lowest estimated access time as the next request to be processed. To provide fast run-time estimation, disk characteristics are derived off-line and stored in files/tables for access during run-time estimation. A time (RT) to rotate the disk from a reference sector to each physical sector on the hard drive is derived and stored for each logical block address (LBA). A time (HT) for the heads to move an incremental number of cylinders also is derived. Access time of a destination LBA after completing access to a source LBA is estimated using estimated rotational times for the source and destination looked up in an RT table, and a head movement time estimate looked up in an HT table, based on a run-time calculated cylinder increment between the source and destination LBAs. Methods for developing rotational time estimates, head movement time estimates, disk zone characteristics, disk rotation time and other data are included.