Quel est l'intérêt des disques durs de signaler la taille de leur secteur physique?

13

J'ai un SSD qui peut être configuré pour signaler sa taille de secteur physique à un système d'exploitation de deux manières différentes:

Option 1: logique = 512 octets, physique = 512 octets

Option 2: logique = 512 octets, physique = 4096 octets (4K)

Quel avantage un système d'exploitation gagne-t-il à connaître la taille du secteur physique 4K, compte tenu:

  • Le système d'exploitation doit communiquer avec le lecteur dans des secteurs de 512 octets, quel que soit

  • Tous les systèmes d'exploitation modernes s'alignent sur 4K et utilisent 4K ou des multiples d'E / S 4K indépendamment

Le paramètre semble inutile, car les systèmes d'exploitation modernes sont déjà optimisés pour les lecteurs de secteur 4K. Les systèmes d'exploitation modernes n'ont pas besoin de "demander" à un lecteur si ses secteurs sont 512b ou 4K, car le système d'exploitation fait tout par défaut en 4K.

Par exemple, Windows 7 aligne les partitions sur 1 Mo (un multiple de 4K), la taille du cluster NTFS est 4K ou multiple de celle-ci, et toutes les E / S sont effectuées en 4K ou multiple de celle-ci. Windows ne se soucie pas du disque dur que vous avez, il appliquera le comportement ci-dessus dans tous les cas.

Quoi qu'il en soit ... mon SSD a ce paramètre de "taille du secteur physique" et il doit donc être là pour une bonne raison ... c'est la raison pour laquelle je recherche.

BTW, pour ce qu'il vaut, le lecteur est un SSD Intel DC S3510 . La fiche technique du lecteur indique ceci (page 27):

En utilisant la commande SCT 0xD801 avec State = 0, Option = 1, le mot d'ID 106 peut être changé de 0x6003 à 0x4000 (la taille du secteur physique de 4KB à la prise en charge de la taille du secteur physique de 512B).

misha256
la source
1
4096 octets est le format avancé Les disques durs au format avancé peuvent faire l'un ou l'autre, selon le système d'exploitation si le disque dur émule 512 Ko
Moab
2
Les interfaces de stockage sont des trésors de décisions héritées ... "4 Ko Taille du secteur physique" n'est pas vrai non plus. Flash a des tailles de secteur physiques qui dépassent généralement 256 Ko. Toutes les tailles de secteur signalées sont (il) logiques.
MSalters

Réponses:

16

L'émulation de 512 octets est conçue pour être compatible avec les anciens systèmes. Cependant, les écritures n'impliquant qu'une partie d'un secteur 4K physique peuvent réduire les performances car le secteur doit être lu et modifié avant de pouvoir réellement être écrit.

