[t13] 04-136r0.pdf SCSI to ATA Command Translations

Jeff Garzik jgarzik at pobox.com
Mon Jun 7 08:24:09 PDT 2004


This message is from the T13 list server.


Joerg Schilling wrote:
>>From owner-t10 at t10.org  Fri Jun  4 21:14:23 2004
> 
> 
>>>>3.2 Read Capacity (10) Command  (25h)
>>>>() BLOCK LENGTH IN BYTES
>>>>This value is currently set to 512 bytes,
>>>>which is the standard sector size for disk drives. 
>>>
>>>
>>>I see us taking the chance to try to fix the bytes/LBA at 0.5 Ki, like
>>>MMC fixed the bytes/LBA at 2 Ki, shutting out the (empty set of?) ATA MO
>>>folk.
>>>
>>>I like that.
> 
> 
>>It shut out nobody.
> 
> 
>>IMO the OS request block size _should_ be constant at 512 octets.  It 
>>makes calculations easier, and representations more normal.
> 
> 
> Please do not forget CD/DVD writers.
> 
> They use 2048 Bytes per block.

That's fine, it's a multiple of 512.

It's rather nice when the kernel block or filesystem driver can simply 
store a shift count, and then do

BASE_SECTOR_SHIFT=9
dvd_wr_sector_shift=2
device_sector_shift=BASE_SECTOR_SHIFT + dvd_wr_sector_shift
block_bytes = (1 << device_sector_shift)

Storing things as a power-of-2 is very efficient on a number of host 
platforms.  And basing things off of a fixed base -- 9 (512 bytes) -- 
makes life even easier.

	Jeff





More information about the T10 mailing list