Alignement des partitions – Secteurs de 4K

Présentation

Le marché du disque dur est en pleine mutation. Alors que les densités de stockage ont augmenté de façon spectaculaire au fil des ans, le format de bloc logique connu sous le nom de secteur, qui constitue l’un des aspects les plus fondamentaux de la conception des disques durs, n’a pas évolué.

Or, depuis fin 2009, le marché connaît une nouvelle tendance qui va s’accélérer en 2010 et atteindra son apogée en 2011. En effet, les constructeurs de disques dur abandonnent progressivement l’ancienne taille de secteur de 512 octets au profit d’une taille de secteur plus efficace de 4 096 octets. Ces secteurs, généralement connus sous le nom de secteurs 4K, s’appellent désormais Advanced Format (format avancé) selon l’IDEMA (International Disk Drive Equipment and Materials Association).

Cet article décrit le contexte de cette migration et en indique les avantages à long terme pour les clients, ainsi que les embûches potentielles à éviter dans le cadre du passage des secteurs de 512 octets aux secteurs 4K.

Contexte

Pendant plus de 30 ans, les données stockées sur les disques durs ont été formatées en petits blocs logiques appelés secteurs. La taille de ces secteurs était de 512 octets. En fait, de nombreux aspects des systèmes informatiques actuels continuent de reposer sur cette norme de format fondamentale.

L’ancien format de secteur comporte une section d’intervalle (Gap), une section de synchronisation (Sync), une section de marquage d’adresse (Address Mark), une section de données (Data) et une section de code de correction d’erreurs (ECC, Error Correction Code) (Figure 1).

ti transitionadvanced fig1

Figure 1. Configuration d’un ancien secteur sur un support de disque dur

La structure de cette disposition de secteurs a été conçue de la façon suivante :

  • Section d’intervalle : l’intervalle sert à séparer les secteurs.
  • Section de synchronisation : la marque de synchronisation indique le début du secteur et assure l’alignement de synchronisation.
  • Section de marquage d’adresse : le marquage d’adresse contient les données identifiant le numéro et l’emplacement du secteur. Cette section indique également l’état du secteur proprement dit.
  • Section de données : cette section contient l’ensemble des données de l’utilisateur.
  • Section ECC : cette section contient les codes de correction d’erreurs utilisés pour la réparation et la récupération des données susceptibles d’être endommagées pendant le processus de lecture ou d’écriture.

Ce format de bas niveau a répondu aux attentes du marché pendant de nombreuses années. Toutefois, à mesure que les capacités de disque dur ont augmenté, la taille des secteurs s’est progressivement révélée un frein vis-à-vis de l’amélioration des capacités de disque dur et de l’efficacité de la correction d’erreurs. Par exemple, lorsque l’on compare la taille de secteur à la capacité totale des anciens disques durs et à celle des disques les plus récents, on constate que la résolution de secteur est devenue extrêmement réduite. La résolution de secteur (taux de secteurs sous forme de pourcentage du stockage total) s’est révélée de plus en plus fine et inefficace (Tableau 1).

Capacité Nombre total de secteurs Résolution de secteur
40 Mo 80 000 0,001 %
400 Go 800 000 000 0,0000001 %

 

Une résolution très fine donne de bons résultats en cas de gestion de petites quantités de données discrètes. Toutefois, les applications courantes des systèmes informatiques actuels gèrent les données sous la forme de blocs volumineux, d’une taille bien supérieure aux anciens secteurs de 512 octets.

En outre, les petits secteurs de 512 octets ont occupé une quantité d’espace de plus en plus réduite sur la surface des disques dur à mesure que les densités surfaciques ont augmenté. Ceci constitue un problème dans le contexte de la correction d’erreurs et des risques de défauts de support. Dans la Figure 2, par exemple, les données d’un secteur de disque dur occupent des zones plus restreintes, compliquant ainsi la correction d’erreurs puisque des défauts de support de même taille peuvent endommager un pourcentage plus élevé de la charge utile totale des données et, par conséquent, nécessitent une correction d’erreurs renforcée.

ti transitionadvanced fig2

Figure 2. Défauts de support et densité surfacique

