From: David Brown on
On 17/03/2010 23:06, Rod Speed wrote:
> DevilsPGD wrote
>> Rod Speed<rod.speed.aaa(a)gmail.com> wrote
>>> DevilsPGD wrote
>>>> Ed Light<nobody(a)nobody.there> wrote
>
>>>>> WD has a utility to align for XP.
>
>>>> That will work for the first generation 4KB drives that emulate
>>>> 512byte sectors, but not once 4KB comes out in native mode.
>
>>> You dont know that they wont be able to appear to have
>>> 512 byte sectors but just have those as part of 4K sectors.
>
>>> Its perfectly possible for the drive to look like its got 512
>>> byte sectors but actually has 4K sectors on the platters.
>
>> Right -- I just said that,
>
> No you didnt.
>
>> that's the "first generation 4KB drives that emulate 512byte sectors"
>
> No reason why drives cant optionally do that forever.
>

There will come a point when the 512 byte sector emulation will be
dropped, but it will be a good while yet. It won't be dropped for the
current generation of disk electronics - as you say, why remove it when
it's already there? But in future generations (for even bigger and
faster drives), I don't think it will stay.

>> XP apparently will not be able to cope with drives that present 4KB sectors to the OS.
>
> So all thats necessary is drives that can do that emulation
> optionally and a ute to change that behaviour.
>
>> My guess is that we'll start out with drives that work only in emulation
>> mode, then drives that work in either mode based on a jumper
>
> Or do that electronically without using a jumper, like so many
> do with all sorts of other config stuff like AAM etc etc etc.
>

I expect this one will be by jumper for a good while to come. There is
not, as far as I know, a way for the host/OS/controller and the disk
electronics to agree on the best mode automatically - it would need a
new ATA command and that means changes to the OS. These things take a
long time in the windows world - by the time it gets realistic to have
such an automatic selection, it would be easier to drop 512 byte sector
mode entirely.

What is a more immediate question is what the default jumper setting
should be - set to 512 for compatibility with XP and older OS's, or set
to 4 KB native for faster speed with Linux and newer OS's ?

>> (similar to the -150 mode limiter for poorly designed SATA controllers),
>
>> until finally we get 4KB-only drives.
>
> Why would they remove that capability once its there ?
>


From: Rod Speed on
David Brown wrote
> Rod Speed wrote
>> DevilsPGD wrote
>>> Rod Speed<rod.speed.aaa(a)gmail.com> wrote
>>>> DevilsPGD wrote
>>>>> Ed Light<nobody(a)nobody.there> wrote

>>>>>> WD has a utility to align for XP.

>>>>> That will work for the first generation 4KB drives that emulate
>>>>> 512byte sectors, but not once 4KB comes out in native mode.

>>>> You dont know that they wont be able to appear to have
>>>> 512 byte sectors but just have those as part of 4K sectors.

>>>> Its perfectly possible for the drive to look like its got 512
>>>> byte sectors but actually has 4K sectors on the platters.

>>> Right -- I just said that,

>> No you didnt.

>>> that's the "first generation 4KB drives that emulate 512byte sectors"

>> No reason why drives cant optionally do that forever.

> There will come a point when the 512 byte sector emulation will be dropped,

I doubt it. It costs them nothing to keep doing it, particularly
when there isnt even a physical jumper involved.

> but it will be a good while yet. It won't be dropped for the
> current generation of disk electronics - as you say, why remove it when it's already there? But in future generations
> (for even bigger and faster drives), I don't think it will stay.

Why shouldnt they drop that when there isnt even a physical jumper involved ?

>>> XP apparently will not be able to cope with drives that present 4KB
>>> sectors to the OS.

>> So all thats necessary is drives that can do that emulation
>> optionally and a ute to change that behaviour.

>>> My guess is that we'll start out with drives that work only in emulation mode, then drives that work in either mode
>>> based on a jumper

>> Or do that electronically without using a jumper, like so many
>> do with all sorts of other config stuff like AAM etc etc etc.

