Cylindre-tête-secteur

schéma de la géométrie du disque dur

L’adressage CHS est le processus d’identification des secteurs individuels (alias bloc physique de données) sur un disque par leur position dans une piste, où la piste est déterminée par les numéros de tête et de cylindre. Les termes sont expliqués de bas en haut, pour l’adressage des disques, le secteur est la plus petite unité. Les contrôleurs de disques peuvent introduire des translations d’adresses pour faire correspondre les positions logiques aux positions physiques, par exemple, l’enregistrement par bit de zone stocke moins de secteurs dans des pistes (intérieures) plus courtes, les formats de disques physiques ne sont pas nécessairement cylindriques et les numéros de secteurs dans une piste peuvent être obliques.

SecteursEdit

Les disquettes et les contrôleurs utilisent des tailles de secteurs physiques de 128, 256, 512 et 1024 octets (par ex, PC/AX), les formats avec 512 octets par secteur physique étant devenus dominants dans les années 1980.

La taille de secteur physique la plus courante pour les disques durs aujourd’hui est de 512 octets, mais il y a eu des disques durs avec 520 octets par secteur également pour les machines non compatibles IBM. En 2005, certains disques durs personnalisés Seagate utilisaient des tailles de secteur de 1024 octets par secteur. Les disques durs Advanced Format utilisent 4096 octets par secteur physique (4Kn) depuis 2010, mais pourront également émuler des secteurs de 512 octets (512e) pendant une période transitoire.

Les disques magnéto-optiques utilisent des tailles de secteur de 512 et 1024 octets sur les disques de 5.25 pouces et 512 et 2048 octets sur les lecteurs de 3,5 pouces.

Dans l’adressage CHS, les numéros de secteur commencent toujours à 1, il n’y a pas de secteur 0, ce qui peut prêter à confusion puisque les schémas d’adressage de secteur logique commencent généralement à compter avec 0, par ex, l’adressage par bloc logique (LBA), ou « l’adressage par secteur relatif » utilisé dans DOS.

Pour les géométries de disque physique, le nombre maximal de secteurs est déterminé par le format de bas niveau du disque. Cependant, pour l’accès au disque avec le BIOS des machines compatibles IBM-PC, le numéro de secteur était codé sur six bits, ce qui donnait un nombre maximal de 111111 (63) secteurs par piste. Ce maximum est toujours utilisé pour les géométries virtuelles CHS.

PistesEdit

Les pistes sont les fines bandes circulaires concentriques de secteurs. Au moins une tête est nécessaire pour lire une seule piste. En ce qui concerne les géométries des disques, les termes piste et cylindre sont étroitement liés. Pour une disquette à une ou deux faces, le terme piste est le plus courant ; pour plus de deux têtes, le terme cylindre est le plus courant. Strictement parlant, une piste est une combinaison CH donnée constituée deSPT secteurs, tandis qu’un cylindre est constitué deSPT×H secteurs.

CylindresEdit

Un cylindre est une division des données dans une unité de disque, telle qu’utilisée dans le mode d’adressage CHS d’un disque à architecture de blocs fixes ou le mode d’adressage cylindre-tête-enregistrement (CCHHR) d’un disque CKD.

Le concept est celui de tranches concentriques, creuses et cylindriques à travers les disques physiques (plateaux), rassemblant les pistes circulaires respectives alignées à travers la pile de plateaux. Le nombre de cylindres d’un lecteur de disque est exactement égal au nombre de pistes sur une seule surface dans le lecteur. Il comprend le même numéro de piste sur chaque plateau, couvrant toutes ces pistes sur chaque surface de plateau capable de stocker des données (sans tenir compte du fait que la piste est « mauvaise » ou non). Les cylindres sont formés verticalement par les pistes. En d’autres termes, la piste 12 du plateau 0 plus la piste 12 du plateau 1, etc. constitue le cylindre 12.

D’autres formes de dispositifs de stockage à accès direct (DASD), comme les dispositifs de mémoire à tambour ou la cellule de données IBM 2321, pourraient donner aux blocs des adresses comprenant une adresse de cylindre, bien que l’adresse de cylindre ne sélectionne pas une tranche cylindrique (géométrique) du dispositif.

HeadsEdit

Un dispositif appelé tête lit et écrit des données dans un disque dur en manipulant le support magnétique qui compose la surface d’un plateau de disque associé. Naturellement, un plateau a 2 côtés et donc 2 surfaces sur lesquelles les données peuvent être manipulées ; il y a généralement 2 têtes par plateau, une par côté. (Parfois, le terme côté est substitué à celui de tête, car les plateaux pourraient être séparés de leurs assemblages de têtes, comme avec les supports amovibles d’un lecteur de disquettes.)

