Comment les têtes trouvent-elles les données stockées sur un disque dur?

J'ai entendu dire que pour lire ou écrire des données sur un disque dur, nous avons besoin de l'identification du cylindre et de l'ID du secteur. Déplacez d'abord les têtes r / w de l'hdd au cylindre spécifié par l'identification du cylindre, puis au secteur spécifié par l'ID du secteur. Est-ce correct?

Avons-nous besoin de l'id du plateau et de laquelle des deux surfaces du plateau? Ou, de manière équivalente, l'identification de la piste (puisque nous avons l'ID du cylindre)?

Merci.

Comment les têtes trouvent-elles les données stockées sur un disque dur?

En lisant (et en comparant) les informations d'adresse de chaque secteur alors qu'il tourne sous la tête.

Les détails (tels que exécutés par le contrôleur de disque):

  1. Le contrôleur de disque positionne l'ensemble de tête R / W de sa position actuelle au cylindre demandé.
    (Le temps d'exécution de cette opération s'appelle le temps de recherche .)

  2. Le contrôleur de disque sélectionne la tête de lecture / écriture requise.
    (Le temps d'exécution de cette opération s'appelle l' heure de régler la tête et l'heure de sélection ).

  3. Le contrôleur de disque attend que le secteur demandé tourne en position.
    3a. À mesure que chaque secteur est rencontré (par une interruption déclenchée par la recherche d'une marque d'adresse sur la piste), l' enregistrement d'identification du secteur est lu.
    3b. Si l'enregistrement d'identification ne correspond pas au cylindre ou à la tête demandé, une erreur de recherche ou de contrôle s'est produite et une procédure d'erreur doit être effectuée.
    3c. Si l'enregistrement d'identité ne correspond pas au secteur demandé, continuez d'attendre le prochain secteur (c.-à-d. Répéter 3a).
    3d. Sinon, le secteur demandé a été trouvé, car l'enregistrement d'identification correspond au cylindre demandé, à la tête et au secteur (ou numéro de secteur logique ou LBA).
    (Le temps d'exécution de cette opération s'appelle la latence de rotation .)

Remarque: Si la marque d'index est rencontrée deux fois (c'est-à-dire plus d'une rotation complète), la piste entière a été numérisée et le secteur demandé n'a pas été trouvé. Une procédure d'erreur doit être effectuée.

J'ai entendu dire que pour lire ou écrire des données sur un disque dur, nous avons besoin de l'identification du cylindre et de l'ID du secteur.

Vous avez omis le numéro de tête (lecture / écriture).

Déplacez d'abord les têtes r / w de l'hdd au cylindre spécifié par l'identification du cylindre, puis au secteur spécifié par l'ID du secteur. Est-ce correct?

Pas assez. La première partie est exacte, mais pas la dernière.

Avons-nous besoin de l'id du plat, …

Pas vraiment.

… et laquelle des deux surfaces du plateau?

Il y a une tête de lecture / écriture par surface.
Ainsi, la spécification du numéro de tête sélectionne une surface d'un plateau.

Ou, de manière équivalente, l'identification de la piste (puisque nous avons l'ID du cylindre)?

Au niveau du contrôleur de disque, un "identifiant de piste" n'est généralement pas utilisé. Le nombre de cylindres et le numéro de tête sont plus utiles.

Étant donné que le BIOS PC d'IBM d'origine était interconnecté directement avec le contrôleur de disque (basé sur une puce Western Digital), le BIOS devait utiliser cet adressage de cylindre, de tête, de secteur (aka CHS). Mais comme le contrôleur de disque a été déplacé du bus ISA vers l'enceinte du variateur (style IDE), l'ensemble de commandes ATAPI a rendu l'adressage CHS essentiellement obsolète en faveur de l'adressage du secteur logique.

Voir également Lorsqu'une lecture de disque ou une écriture de disque se produit lorsque les données se produisent?