Lorsqu'un système d'exploitation hérité essaie d'écrire sur un disque au format avancé, des problèmes de performances peuvent survenir car les secteurs logiques écrits peuvent ne pas correspondre aux secteurs physiques.

  • Lorsque seule une partie d'un secteur physique 4K est lue, les données sont simplement lues sur le secteur physique et il n'y a aucune réduction des performances. Cependant, lorsque le système essaie d'écrire sur une partie d'un secteur physique (par exemple un secteur émulé de 512 octets plutôt que sur l'ensemble du secteur physique), le disque dur doit lire l'ensemble du secteur physique, modifier la partie modifiée dans le disque dur interne du disque dur. mémoire, et l'écrire sur les plateaux. Ceci est appelé lecture-modification-écriture ( RMW ), une opération qui nécessite une rotation supplémentaire du disque et donc réduit les performances. Seagate explique cela comme suit :

[...] le disque dur doit d'abord lire l'intégralité du secteur 4K contenant l'emplacement cible de la demande d'écriture de l'hôte, fusionner les données existantes avec les nouvelles données, puis réécrire l'intégralité du secteur 4K:

Cycle lecture-modification-écriture

Dans ce cas, le disque dur doit effectuer des étapes mécaniques supplémentaires sous forme de lecture d'un secteur 4K, de modification du contenu, puis d'écriture des données. Ce processus est appelé cycle lecture-modification-écriture, ce qui n'est pas souhaitable car il a un impact négatif sur les performances du disque dur.

Les partitions de disque qui ne sont pas alignées sur une limite 4K peuvent également entraîner une dégradation des performances.

  • Traditionnellement, la première partition sur un disque dur commence au secteur 63. Windows XP et les anciens systèmes d'exploitation ont partitionné les disques de cette manière. Les versions plus récentes de Windows créeront des partitions sur une limite de 1 Mo, garantissant un alignement correct avec les secteurs physiques. C'est ce qu'on appelle l' alignement 0 .

    • Ce nombre impair est un artefact de l' adressage du secteur de culasse (CHS) utilisé dans INT 13h , l' API BIOS héritée utilisée pour l'accès au disque. Sur les systèmes hérités et les chargeurs de démarrage qui utilisaient l'API INT 13h, toutes les partitions doivent commencer et se terminer aux limites des cylindres. Même après l' introduction de l' adressage de blocs logiques (LBA) , de fausses valeurs CHS (qui ne correspondaient pas à la géométrie réelle du disque) ont été utilisées pour maintenir la compatibilité avec l'ancienne API. Étant donné que l'adressage CHS supportait à l'origine un maximum de 63 secteurs par cylindre, la première partition commencerait sur le secteur 63. Windows XP (avant le Service Pack 3) et les versions antérieures de Windows ne démarreront pas si le volume système n'est pas sur une limite de cylindre .
  • Étant donné que LBA 63 n'est pas un multiple de 8 (huit secteurs hérités de 512 octets s'inscrivent dans un secteur 4K), un disque au format avancé qui est formaté à l'ancienne aura des clusters (la plus petite unité d'allocation de données du système de fichiers, généralement de taille 4K). ) qui ne sont pas alignés sur les secteurs physiques d'un disque 4K, une condition appelée Alignement 1 . Par conséquent, une opération d'E / S qui implique autrement 4K de données s'étend désormais sur deux secteurs, ce qui conduit à une opération de lecture-modification-écriture qui réduit les performances.

Bien que les informations sur la taille du secteur physique ne soient pas nécessaires si le système d'exploitation écrit toujours des données sur une limite 4K, ces informations peuvent toujours être nécessaires aux applications qui effectuent des E / S de bas niveau.

  • Lorsqu'un lecteur signale que sa taille de secteur physique est 4K, le système d'exploitation ou l'application peut indiquer qu'il s'agit d'un lecteur au format avancé et doit donc éviter d'effectuer des opérations d'E / S qui ne s'étendent pas sur des secteurs physiques complets. Un lecteur qui signale des secteurs natifs de 512 octets n'impose pas cette restriction. Alors que les nouveaux systèmes d'exploitation essaient généralement de lire ou d'écrire des données en unités 4K chaque fois que cela est possible (ce qui rend ces informations non pertinentes), les applications qui effectuent des E / S de bas niveau peuvent avoir besoin de connaître la taille du secteur physique afin de pouvoir s'ajuster en conséquence et éviter les désalignements ou des écritures partielles qui ralentissent les cycles RMW.

Votre SSD offre la possibilité de modifier la taille de secteur physique signalée car elle est nécessaire pour la compatibilité avec certaines baies de stockage.

  • Les centres de données ont souvent des baies de stockage constituées de disques 512n hérités. Les lecteurs 4K, même ceux qui émulent des secteurs de 512 octets, peuvent ne pas être compatibles avec de telles baies, cette fonctionnalité est donc nécessaire pour garantir la compatibilité. Voir ce fil de discussion :

    Nous ne pouvons pas simplement coller un lecteur 4K dans une matrice formatée avec des disques 512b. De nombreuses baies (notamment le stockage basé sur ZFS, qui est de plus en plus populaire car le stockage défini par logiciel fait des vagues) n'accepteront pas un lecteur de remplacement avec un format de secteur physique différent.

    Notez que de meilleures performances seront atteintes sur les systèmes modernes si le lecteur est configuré pour utiliser des secteurs 4K.

