Question: So I know about tracks and sectors, but what do you call the “area” on a hard disk that makes up the sector? I’m talking about the spot that stores 1 bit of data, the tiny little area that stores either a 1 or a 0 magnetically. Nowhere seems to go that detailed when describing how a hard drive works.Here’s how I’ve tried to describe it in a paper I’m doing…
?
“Computers store bits in a variety of ways. Mechanical hard drives ?(HDD), such as the one in my laptop, are non-volatile (meaning their ?contents is not lost when power to the computer is lost) and store ?information using magnetism. Hard drives are made up of platters, ?which are doughnut shaped, highly polished disks. Each platter has a ?series of tracks going around it, and each track is made up of a ?number of sectors which can in turn store a set number of bytes. On my ?MacBook Pro, each sector of my hard drive can store 512 bytes. This ?means that each physical sector on the hard drive has 4096 transistor ?like areas” that can be either magnetised or not magnetised. In this ?way, hard drives store the binary information. Any area that is ?magnetised represents a binary 1 and any area that is not magnetised ?represents a binary 0.”
Does this thing even have a name?Any and all help would be appreciated! Thanks in advance
EDIT: Thanks to everyone who’s answered. Am a high school student so extreme detail not required but thanks to anyone who gave it anyway. ?Sounds like there isn’t a generally agreed on name for it, so I’ll stick with my use of the very generic word “area” I think!
Answer: I believe the term you’re looking for is “magnetic domain”, “a region within a magnetic material which has uniform magnetization” (wp). Hard drive designers are always trying to reduce the size of the magnetic domains.
But.
First, “channel codes” are used: The 0s and 1s recorded on the drive are not the same as the 0s and 1s you write and will eventually read. Sawdust is correct about how 1s and 0s are recorded, but there’s more: The drive recovers clock pulses (so it can know where to expect a flux reversal, if there is one) from the flux polarity reversals, but cannot do so from stretches where there are no reversals. ?
This can be a problem. It’s entirely plausible that someone might write an entire sector – 4096 bits with 512-byte sectors – of all 0s! Which would (if recorded simply) have no flux reversals. Due to irregularities in rotation speed, among other things, the drive would likely “lose its place” long before the end of that sector.
So the data to be written is actually expanded into somewhat more bits, using a channel code that ensures there will never be more than some number of non-flux-reversals written in a row.
I don’t have a reference for the channel codes used in modern hard drives, but you can get a sense for how it works by looking up the “eight to fourteen modulation” (“EFM”) that’s used on CDs. Under EFM, each group of eight bits (which have 256 possible combinations of 0s and 1s) gets converted to a sequence of 14 bits (16384 combinations, but only 256 of them are valid codes). The sequences within each 14-bit code are chosen so that there are never more than a few – I think it’s three – non-flux-reversals (0s) in a row. They’re also chosen so as to reduce the bandwidth of the signal. Sounds bizarre, but it’s true: By recording more bits you can get away with fewer flux transitions. For example, eight bits of all 1’s would require eight flux reversals without a channel code, but instead ?can be recorded as 14 bits with far fewer than eight flux reversals.
Now, think about the very first bit written to a sector. Let’s assume it’s a 0. Where is it? Thanks to the channel code, the first bit actually written to the sector might well be a 1!
Incidentally, talking about CDs is not as off-point as it might seem. CDs use a similar scheme to that described by sawdust: The beginning or end of a “pit” marks a 1, a place where a pit could begin or end, but does not, is a 0. Just like flux reversals.
Then there’s error correction. Error correction involves additional data stored with each sector. In the past the drive would read the primary data field + the ECC data of the sector, and if any errors were detected (for example, by reading one of the many “should not exist” channel codes), it would use the ECC data to correct the errors.
No more. Modern data densities are such that errors are more or less expected. So the ECC mechanisms were strengthened so that far more of the errors are correctable.
Yes, this does mean you have to record more bits, but it’s a net win in terms of capacity.
The result, though, is that we can’t really say that an individual bit, even a bit of a channel code, is recorded in a specific location, because the ECC data is as vital to recovering the bit as the channel code. And the way ECC works, the “influence” of each bit on the ECC data is spread over many, many bits of the ECC data. (This principle is called “diffusion.”)
So, where’s the bit? Well, it’s sort of spread around. Change one bit in the input and there will be changes in the flux reversals in many places in the sector.
If that seems strange, wait until you learn about PRML, which stands for “probable response maximum likelihood”: even the waveform recovered from the head, in which the drive looks for flux reversals, is interpreted statistically. But that doesn’t have much to do with “where the bits are”.