L’adressage CHS pris en charge dans le code des BIOS compatibles IBM-PC utilisait huit bits pour – théoriquement jusqu’à 256 têtes comptées comme tête 0 jusqu’à 255 (FFh). Cependant, un bogue dans toutes les versions de Microsoft DOS/IBM PC DOS jusqu’à la 7.10 incluse provoquera un plantage de ces systèmes d’exploitation au démarrage lorsqu’ils rencontreront des volumes à 256 têtes. Par conséquent, tous les BIOS compatibles utiliseront des mappages avec jusqu’à 255 têtes (00h..FEh) uniquement, y compris dans les géométries virtuelles 255×63.

Cette bizarrerie historique peut affecter la taille maximale du disque dans l’ancien code INT 13h du BIOS ainsi que dans les anciens PC DOS ou les systèmes d’exploitation similaires:

(512 bytes/sector)×(63 sectors/track)×(255 heads (tracks/cylinder))×(1024 cylinders)=8032.5 Mo, mais en réalité 512×63×256×1024=8064 Mo donne ce qui est connu comme la limite de 8 Go. Dans ce contexte, la définition pertinente de 8 Go = 8192 Mo est une autre limite incorrecte, car elle nécessiterait le CHS 512×64×256 avec 64 secteurs par piste.

Les pistes et les cylindres sont comptés à partir de 0, c’est-à-dire que la piste 0 est la première piste (la plus extérieure) sur les disquettes ou autres disques cylindriques. L’ancien code BIOS supportait dix bits dans l’adressage CHS avec jusqu’à 1024 cylindres (1024=210). En ajoutant six bits pour les secteurs et huit bits pour les têtes, on obtient les 24 bits pris en charge par l’interruption 13h du BIOS. La soustraction du numéro de secteur 0 non autorisé dans les pistes 1024×256 correspond à 128 Mo pour une taille de secteur de 512 octets (128 MB=1024×256×(512 byte/sector)) ; et 8192-128=8064 confirme la limite (approximative) de 8 Go.

L’adressage CHS commence à 0/0/1 avec une valeur maximale 1023/255/63 pour 24=10+8+6 bits, ou 1023/254/63 pour 24 bits limités à 255 têtes. Les valeurs CHS utilisées pour spécifier la géométrie d’un disque doivent compter le cylindre 0 et la tête 0, ce qui donne une valeur maximale de (1024/256/63 ou) 1024/255/63 pour 24 bits avec (256 ou) 255 têtes. Dans les tuples CHS spécifiant une géométrie S signifie en fait secteurs par piste, et lorsque la géométrie (virtuelle) correspond toujours à la capacité, le disque contient C×H×S secteurs. Avec l’utilisation de disques durs plus grands, un cylindre est également devenu une structure de disque logique, normalisée à 16 065 secteurs (16065=255×63).

L’adressage CHS avec 28 bits (EIDE et ATA-2) permet huit bits pour les secteurs commençant toujours à 1, c’est-à-dire les secteurs 1…255, quatre bits pour les têtes 0…15, et seize bits pour les cylindres 0…65535. Il en résulte une limite d’environ 128 Go ; en fait 65536×16×255=267386880 secteurs correspondant à 130560 Mo pour une taille de secteur de 512 octets. Les bits 28=16+4+8 de la spécification ATA-2 sont également couverts par la liste d’interruptions de Ralf Brown, et un ancien projet de travail de cette norme maintenant expirée a été publié.

Avec une ancienne limite BIOS de 1024 cylindres et la limite ATA de 16 têtes, l’effet combiné était 1024×16×63=1032192 secteurs, c’est-à-dire une limite de 504 Mo pour une taille de secteur 512. Les schémas de traduction du BIOS connus sous le nom d’ECHS et d’ECHS révisé atténuaient cette limitation en utilisant 128 ou 240 au lieu de 16 têtes, réduisant simultanément les nombres de cylindres et de secteurs à insérer dans 1024/128/63 (limite ECHS : 4032 Mo) ou 1024/240/63 (limite ECHS révisée : 7560 Mo) pour le nombre total donné de secteurs sur un disque.

Blocs et grappesEdit

Les communautés Unix emploient le terme bloc pour désigner un secteur ou un groupe de secteurs. Par exemple, l’utilitaire Linux fdisk, avant la version 2.25, affichait les tailles de partition en utilisant des blocs de 1024 octets.

Les clusters sont des unités d’allocation de données sur divers systèmes de fichiers (FAT, NTFS, etc.), où les données sont principalement constituées de fichiers. Les clusters ne sont pas directement affectés par la géométrie physique ou virtuelle du disque, c’est-à-dire qu’un cluster peut commencer à un secteur près de la fin d’une CHpiste donnée, et se terminer dans un secteur sur la CHpiste physiquement ou logiquement suivante.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.