bwDraco
la source
L'ironie est que les OS qui ne savent pas s'aligner correctement ne pourront pas non plus interroger un disque dur sur la "taille du secteur physique". Les OS qui savent comment s'aligner correctement n'ont pas besoin d'interroger un disque dur pour la "taille du secteur physique" car ils s'alignent correctement par défaut. Par exemple, Windows s'aligne sur 1 Mo.
misha256
1
Je dois dire ... je suis vexé. Je n'ai jamais vu de lecteur vous permettant de modifier le paramètre de rapport "Taille du secteur physique". Je ne comprends pas pourquoi un tel paramètre doit exister, étant donné que les seules options sont 512b et 4K, et considérant que les systèmes d'exploitation modernes font tout à la manière 4K, quel que soit le type de lecteur que vous utilisez.
misha256
C'est probablement la meilleure réponse du lot, mais je pense qu'il est temps de traquer un ingénieur Intel et d'obtenir une réponse faisant autorité. Semble être une chose hautement ésotérique.
misha256
3
Bien que pertinente pour les disques durs, cette réponse n'est pas pertinente pour les SSD. La taille des blocs d'écriture / d'effacement des disques SSD est de plusieurs mégaoctets, donc même le "physique" 4K n'est pas proche de la taille réelle du secteur physique.
qasdfdsaq
1
La taille d'écriture @qasdfdsaq n'est pas nécessairement la même que la taille d'effacement. 4K sera la granularité du suivi des blocs "en cours d'utilisation". En attendant, je suis maintenant convaincu que la dernière partie de cette réponse sur ZFS est la bonne: utcc.utoronto.ca/~cks/space/blog/tech/…
pjc50
5

Quel est l'avantage d'un système d'exploitation en étant conscient de la taille du secteur physique lorsque, indépendamment, le système d'exploitation doit parler au lecteur dans des secteurs de 512 octets.

La taille logique est une taille minimale pour transférer des données. Comme il s'agit d'un périphérique bloc, tout transfert de données entre l'ordinateur hôte et le lecteur se fera en multiples de cette taille de bloc logique.

La taille physique est une taille optimale pour transférer des données et reflète la taille des opérations de lecture et d' écriture réelles au niveau du contrôleur / lecteur.

Lorsque l'ordinateur hôte demande une lecture d'un secteur logique, le contrôleur / lecteur effectuera une opération de lecture du secteur physique qui contient le secteur logique.
Lorsque la taille du secteur logique est égale à la taille du secteur physique, l'opération est simple. Lorsque la taille du secteur logique est inférieure à la taille du secteur physique, le secteur logique doit être extrait du secteur physique par le contrôleur pour être transféré vers l'ordinateur hôte.

Lorsque l'ordinateur hôte demande une écriture d'un secteur logique, la taille du secteur physique est importante.
Lorsque la taille du secteur logique est égale à la taille du secteur physique, l'opération d'écriture est simple et peut se poursuivre directement. L'état du contenu précédent du secteur n'affectera pas l'opération d'écriture.

Lorsque la taille du secteur logique est inférieure à la taille du secteur physique, le contrôleur doit d'abord effectuer une opération de lecture du secteur physique qui contient le secteur logique.
Si la lecture réussit, le secteur logique est inséré dans le secteur physique et le secteur physique est entièrement écrit.
Si la lecture échoue (même après de nouvelles tentatives), l'opération d'écriture ne peut pas être terminée.

Si le système d'exploitation effectue les opérations de lecture et d'écriture avec la taille du secteur physique (en utilisant les opérations multisectorielles disponibles dans le jeu de commandes ATAPI), les opérations d'écriture seront effectuées plus efficacement (et sans risque inutile d'achèvement).

La taille du secteur LOGICAL définit entièrement la façon dont un système d'exploitation peut communiquer avec un lecteur. Aucune exception. À quoi cela sert-il de connaître la taille du secteur physique, alors que vous n'êtes autorisé à communiquer qu'en taille de secteur logique?