Un secteur de 512 octets peut généralement corriger un défaut d’une longueur atteignant jusqu’à 50 octets. Sur les disques durs actuels, la correction d’erreurs commence à atteindre la limite de ses possibilités avec les densités surfaciques de pointe. Par conséquent, la migration du marché du disque dur vers des secteurs élargis constitue désormais une nécessité cruciale pour permettre l’apport d’améliorations en matière de correction d’erreurs et d’efficacité du format.

Passage aux secteurs 4K (format avancé)

Le marché du stockage travaille depuis des années de façon collective sur l’évolution vers les formats de disque dur à secteurs élargis ; des recherches significatives en la matière ont ainsi été entreprises par Seagate et les autres constructeurs de disques durs depuis au moins cinq ans (Figure 3). En décembre 2009, un effort conjoint mené au sein de l’IDEMA a donné lieu à la désignation et à l’approbation de l’appellation Advanced Format (format avancé) pour la norme des secteurs 4K. En outre, tous les constructeurs de disques durs se sont engagés à fournir de nouvelles plates-formes de disque dur au format avancé pour les PC de bureau et les PC portables à partir de janvier 2011. Avant cette date, les disques au format avancé commenceront à faire leur apparition sur le marché. Western Digitala commercialisé son premier disque au format avancé en décembre 2009, tandis que Seagate offre depuis quelque temps des disques à secteurs élargis aux clients OEM, ainsi que dans ses produits de marque vendus au détail, notamment ses disques durs USB tels que ceux de la gamme Seagate® FreeAgent®.

ti transitionadvanced fig3

Figure 3. Étapes clés du développement du format avancé

Avantages à long terme des secteurs 4K

Étant donné que tous les constructeurs de disques durs ont convenu d’adopter le format de secteur avancé d’ici janvier 2011, le marché doit s’adapter et prendre en charge ce changement de façon à en minimiser les possibles inconvénients. Les avantages à court terme pour les utilisateurs finaux ne se révéleront pas spectaculaires en termes d’augmentations de capacité immédiates. Toutefois, le passage aux secteurs 4K contribuera très certainement à accélérer l’augmentation des densités surfaciques et des capacités de disque dur, ainsi que l’optimisation de la correction d’erreurs.

Amélioration de l’efficacité du format par la réduction de l’espace utilisé pour le code de correction d’erreurs

La Figure 4 illustre la configuration d’un ancien secteur de 512 octets comportant 50 octets d’informations supplémentaires non associées aux données, ainsi que 15 autres octets réservés aux sections d’intervalle, de synchronisation et de marquage d’adresse. Cette structure produit un format sectorisé1 affichant un taux d’efficacité d’environ 88 % [512/(512 + 65)].

ti transitionadvanced fig4

Figure 4. Configuration d’un ancien secteur de 512 octets

Le nouveau format avancé marque le passage à un secteur de 4K qui combine essentiellement huit anciens secteurs de 512 octets en un seul secteur de 4K octets (Figure 5).

ti transitionadvanced fig5

Figure 5. Format avancé : disposition d’un secteur de 4K octets

Le format avancé utilise le même nombre d’octets pour les sections d’intervalle, de synchronisation et de marquage d’adresse, mais utilise une taille de 100 octets pour le champ ECC. Cette architecture produit un format sectorisé1 affichant un taux d’efficacité de 97 % [4 096/(4 096 + 115)], soit une amélioration de près de 10 %.

Avec le temps, ces efficacités de format se révéleront payantes en contribuant à favoriser les augmentations de capacité tout en améliorant l’intégrité des données.

Fiabilité et correction d’erreurs

Alors que la taille physique des secteurs de disque dur a diminué en occupant un espace de plus en plus restreint, le nombre de défauts de support n’a pas baissé. Examinez la Figure 6 représentant des objets habituellement considérés comme de très petite taille. Or, par rapport à la hauteur de vol d’une tête de lecture et d’écriture d’un disque dur, ces objets paraissent relativement volumineux. Des particules microscopiques bien plus petites que celles représentées sur ce schéma sont susceptibles de créer des défauts de support sur un disque dur.

ti transitionadvanced fig6

Figure 6. Représentation à échelle réduite de la hauteur de vol d’un disque dur

Le secteur 4K élargi du format avancé double2 approximativement la taille du bloc ECC en le faisant passer de 50 à 100 octets, offrant ainsi une amélioration plus que nécessaire en matière d’efficacité de correction d’erreurs et de protection contre les particules et les défauts de support.