> I expect this one will be by jumper for a good while to come.

Bet it doesnt.

> There is not, as far as I know, a way for the host/OS/controller and the disk electronics to agree on the best mode
> automatically

Corse there is with the later OSs.

> - it would need a new ATA command and that means changes to the OS.

Nope, it can be done with a ute, just like AAM is.

> These things take a long time in the windows world

They didnt with stuff like AAM and the SATA mode.

> - by the time it gets realistic to have such an automatic selection, it would be easier to drop 512 byte sector mode
> entirely.

Doesnt need to be automatic.

> What is a more immediate question is what the default jumper setting
> should be - set to 512 for compatibility with XP and older OS's, or
> set to 4 KB native for faster speed with Linux and newer OS's ?

Who cares ?

>>> (similar to the -150 mode limiter for poorly designed SATA controllers),

>>> until finally we get 4KB-only drives.

>> Why would they remove that capability once its there ?


From: Yousuf Khan on
DevilsPGD wrote:
> Right -- I just said that, that's the "first generation 4KB drives that
> emulate 512byte sectors"
>
> XP apparently will not be able to cope with drives that present 4KB
> sectors to the OS.
>
> My guess is that we'll start out with drives that work only in emulation
> mode, then drives that work in either mode based on a jumper (similar to
> the -150 mode limiter for poorly designed SATA controllers), until
> finally we get 4KB-only drives.

I think the only reason for getting 4KB sectors instead of 512B is the
error correction code overhead, not because 512B sectors aren't able to
represent the latest sizes of hard drives. Since the error correction
code is handled internally within the drive itself, the external
interface wouldn't need to be aware of this internal organizational
issue. It would be just another level abstraction that the internal
electronics of the drive will handle itself. If the OS writes sectors
out in 512B units, then the drive electronics will have to take care of
combining them in cache to 4KB units.

So once the electronics can handle 512-to-4096 transitions, I don't see
any reason why they would ever remove it from the electronics. Apart
from whether current OS internal structures can handle non-512 sector
sizes, you will also need to update the HD drivers to tell the HD`s that
they know how to 4KB sectors.

Yousuf Khan
From: Yousuf Khan on
David Brown wrote:
> I expect this one will be by jumper for a good while to come. There is
> not, as far as I know, a way for the host/OS/controller and the disk
> electronics to agree on the best mode automatically - it would need a
> new ATA command and that means changes to the OS. These things take a
> long time in the windows world - by the time it gets realistic to have
> such an automatic selection, it would be easier to drop 512 byte sector
> mode entirely.
>
> What is a more immediate question is what the default jumper setting
> should be - set to 512 for compatibility with XP and older OS's, or set
> to 4 KB native for faster speed with Linux and newer OS's ?


I doubt that this will be handled through jumpers. I`m pretty sure it`ll
be through ATA commands only, and they will likely add a specific new
ATA command which will likely return zeros on older drives, but ones on
the newer drives that will indicate to a driver that this is 4K capable.
You wouldn`t need to update the internal OS structures, since as they
say Vista and Seven might already be capable of variable sector sizes,
just not XP. So the only thing you`d need on Vista or Seven are slightly
updated SATA/ATA drivers.

Yousuf Khan
From: Mike Tomlinson on
In article <1nc2q5d6okvl6cuv5nufi0vcahj8m6rbp9(a)4ax.com>, DevilsPGD
<Still-Just-A-Rat-In-A-Cage(a)crazyhat.net> writes
>
>XP apparently will not be able to cope with drives that present 4KB
>sectors to the OS.

I don't see why. All it should need to do is load a hard disk
controller driver that reads 4k sectors from the disk and present them
to the OS in 512-byte chunks.

I had a meg-optical drive once which used 2048-byte sectors. That
worked fine once a driver was loaded for it.

--
(\__/)
(='.'=) Bunny says Windows 7 is Vi$ta reloaded.
(")_(") http://imgs.xkcd.com/comics/windows_7.png