How does your CPU control a HDD, does the HDD have its own tiny processor to tell the arm where to move?

947 views

How does your CPU control a HDD, does the HDD have its own tiny processor to tell the arm where to move?

In: Technology

6 Answers

Anonymous 0 Comments

Yes.

It used to be different, a very long time ago, but nowadays the HDDs are basically small computers in themselves.

The change really came in the PC market with the introduction of IDE (“Integrated Drive Electronics”, literally telling you that this is true!) and SCSI drives. The intelligence needed on the drive was there to strip out all the factors that confused things – you used to be able to low-level format hard drives, like you could with floppy disks, which would literally change the on-disk storage format to squeeze more data onto them. Those days went away quickly as they basically caused nothing but problems, but originally the drives were so expensive and the chips to control them just as much so, that people economised and the PC did the work. PCs used to “slow down” when using the floppy drive as they had to wait for it to respond to commands and they couldn’t take the chance of missing a response, so they’d dedicate all their processing to controlling the drive rather than what you might have wanted them to do.

As soon as electronics became cheap enough that you could make the drive do the work itself and the PC could just carry on doing its stuff, that’s what happened for all kinds of technology – sound cards, video cards, disk drives, network interfaces, even things like controlling mouse/keyboard/USB ports are handled by their own chips and the main computer is just given the result and gives out orders, and the on-board chips actually do the hard work.

The modern HDD does all kinds of things from managing damaged parts of the disk to avoid them, storing data elsewhere, encrypting the data on the drive, keeping copies in case the drive goes wrong, putting common data on the fastest part of the disk (the outside spins faster than the inside), knowing how many platters, etc.

The modern PC knows almost nothing about how the drive itself is operating, how many heads, platters it’s got, what speed it is spinning at, etc. It only knows what the drive chooses to tell it.

Not so long ago, you had to program settings into your BIOS for the disk to work (how many cylinders, heads, sectors, etc.) and long before that the computer basically did all the hard work itself. It sometimes got so bad that one person would create data on a disk and then when you put that disk somewhere else you had to recreate that configuration or you wouldn’t be able to read the disk at all (this applied mainly to floppy disks, but there’s really very little difference between a hard disk and a floppy disc in terms of how they operate). It was even used as copy-protection in some cases, because it was possible to make a disk on a very configurable machine and people could read that disk in their machine, but their home machine itself couldn’t write to it in the same way. So people couldn’t make copies, only people with the very expensive equipment.

Nowadays, pretty much everything has a tiny chip doing all the hard work, and it just nudges (“interrupts”) the main computer when it’s done the job that was asked of it.

You are viewing 1 out of 6 answers, click here to view all answers.