L’optimisation combinée de l’efficacité du format et de la fiabilité de la correction d’erreurs justifie amplement le passage aux secteurs 4K. La gestion adéquate de cette transition, de façon à en garantir les avantages à long terme et à en minimiser les effets indésirables, constitue désormais un impératif clé pour le marché du disque dur.

Bien comprendre les implications du passage à la norme 4K

Comme indiqué précédemment, de nombreux aspects des systèmes informatiques actuels continuent de reposer sur une taille de secteur de 512 octets. Il n’est guère réaliste de supposer que l’intégralité du marché adoptera la nouvelle norme 4K en modifiant instantanément ces anciens postulats de départ. La mise en œuvre de secteurs 4K natifs, au cours de laquelle l’hôte et le disque dur échangeront tous deux des données sous forme de blocs 4K, se généralisera avec le temps. D’ici là, les constructeurs de disques durs effectueront la transition vers les secteurs 4K au moyen d’une technique appelée émulation de secteurs de 512 octets.

Émulation de secteurs de 512 octets

L’introduction des secteurs 4K dépendra massivement de l’émulation des secteurs de 512 octets. Ce terme désigne le processus de conversion des secteurs physiques de 4K utilisés dans le format avancé en anciens secteurs de 512 octets reconnus par les systèmes informatiques hôtes.

L’émulation 512 octets constitue une solution acceptable car elle n’exige pas l’apport de modifications complexes au niveau des anciens systèmes informatiques. Toutefois, ce processus se révèle susceptible de compromettre les performances, notamment en cas d’écriture de données ne correspondant pas exactement aux 8 anciens secteurs convertis. L’examen des processus de lecture et d’écriture requis par l’émulation 512 octets démontre clairement ce point.

Processus de lecture et d’écriture émulés

Le processus de lecture des données d’un disque formaté à l’aide de secteurs 4K en mode d’émulation 512 se révèle d’une grande simplicité, comme illustré dans la Figure 7.

ti transitionadvanced fig7

Figure 7. Séquence de lecture possible en mode d’émulation 512 octets

La lecture du bloc de données 4K et le reformatage du secteur virtuel spécifique de 512 octets requis par l’ordinateur hôte s’effectuent dans la mémoire DRAM (Dynamic Random Access Memory, mémoire vive dynamique) du disque et n’ont pas d’incidence notable sur les performances.

Un processus d’écriture peut se révéler plus complexe, notamment lorsque les données que l’ordinateur hôte tente d’écrire constituent un sous-ensemble d’un secteur 4K physique. Dans ces cas précis, le disque dur doit commencer par lire la totalité du secteur 4K contenant l’emplacement cible de la demande d’écriture de l’hôte, puis fusionner les données existantes avec les nouvelles données, et enfin réécrire l’intégralité du secteur 4K (Figure 8).

ti transitionadvanced fig8

Figure 8. Séquence d’écriture possible en mode d’émulation 512 octets

Dans cet exemple, le disque dur doit effectuer des opérations mécaniques supplémentaires qui consistent à lire un secteur 4K, à en modifier le contenu, puis à écrire les données. Ce processus, désigné sous le terme de cycle de lecture-modification-écriture, n’est pas souhaitable, car il compromet les performances du disque dur. La réduction des risques et de la fréquence des cycles de lecture-modification-écriture constitue l’aspect le plus crucial d’un passage aisé et en douceur aux secteurs 4K.

Prévention des cycles de lecture-modification-écriture

  1. Demandes d’écriture non alignées en raison d’un alignement incorrect entre une partition logique et une partition physique
  2. Demandes d’écriture d’une taille inférieure à 4K

Comparaison des partitions de disque dur alignées et non alignées

Jusqu’à présent, nous n’avons pas encore abordé la façon dont les systèmes hôtes et les disques durs communiquent l’emplacement des secteurs sur le support. Il est temps d’examiner le rôle des LBA (Logical Block Address, adresse de bloc logique).

Chaque secteur de 512 octets reçoit une LBA unique, comprise entre zéro (0) et la valeur requise en fonction de la taille du disque. L’hôte demande un bloc de données spécifique à l’aide de la LBA attribuée. Lorsque l’hôte effectue une demande d’écriture de données, une adresse LBA est renvoyée à la fin de l’opération d’écriture pour lui indiquer l’emplacement des données. Ce processus joue un rôle important dans le passage aux secteurs 4K, puisque la LBA de l’hôte peut démarrer à huit emplacements différents.

