# Calculate hard drive track count

Suppose I have these information of a hard drive :

``````Capacity : x Gbytes
Number of cylinder : y
Number of platters : z (z * 2 surfaces)
Number of heads : w per platter
``````

How can I calculate the number of tracks of this hard drive? My goal is to calculate the bytes can be stored in one track, assuming each track has the same capacity.

• I don't think tracks have the same capacity. As you go in toward the centre of the HDD the tracks diminish in size. – Xavierjazz Oct 16 '14 at 3:01
• @Xavierjazz thanks, if we just assume they are, is there any way can we calculate how many track are there in the hard drive? – f855a864 Oct 16 '14 at 3:11
• You have to do your own homework. :) – Xavierjazz Oct 16 '14 at 3:23
• @Xavierjazz I never asked anyone to solve this for me if you look at my question. All I need is advices, or hints – f855a864 Oct 16 '14 at 3:40
• And maybe you don't believe me but it's not a homework, I'm studing on my self for an exam and can't ask any one I know for helps whenever I'm stuck with a problem :( – f855a864 Oct 16 '14 at 3:48

You probably want to retitle your thread, to indicate you want track count, not track capacity. I spent 15 minutes writing the wrong answer below, before realizing your question is far simpler than I had surmised.

cylinders by definition, are tracks in three dimensions, across all platters. that means that tracks per surface equals cylinders. that means that:

``````Total Tracks per disk = Cylinders * Surfaces (usually denoted by heads, as most platters have two heads)
``````

---------------------------------My Original Answer-------------------------------------------------------------------------- Well, first off, this is not typically a calculation you would want to make, because it varies by drive type, and is influenced by partition and filesystem concepts like sector size and blocks, such that the number would not directly relate to any practical decision.

That said, the first thing you need to determine is whether your disk operates using CAV, CLV, or ZBR/Z-CAV layouts. These layouts determine how your drive spins when reading a track, dependent on where the track/cylinder is on the disk in relation to its center and edge.

CAV and CLV use fixed numbers of bits per track, either by using only a portion of the tracks actual circumference, or by populating bits on the track more densly in the middle and more sparsely at the edge. either approach however wastes a large amount of space. ZBR allows tracks at the edge of holding more bits than tracks at the center, and while it does not use the whole track completely, it does allow the data to be more densely packed across the disk.

a CAV/CLV drive would allow you to calculate track size in bits independent of filesystem constants like sector size (though the manufacturer probably won't provide you all the information required), but with ZBR, the value varies depending on the tracks position in relation to the center of the disk.

• My apologies! Thanks for the answer! Btw may i ask why did they mention the Number of heads when there are already enough information for calculation? – f855a864 Oct 16 '14 at 6:19
• Heads go back to a day when storage was Tape driven, and tape comes in single-sided and double-sided varieties. this continued on into the floppy disk generation, when you had single and double sided drives and disks, so the number of heads denoted the number of surfaces, and by using them in the math, the same calculations could be performed to get the same results regardless of the type of media, and the number of surfaces it provides. in general HDD manufacturers still release the number of heads, rather than specifying the number of surfaces, and the two are considered synonymous. – Frank Thomas Oct 16 '14 at 11:52
• Thanks so much, that's very informative! I'm greatly appreciated! – f855a864 Oct 16 '14 at 15:56
• tracks per surface != cylinder. "tape comes in single-sided and double-sided varieties" -- Not magnetic tape! – sawdust Nov 17 '14 at 20:27
• I do recall audio cassette tapes having multiple tracks, but never data tapes. Number of heads refers to the number of heads in a DASD (IBM Direct Access Storage Device). Each platter could have two surfaces, so the number of heads could be one or two per platter. Nice try tho.. Improved storage capacities and intelligent drives make heads/cylinders meaningless. The parameters are arbitrary and are there for backwards compatibility only, and for engineers designing the drive electronics. – Timbo Nov 25 '14 at 15:34

Disk materials can only be made so dense. While the inner parts of a hard disk do employ higher densities to aid capacity this isn't enough to match the capable capacities of tracks further out on the disk, because the outer tracks are physically too much longer. This is also the reason why read/write speeds are slower on inner tracks.

The inner tracks are packed as densely as the particular drive's technology allows

In the old days tracks on the outside of the disk were made to match the inner tracks in size, but this meant lots of wasted space. Z.B.R. (Zone Bit Recording) was created to fix this, by grouping tracks into zones. Tracks in a group all have a matching sector count, groups farthest out on the disk have greater numbers of sectors than those on the inner parts of the disk. The creation of Z.B.R. is huge part of how disk capacities have been able to be increased over the years. If outer tracks were made as dense as the inner tracks capacities could be increased further, but at the cost of performance.

The first hard disks were rather primitive affairs [...] every track had the same number of sectors
[Z.B.R. (Zone Bit Recording)] is used by disk drives to store more sectors per track on outer tracks than on inner tracks.

While I have not been able to find enough sources confirming this, it does sound as though zones may not ALL contain the same number of tracks; inner zones having fewer tracks, and outer zones having more.

[Z.B.R.] breaks the disk into multiple zones that each contain several thousand tracks, the number depending on the zone's location within the platter.

Based on the information above, you can see that there is no one answer because tracks in different zones will have different capacities. To determine the capacity of a specific track you would need be able to single out a zone, determine the number of tracks in that zone, determine the number of sectors on those tracks, and know the sector size the disk is using (eg: 512 bytes).

I too would like to be able to calculate, or test my disks so that I can find out track capacities.

• now that we're assuming equal track sizes I guess my answer is irrelevant. – Robin Hood Oct 16 '14 at 5:40

No of byte can be stored in one track = (x*1024*1024*1024)/(z*2*y)

• This approach assumes that all tracks have equally distributed capacities, which is not generally the case in modern disks. That said, your calculation does rely only on provided parameters, so perhaps that is the answer they seek, and the exam is just poorly written. – Frank Thomas Oct 16 '14 at 6:06
• @FrankThomas Equal track capacities is the premise explicitly written in the question. ------ There is another thing - capacities of hard drives are usually expressed with SI prefixes. I.e. giga (1000^3) instead of binary prefixes like gibi (1024^3) in the answer. – pabouk Oct 16 '14 at 6:47