Votre affirmation «sans exception» est incorrecte.
Le jeu de commandes ATAPI, qui a été introduit avec le disque dur IDE, a toujours eu la capacité d'effectuer des opérations de lecture et d'écriture avec un sector countparamètre. Il s'agit simplement d'une extension des interfaces de contrôleur de disquette et de disquette existantes qui étaient également capables d'opérations de lecture / écriture multisectorielles (tant que les secteurs étaient sur la même piste).

sciure
la source
C'est peut- être la bonne réponse ... mais je ne suis toujours pas convaincu. Le système d'exploitation moderne fonctionne avec des systèmes de fichiers et des tailles de blocs d'E / S de 4K et des multiples de 4K. Ils sont déjà optimisés pour une utilisation avec des disques durs dotés de secteurs physiques 4K. De plus, les tailles de blocs d'E / S utilisées sont toujours 4K et multiples de 4K même sur un disque dur physique 512b. Ce qui donne?!
misha256
Bingo! Le sector countparamètre dont vous parlez ... même l'ancien Windows XP lit / écrit en taille de bloc d'E / S de 8secteurs ou de multiples de ceux-ci. C'est déjà entièrement optimisé! C'est pourquoi XP fonctionne extrêmement bien avec les SSD tant que la partition est alignée. Il est extrêmement convivial en 4K. La question reste donc sans réponse. Que peut faire de plus un OS en connaissant la taille du secteur physique est 4K. N'oubliez pas que le système d'exploitation est déjà optimisé pour les E / S 4K.
misha256
1
"Ils sont déjà optimisés ..." - Pas nécessairement. Le secteur "de départ" devrait toujours être aligné sur un secteur physique. Cela n'est pas garanti lorsque l'OS ne connaissait pas les secteurs physiques et logiques, mais essayait simplement d'être plus efficace en utilisant des opérations multisectorielles.
sciure de bois
2
@ misha256 Non, ce n'est pas si simple. "Windows XP, Windows Server 2003 et Windows Server 2003 R2 ne prennent pas en charge les supports 512e ou 4Kn. Bien que le système puisse démarrer et fonctionner de manière minimale, il peut y avoir des scénarios inconnus de problèmes de fonctionnalité, de perte de données ou sous-optimaux Ainsi, Microsoft met fortement en garde contre l'utilisation de supports 512e avec Windows XP ... " msdn.microsoft.com/en-us/library/windows/desktop/…
Ross Ridge
2
@ misha256 - Vous choisissez les conditions, puis proclamez que, en toutes circonstances, ces informations sont inutiles. Tout le monde ne va pas utiliser un tel SSD avec Windows et NTFS et> 4k clusters. "NTFS ne prend même pas en charge moins d'E / S 4K" - Pas vrai. Les tailles de cluster de 512, 1024 et 2048 octets sont toujours des options dans ma copie (à jour) de Win7 pour NTFS. . .
sciure de bois
3

Si le système d'exploitation connaît la taille du secteur physique sous-jacent, il peut optimiser ses requêtes pour nécessiter le moins d'opérations physiques possible. En particulier avec les SSD, la limite de fonctionnement physique (4KO IOPS limit) est souvent la limite ultime de la vitesse de l'appareil, il est donc important de pouvoir utiliser au mieux cette capacité.