Lorsque la LBA 0 est alignée sur le premier bloc virtuel de 512 octets dans le secteur physique 4K, l’alignement logique/physique en mode d’émulation 512 octets présente l’état « Alignment 0 ». Un autre alignement possible survient lorsque la LBA 0 est alignée sur le deuxième bloc virtuel de 512 octets dans le secteur physique 4K. Ce type d’alignement présente l’état « Alignment 1 » et est comparé à l’état « Alignment 0 » dans la Figure 9. Il existe six autres possibilités de partitions non alignées susceptibles d’entraîner des événements de lecture-modification-écriture, comparables à l’état « Alignment 1 ».

ti transitionadvanced fig9

Figure 9. États d’alignement

Les états « Alignment 0 » fonctionnent parfaitement avec les nouveaux secteurs 4K du format avancé. Cette situation s’explique par le fait qu’un disque dur peut aisément mapper huit secteurs contigus de 512 octets dans un même secteur 4K. Le disque effectue cette opération en stockant les demandes d’écriture de 512 octets dans sa mémoire cache jusqu’à ce que le nombre de blocs contigus de 512 octets reçus soit suffisant pour former un secteur 4K. Étant donné que les applications informatiques actuelles traitent des segments de données d’une taille généralement supérieure à 4K, les runts se révèlent extrêmement rares. Il n’en va pas de même pour l’état « Alignment 1 ».

La création de partitions de disque dur non alignées, comme illustré dans la Figure 9, donne lieu à des cycles de lecture-modification-écriture susceptibles de ralentir les performances du disque dur. Une telle situation doit précisément être évitée dans la mise en œuvre des disques durs au format avancé et sera examinée dans la suite de ce document.

Écritures restreintes

Dans les applications informatiques actuelles, les données telles que les documents, les images et les flux vidéo, présentent une taille bien supérieure à 512 octets. Par conséquent, les disques durs peuvent stocker ces demandes d’écriture en mémoire cache jusqu’à ce que le nombre de blocs séquentiels de 512 octets reçus soit suffisant pour constituer un secteur 4K. Tant que ses partitions sont alignées, le disque dur peut aisément mapper des secteurs de 512 octets en secteurs 4K sans compromettre les performances. Toutefois, certains processus de bas niveau peuvent contraindre un disque dur à gérer des situations de runts qui ne découlent pas de partitions non alignées. Ces situations plutôt rares surviennent lorsque l’hôte effectue des demandes d’écriture discrètes d’une taille inférieure à 4K. Ces demandes constituent principalement des activités de système d’exploitation relatives à la gestion des systèmes de fichiers, des opérations de journalisation ou d’autres activités similaires de bas niveau. Généralement, ces types d’opérations se révèlent trop rares pour avoir une incidence notable sur les performances globales. Toutefois, il est recommandé aux concepteurs de systèmes d’envisager de modifier ces processus en conséquence afin d’optimiser les performances lorsque le passage au format 4K deviendra réalité.

Préparation et gestion du passage à la norme 4K

À présent que nous avons étudié les avantages de la migration vers les secteurs 4K, ainsi que l’impact potentiel de cette dernière sur les performances, il convient d’examiner la meilleure façon dont le marché pourra gérer cette transition. Pour mieux illustrer notre propos, nous étudierons cet aspect dans le contexte des deux systèmes d’exploitation les plus couramment déployés sur les équipements informatiques actuels : Windows et Linux.

Gestion des secteurs 4K dans l’environnement Windows

Le seul aspect crucial de la gestion du passage aux secteurs 4K est lié aux problèmes d’alignement précédemment décrits. Les disques au format avancé fonctionnent correctement à l’état « Alignment 0 », dans lequel les positions de départ physique et logique sont identiques. Les états d’alignement sont créés en même temps que la ou les partitions de disque dur. Les partitions sont créées par deux grandes catégories de logiciels :

  1. Différentes versions du système d’exploitation Windows
  2. Utilitaires de partitionnement de disque dur

