VOGONS


First post, by videogamer555

User metadata
Rank Member
Rank
Member

When the read/write head processes (reads or writes) data on a harddrive, what is the order in which it actually done. Often time, disk geometry is referred to as the CHS numbers (cylinder, head, sector). Given the naming convention called "CHS", I am assuming that this naming convention is based on the actual operation of the drive. That is, it would seem that it processes every bit in a sector before moving to the next sector, then every sector on a track with the first head (top side of the disk), then every sector on the same track on the second head (the bottom side of the disk), and does this with every disk in the cylinder until it has completed reading one cylinder, and then it starts reading the next cylinder, starting with reading the first sector on the topmost track in that next cylinder.

However, that would seem to be a very inconvenient way of doing it. More logically, it would seem that after reading all of the sectors in a track, it would then move out to the next track (cylinder) on the same side of the same disk, and does that until it has read every track in the same disk surface, and then would switch to the head for reading the bottom surface of that disk, and then would do that for every disk in the harddrive. However, then the naming convention would then be HCS (head, cylinder, sector), and as we all know the naming convention is actually CHS, not HCS.

So can somebody here shed some light on the actual order of processing data on a harddrive?

Reply 1 of 3, by videogamer555

User metadata
Rank Member
Rank
Member

Come on guys. Someone here's got to know this. This is the DOS Box forum, and DOS is a low level OS, which deals with stuff like raw reading of data from the drive, and that requires intimate knowledge of how the hardware works (like the order of reading data on a drive, after reading sectors in a given track, does it switch heads or cylinders first?).

Reply 2 of 3, by Jorpho

User metadata
Rank l33t++
Rank
l33t++
videogamer555 wrote:

Come on guys. Someone here's got to know this.

You seem to regularly expect answers within two hours of your posts. This impatience is very off-putting.

Your expectations of these forums seem to deviate extensively from the reality. Superfury has a habit of regularly asking "low level" questions and often never gets any replies at all, aside from the ones he supplies himself.

Besides, the OS calls the BIOS and accordingly the OS doesn't have to know much about what the hardware is doing at all. See for example this thoughtful piece on the low-level behavior of the Windows hard disk driver.
http://www.os2museum.com/wp/how-to-please-wdctrl/

Reply 3 of 3, by vladstamate

User metadata
Rank Oldbie
Rank
Oldbie
videogamer555 wrote:

Come on guys. Someone here's got to know this. This is the DOS Box forum, and DOS is a low level OS, which deals with stuff like raw reading of data from the drive, and that requires intimate knowledge of how the hardware works (like the order of reading data on a drive, after reading sectors in a given track, does it switch heads or cylinders first?).

What DOS does and what the controller does are 2 different things. And I would not be surprised if different controllers behave in a different way. For the floppy at least the commands to the controller are to either read a whole track (and that operates on one head only) or read multiple sectors. Even in this second mode I expect the floppy controller to first read all the sectors in a given track with one head then do the same with the second head. Hence CHS.

YouTube channel: https://www.youtube.com/channel/UC7HbC_nq8t1S9l7qGYL0mTA
Collection: http://www.digiloguemuseum.com/index.html
Emulator: https://sites.google.com/site/capex86/
Raytracer: https://sites.google.com/site/opaqueraytracer/