Mailing Lists: Apple Mailing Lists

Image of Mac OS face in stamp
 
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Darwin disk I/O question



>2. IDE cannot be relied upon to do this right, if at all. SCSI has been able to for a long time, due to widespread support in both host adapters and drives for the key features: disconnect/reconnect and tagged command queueing (TCQ). Unlike SCSI, up until relatively recently there was no support at all for TCQ in IDE. There is now, but it is implemented in few drives. Plus, from what I hear the implementation requires the low level driver to *poll* each drive's command queue to find out when a command completes, because there still is no real disconnect/reconnect capability. If that doesn't make your skin crawl...

I thought bus-mastering made this a non-issue. Esp. the polling issue.

But I agree a sorting algorithm could improve seek/access time and throughput, I just don't see this (#2) as being an IDE-specific issue. I could be wrong of course.

>3. A lack of direct knowledge about the disk layout doesn't imply that you cannot rely on locality. The mapping between linear addresses and disk block locations is not chosen randomly. Even though you might not know exactly how the logical block address gets translated, you do know that the real physical distance between two logical block addresses is proportional to the difference of the addresses. So elevator seeking still has value.
>
>It is of course necessary to use an elevator algorithm which never attempts to sort requests in descending order, since you do need to know actual disk layout to do that without destroying performance.

Well given the assumptions that sequential reading and writing of blocks improves seek/access time and throughput, and the assumption that data linearly written on a disk will *tend* to lie sequentially I don't see the controversy.

Just don't use the term CHS |-)


References: 
 >Re: Darwin disk I/O question (From: "Timothy A. Seufert" <email@hidden>)



Visit the Apple Store online or at retail locations.
1-800-MY-APPLE

Contact Apple | Terms of Use | Privacy Policy

Copyright © 2007 Apple Inc. All rights reserved.