Dans le cas des partitions créées à l’aide du système d’exploitation Windows, trois versions Windows méritent d’être étudiées : Windows XP, Windows Vista et Windows 7. La société Microsoft a été partie prenante dans la planification du passage aux secteurs élargis. Elle sort donc des applications compatibles avec les secteurs 4K depuis la version Windows Vista Service Pack 1. Les logiciels qui créent des partitions présentant l’état « Alignment 0 » (fonctionnant correctement avec le format avancé) sont identifiés comme prenant en charge la norme 4K. Le Tableau 2 décrit le comportement des versions actuelles du système d’exploitation Microsoft Windows.

Version du système d’exploitation Prise en charge de la norme 4K ? Résultats
Windows XP Non Création d’une partition principale avec l’état « Alignment 1 » (partition non alignée)
Windows Vista pré-Service Pack 1 Non Prise en charge des secteurs élargis, mais création incorrecte des partitions (partitions non alignées)
Windows Vista Service Pack 1 ou ultérieur Oui Création de partitions avec l’état « Alignment 0 » (partitions alignées)
Windows 7 Oui Création de partitions avec l’état « Alignment 0 » (partitions alignées)

À l’évidence, les nouveaux ordinateurs équipés des toutes dernières versions de Windows prendront parfaitement en charge l’utilisation des disques durs au format avancé. Toutefois, dans le cas des systèmes fonctionnant encore sous Windows XP ou Windows Vista pré-Service Pack 1, il existe des risques notables d’amoindrissement des performances liés aux partitions créées par le système d’exploitation.

Les partitions non alignées risquent non seulement d’être créées par d’anciennes versions du système d’exploitation Windows, mais sont également susceptibles d’être générées par un certain nombre d’utilitaires logiciels communément utilisés par les fabricants de systèmes, les fabricants d’ordinateurs d’origine (OEM), les revendeurs à valeur ajoutée et les responsables TI. De fait, les partitions sont plus fréquemment créées par ces types d’utilitaires que par le système d’exploitation proprement dit. Il existe donc un risque substantiel de création de partitions non alignées et de réduction des performances de disque dur pour les disques utilisant des secteurs 4K. Pour compliquer le tout, les disques durs qui équipent les systèmes informatiques actuels comportent généralement plusieurs partitions. Par conséquent, chaque partition du disque dur doit être créée avec un logiciel de partitionnement prenant en charge la norme 4K afin de garantir l’alignement adéquat et l’obtention des performances requises. La Figure 10 illustre les résultats potentiels de la création de plusieurs partitions de disque dur avec un logiciel non compatible 4K.

ti transitionadvanced fig10

Figure 10. Partitions multiples présentant différents états d’alignement

Gestion des cas de non-alignement

Il existe trois méthodes permettant d’éviter et/ou de gérer un cas de non-alignement susceptible de compromettre les performances des disques durs.

  1. Utilisation d’une nouvelle version du système d’exploitation Windows ou obtention d’une version de l’utilitaire de partitionnement prenant en charge la norme 4K auprès du fournisseur de l’utilitaire.
  2. Utilisation d’un utilitaire de disque dur pour réaligner les partitions de disque.
  3. Gestion des performances par l’intermédiaire du fournisseur du disque dur, quel que soit l’état d’alignement.

L’utilisation d’une version de Windows prenant en charge la norme 4K pour créer les partitions de disque dur constitue un moyen simple d’éviter les risques de partitions non alignées. Les fournisseurs d’utilitaires logiciels permettant de créer des partitions de disque dur doivent être en mesure d’indiquer si certaines versions de ces utilitaires prennent en charge la norme 4K. Le cas échéant, il est recommandé de migrer vers ces versions afin d’éviter tout problème ultérieur.

Certains constructeurs de disques durs gèrent cette situation en offrant des utilitaires qui examinent les partitions de disque dur existantes et les réalignent si nécessaire. Cette solution allonge le processus de fabrication ou de mise à niveau des systèmes en exigeant certaines étapes supplémentaires.

Par la suite, les constructeurs de disques durs développeront des méthodes plus élaborées pour gérer les cas de non-alignement sans compromettre les performances.

Lorsque le passage au format avancé commencera à prendre de l’ampleur, toutes ces méthodes joueront un rôle dans l’optimisation des avantages de cette évolution pour le marché du disque dur tout en évitant tout risque d’amoindrissement des performances.

Gestion des secteurs 4K dans l’environnement Linux

