Short version: What's the purpose of a cap limit jumper on my hdd?
Long version: I installed a 200GB PATA Maxtor DiamondMax Plus 10 that I got off Craig's List and was surprised to only see it listed as 32GB within XP setup. I thought I had stuck the wrong hdd into the system but I pulled it out and noticed it was in fact a 200GB'er and that its jumper had been set to "Cap Limit".
Intrigued, I Googled the term but found nothing useful so I dug up the manufacturer's manual (PDF warning). According to the manual (it calls it the Cylinder Limitation Jumper):
I then Wiki'd CHS and LBA.
So from what I can understand, there are limitations to how many cylinders BIOS can keep track of (Why 66,055,248 sectors? It's not a power of 2.) and thus the workaround is to use LBA. However older motherboards don't support LBA and thus the CLJ is used to allow the motherboard to see the drive as 32GB, but the OS will realize that the actual drive is much larger and thus format it correctly. Is that correct?
Edit: I just realized that 16,383 ([2^14]-1, the number of cylinders) is the upper limit of 2's complement of a 15-bit number. That leads to the question of why a 15-bit number and what is the 16th bit used for?
Long version: I installed a 200GB PATA Maxtor DiamondMax Plus 10 that I got off Craig's List and was surprised to only see it listed as 32GB within XP setup. I thought I had stuck the wrong hdd into the system but I pulled it out and noticed it was in fact a 200GB'er and that its jumper had been set to "Cap Limit".
Intrigued, I Googled the term but found nothing useful so I dug up the manufacturer's manual (PDF warning). According to the manual (it calls it the Cylinder Limitation Jumper):
3.3.1.4 Cylinder Limitation Jumper (CLJ)
For user capacities below 66,055,248 sectors (32GB), inserting the CLJ jumpr limites the Number of Cylinders field 1 to a value of 16,383, as reported in IDENTIFY DEVICE data word. This allows software drivers to determine that the actual capacity is larger than indicated by the maximum CHS, require LBA addressing to use the full capacity.
I then Wiki'd CHS and LBA.
So from what I can understand, there are limitations to how many cylinders BIOS can keep track of (Why 66,055,248 sectors? It's not a power of 2.) and thus the workaround is to use LBA. However older motherboards don't support LBA and thus the CLJ is used to allow the motherboard to see the drive as 32GB, but the OS will realize that the actual drive is much larger and thus format it correctly. Is that correct?
Edit: I just realized that 16,383 ([2^14]-1, the number of cylinders) is the upper limit of 2's complement of a 15-bit number. That leads to the question of why a 15-bit number and what is the 16th bit used for?