David Schwartz
la source
Argh, ça ne peut pas être vrai. Les OS modernes sont intrinsèquement optimisés. Tous utilisent des systèmes de fichiers avec des tailles de "bloc" (aka clusters) qui sont de 2 ^ n octets, à partir de 2 ^ 12 (c'est-à-dire 4K, pensez à NTFS par défaut). Suite à cela, toutes les opérations d'E / S finissent par être un multiple de 4K. Qu'un disque soit physiquement 512 octets ou 4K ne devrait pas faire de différence. Vous ne pouvez pas optimiser plus loin que cela, sûrement?
misha256
Que faire si le système d'exploitation n'obtient pas l'alignement correct et qu'une opération d'E / S se termine sur deux secteurs physiques? Vous obtiendriez des performances dégradées.
bwDraco
1
@ misha256 Il n'y a pas d'incompatibilité entre ce que vous avez dit et ce que j'ai dit. Il est vrai qu'au-delà d'un alignement correct, la plupart des systèmes de fichiers ne bénéficient pas beaucoup de la connaissance de la taille du secteur physique. Certaines bases de données le font.
David Schwartz
@DavidSchwartz N'est-ce pas, ok, donc tout cela peut être au profit de certains OS ésotériques ou systèmes de fichiers utilisés dans les centres de données ou similaires? Peut-être quelques tableaux RAID sophistiqués?
misha256
Il semble s'agir de systèmes d'exploitation non Windows ("ésotériques") et de contrôleurs RAID.
pjc50
1

Il existe deux façons différentes d'accéder à un emplacement dans un lecteur, l'une est le schéma CHS et l'autre est le schéma LBA.

CHS signifie Cylindre, Tête, Secteur et est la méthode la plus simple pour déterminer où lire ou écrire à partir du lecteur. Vous lui dites d'utiliser le cylindre x, la tête y et le secteur z et de lire ou d'écrire le contenu de cet emplacement vers ou depuis une adresse dans la mémoire (un tampon). Il est dérivé des composants physiques réels d'un disque dur (traditionnel, rouille en rotation), où vous avez des cylindres physiques et des têtes de lecture. Le secteur est la plus petite unité adressable, et était traditionnellement fixé à 512 octets.

LBA est un adressage d'octets logique dans lequel le lecteur lit et écrit dans une adresse de secteur par son décalage, par exemple, lit le 123837e secteur sur le disque ou l'écrit dans le 123734e secteur sur le disque (à partir de zéro).

Le problème? Chacune de ces valeurs est limitée dans la plage. En fait, en raison de la sévérité du CHS, le LBA a dû être introduit. Pour CHS, les valeurs possibles pour C (le cylindre) sont 1023, tandis que H (têtes) peut être 255 maximum, et S (secteur) ne peut aller que jusqu'à 63, ce qui signifie que vous pouvez avoir au plus 1024 cylindres x 255 têtes x 64 secteurs x 512 octets mappés au format CHS traditionnel, vous donnant un grand total de moins de 8 Gio! En utilisant CHS, il n'est tout simplement pas possible d'accéder à un disque de plus de 8 Gio!

LBA a donc été introduit avec une limite de 32 bits vous donnant 2 ^ 32 x 512 octets ou 2 TiB de taille de disque - c'est la raison pour laquelle un disque MBR ne peut pas dépasser 2 To, car il utilise CHS et LBA pour spécifier les tailles de partition, et ni l'un ni l'autre ne peut prendre en charge quoi que ce soit sur 2 To.

De nouvelles options améliorées ont été introduites, comme le schéma de partitionnement GPT qui étend LBA à 64 bits, vous offrant beaucoup plus que ce dont vous aurez besoin à 2 ^ 64 x 512 octets - mais il y a un hic: beaucoup d'héritage les systèmes d'exploitation matériels et hérités et les implémentations BIOS héritées et les pilotes hérités ne prennent pas en charge UEFI ou GPT, et beaucoup de gens aimeraient avoir quelque chose qui peut être mis à niveau plus facilement pour dépasser la limite de 2 To sans avoir à réécrire la pile entière de zéro. Et, enfin, nous atteignons la taille du secteur 4096.

Voir, à travers toutes les limitations discutées ci-dessus, une chose a été une hypothèse fixe: la taille du secteur. Depuis le premier jour, il a été de 512 octets et il en est resté ainsi depuis. Mais récemment, les fabricants de disques durs ont réalisé qu'il était possible de faire un peu de magie: prenez le CHS traditionnel ou le LBA 32 bits et remplacez simplement la taille du secteur par 4096 (4k) au lieu de 512 octets. Quand un OS dit "donnez-moi le 2ème secteur sur le disque" en demandant LBA 1 (parce que LBA 0 est le premier), nous n'allons pas lui donner les octets 512 - 1023 mais plutôt les octets 4096 - 8191.

Soudain, notre limite de 2 To est mise à niveau à 2 ^ 32 x 4096 octets, ou 16 TiB, sans avoir à abandonner le MBR, passer à UEFI ou GPT, ou quoi que ce soit!

Le seul hic, c'est que si le système d'exploitation ne sait pas qu'il s'agit d'un disque magique qui utilise 4096 secteurs au lieu de 512 secteurs d'octets, il y aura un décalage. Chaque fois que le système d'exploitation dit "Hé, vous, disque, écrivez-moi ces 512 octets pour compenser xxx", le disque utilisera 4096 octets pour stocker ces 512 octets (le reste étant des zéros ou des données indésirables, en supposant que vous ne vous retrouvez pas avec un dépassement de mémoire) car ils ne communiquent pas en octets, ils communiquent en secteurs.

Ainsi, les BIOS incluent désormais (parfois) une option pour vous permettre de spécifier manuellement qu'une taille de secteur de 512 octets doit être utilisée au lieu de la taille de secteur native de 4096 octets que les disques plus récents utilisent - avec la mise en garde que vous ne pouvez pas l'utiliser pour accéder à plus de 2 To du disque sur un système MBR, comme c'était le «bon vieux temps». Mais les systèmes d'exploitation modernes qui prennent en charge 4k peuvent profiter de tout cela pour utiliser cette magie pour lire et écrire en morceaux de 4096 octets et voilà!

(Un avantage supplémentaire est que les choses sont beaucoup plus rapides parce que si vous lisez et écrivez 4096 octets à la fois, il y a moins d'opérations pour lire ou écrire, disons, 4 Go de données.)

Mahmoud Al-Qudsi
la source
2
Cela ne répond vraiment pas à la question. Expliquer CHS et LBT ne sont pas pertinents. Cela ressemble à un dépotoir de ce que vous savez sur les "secteurs". "Depuis le premier jour, il a été de 512 octets ..." - Ce n'est vrai que pour le PC IBM.
sciure de bois
1
@sawdust Je ne suis pas d'accord - Même en ignorant le contexte (à mon humble avis) sur CHS et LBA, la réponse succincte à votre question se trouve dans l'avant-dernier paragraphe "Mais les systèmes d'exploitation modernes qui sont conscients de 4k peuvent profiter de tout cela pour utiliser cette magie pour lire et écrire en morceaux de 4096 octets et voilà! " - c'est-à-dire que l'hypothèse de la question - qu'un système d'exploitation doit parler en blocs de 512 octets - est fausse.
davidgo
@davidgo Au niveau du pilote, le système d'exploitation communique avec le lecteur par nblocs de 512 octets. C'est nun nombre qui, depuis Windows XP, n'est JAMAIS inférieur à 8, et toujours un multiple de 8. Ce qui signifie que tous les systèmes d'exploitation à partir de XP, et je crois que toutes les distributions Linux modernes sont également optimisées pour les lecteurs 4K. La plus petite E / S est 4K, et toutes les autres tailles d'E / S sont des multiples de cela.
misha256
Je pense que je précise très clairement que même si vous regroupez n secteurs en une seule opération, vous dites toujours au disque de rechercher des blocs de 512 octets, ce qui signifie que vous êtes limité dans la quantité que vous pouvez rechercher. 4096 secteurs résolvent le problème de recherche. J'ai également précisé que la connaissance du système d'exploitation de la taille des blocs est impérative, sinon 512 octets seront stockés dans 4096 morceaux!
Mahmoud Al-Qudsi
De plus, je pense que vous êtes confus entre logique et physique. Le physique est toujours soit 512 soit 4096. Si la taille logique est 4096 mais que le système d'exploitation suppose aveuglément que c'est 512, vous rencontrerez les problèmes que j'ai décrits. Ils doivent correspondre.
Mahmoud Al-Qudsi
1

512/4096 = OS responsable de l'alignement / optimisation,

512/512 = Drive responsable de cela

Voir également: http://support.microsoft.com/en-us/kb/2510009

Joe
la source
Veuillez citer les parties essentielles de la réponse à partir des liens de référence, car la réponse peut devenir invalide si les pages liées changent.
DavidPostill
0

Je voulais juste vous informer d'une situation où les secteurs 4K sont un problème pour les systèmes d'exploitation modernes.

L'enregistreur VSS de Microsoft (Shadow Copy) ne fonctionne pas bien avec les secteurs 4K. Pour sauvegarder un dossier de partage de réplication DFS, notre logiciel de sauvegarde "Backup Exec" doit créer un cliché instantané du dossier répliqué DFS. Le travail échoue si le dossier de réplication DFS se trouve sur un lecteur avec des secteurs 4K car VSS ne fonctionne pas correctement avec les secteurs 4K.

Jim

Jim
la source
3
Je ne suis pas tout à fait sûr que cela répond à la question proposée, cela répond à une question, mais pas à celle posée par l'auteur.
Ramhound
Ce sont des informations très intéressantes, mais elles semblent être une réponse à une question quelque peu différente. Une fois que vous avez une réputation suffisante, vous pourrez commenter partout. Pour une introduction à notre site, voir la visite .
Ben N
-3

Physique signifie celui du disque lui-même, tandis que Logique est celui des divisions définies en son sein. De Logical vs Physical de PC Mag:

Dans un PC Windows, un seul disque dur physique est le lecteur 0; cependant, il peut être partitionné en plusieurs lecteurs logiques, tels que C :, D: et E :.

Pour expliquer cela sous une forme digestible, imaginez une pomme de la largeur de votre main. C'est la taille physique réelle de la pomme. Naturellement, une pomme entière ne rentrera pas dans votre bouche, vous décidez donc de la couper en tranches égales, chaque tranche étant la largeur de votre doigt. Il s'agit de la taille logique ou de la taille que votre ordinateur utilisera.

Plusieurs raisons à cela sont les calculs de capacité en valeur réelle et la cartographie et la correction des erreurs, comme expliqué par Wikipedia:

Les disques durs typiques tentent de «remapper» les données d'un secteur physique qui ne parvient pas à un secteur physique de rechange fourni par le «pool de secteurs de rechange» du lecteur (également appelé «pool de réserve») [41], tout en s'appuyant sur l'ECC pour récupérer les données stockées alors que le nombre d'erreurs dans un secteur défectueux est encore suffisamment faible. La fonction SMART (Self-Monitoring, Analysis and Reporting Technology) compte le nombre total d'erreurs sur l'ensemble du disque dur fixées par ECC (mais pas sur tous les disques durs car les attributs SMART associés "Hardware ECC Recovered" et "Soft ECC Correction" sont pas toujours pris en charge) et le nombre total de remappages de secteurs effectués, car la survenue de nombreuses erreurs de ce type peut prédire une défaillance du disque dur.

Tout comme vous ne pouvez pas avoir de tranches de pomme sans la pomme elle-même, vous ne pouvez pas avoir Logique sans que le Physique serve de base.

xCare
la source
1
Mais pourquoi un système d'exploitation a-t-il besoin de connaître la taille du secteur physique, et que fera-t-il différemment, étant donné qu'il doit quand même parler au lecteur dans des secteurs logiques? Cela semble être une information absolument inutile pour un système d'exploitation.
misha256
"pourquoi un OS a-t-il besoin de savoir ..." - La taille logique est une taille minimale pour transférer des données. La taille physique est une taille optimale pour transférer des données et reflète la taille de l'opération de lecture / écriture réelle au niveau du lecteur. "Cela semble être des informations absolument inutiles ..." - Peut-être cela vous semble "inutile" parce vous n'êtes pas en développement ou impliqué dans un système d'exploitation?
sciure de bois
1
@sawdust Mais le système d'exploitation ne peut pas utiliser la taille de transfert optimale dont vous parlez car le disque est câblé sur des secteurs logiques de 512 octets. Les lecteurs 4K natifs sont différents, ils ont des secteurs logiques 4K et un système d'exploitation (par exemple Win 8.1) est obligé de lire et d'écrire dans les secteurs logiques 4K. Mais mon lecteur n'est pas un lecteur logique 4K. Il s'agit d'un lecteur logique de 512 octets.
misha256
@ misha256 - J'ai publié ma propre réponse.
sciure
Confondre les lecteurs physiques / logiques avec les tailles de secteurs physiques / logiques.
MSalters