Les stratégies clés de gestion du passage aux secteurs 4K dans un environnement Windows s’appliquent également à Linux. La plupart des utilisateurs de systèmes Linux ont accès au code source, ce qui leur permet de personnaliser le système d’exploitation en fonction de leurs besoins spécifiques. Ils sont ainsi en mesure de mettre à jour leur système Linux de façon proactive afin d’assurer une gestion adéquate des disques durs au format avancé.

L’apport de modifications au système Linux peut contribuer dans une large mesure à éviter les tâches de création de partitions de disque correctement alignées sur les disques au format avancé et de minimisation des écritures restreintes au niveau système qui sont susceptibles de générer des runts indépendamment des problèmes d’alignement.

Le noyau Linux et les utilitaires Linux ont été modifiés pour la prise en charge des disques au format avancé. Ces modifications garantissent l’alignement adéquat de toutes les partitions des disques au format avancé sur les limites de secteur 4K. Les disques au format avancé sont pris en charge par la version de noyau 2.6.31 et par les versions ultérieures. Le partitionnement et le formatage des disques au format avancé sont gérés par les utilitaires Linux suivants :

Fdisk : GNU Fdisk est un utilitaire en ligne de commande qui partitionne les disques durs. Les disques au format avancé sont pris en charge à partir de la version 1.2.3 de cet utilitaire.

Parted : GNU Parted est un utilitaire graphique de partitionnement des disques durs. Les disques au format avancé sont pris en charge à partir de la version 2.1 de cet utilitaire.

Conclusion

L’abandon progressif par le marché des anciens secteurs de 512 octets constitue une certitude. Les constructeurs de disques durs ont tous convenu d’adopter le format avancé d’ici janvier 2011 pour tout nouveau modèle de disque conçu pour les segments du marché des PC portables et de bureau.

Cette évolution permettra aux concepteurs de disques durs de poursuivre l’amélioration des densités surfaciques et l’optimisation de la fiabilité de la correction d’erreurs. Cette transition se révélera avantageuse pour les clients à mesure que les constructeurs continueront d’offrir les augmentations de capacité, les réductions du coût par gigaoctet et le niveau de fiabilité soutenu qu’exige la technologie des disques durs.

La condition clé d’une transition en douceur vers la nouvelle norme réside dans une communauté de stockage bien informée afin d’éviter tout risque de dégradation des performances. L’aspect le plus crucial d’un passage aisé et réussi aux secteurs 4K utilisés dans le format avancé consiste à promouvoir l’utilisation d’outils de partitionnement de disque dur compatibles 4K. Tout fabricant de systèmes, OEM, intégrateur, professionnel des TI ou utilisateur final procédant à la création ou à la configuration d’un ordinateur doit suivre les consignes suivantes :

  • Utilisation de Windows Vista (Service Pack 1 ou ultérieur) ou de Windows 7 pour créer des partitions de disque dur.
  • En cas d’utilisation de logiciels ou d’utilitaires tiers pour la création de partitions de disque dur, vérification auprès du fournisseur que ces versions ont été mises à jour et validées pour la prise en charge de la norme 4K.
  • Incitation des clients qui recréent fréquemment des images de systèmes à s’assurer que leurs utilitaires de création d’images sont compatibles 4K.
  • En cas d’utilisation de Linux, vérification auprès du fournisseur Linux ou de la société d’ingénierie que le système intègre les modifications requises pour la prise en charge de la norme 4K.
  • Obtention auprès du fournisseur de disque dur de toute autre recommandation ou assistance en matière d’utilisation des disques au format avancé sur les systèmes.

En travaillant de concert avec nos confrères et clients, nous pourrons garantir la simplicité et l’efficacité du passage aux secteurs 4K du format avancé. Les possibles avantages à long terme de cette évolution deviendront ainsi exploitables par la totalité du marché du stockage.

Notes de bas de page

1Le format sectorisé fait strictement référence aux secteurs de données et ne prend pas en compte les temps de traitement associés aux données de la section « servo » et aux autres causes d’inefficacité liées à la disposition des secteurs.

2Certaines mises en œuvre d’un secteur 4K ne doublent pas exactement le nombre d’octets ECC lors de la conversion des secteurs de 512 octets en secteurs 4K.

(Article extrait du site web seagate.com)