22.3. Standards

Cette section décrit les standards d'E/S utilisés par les périphériques ATA et SCSI.

ATA

Les périphériques ATA doivent rapporter les informations correspondantes via la commande IDENTIFY DEVICE. Les périphériques ATA rapportent uniquement les paramètres d'E/S pour physical_block_size, logical_block_size, et alignment_offset. Les indicateurs d'E/S supplémentaires se trouvent hors du champ de l'ensemble des commandes ATA.

SCSI

Les paramètres d'E/S pris en charge sur Red Hat Enterprise Linux 7 ŗequièrent au moins la version 3 du protocole SPC-3 (« SCSI Primary Commands »). Le noyau enverra uniquement une consultation étendue (qui obtient accès à la page BLOCK LIMITS VPD) et une commande READ CAPACITY(16) sur les périphériques se réclamant être conformes à SPC-3.
La commande READ CAPACITY(16) fournit le décalage des tailles et alignements des blocs :
  • LOGICAL BLOCK LENGTH IN BYTES (« Longueur de bloc logique en octets ») est utilisé pour dériver /sys/block/disque/queue/physical_block_size
  • LOGICAL BLOCKS PER PHYSICAL BLOCK EXPONENT (« Blocs logiques par exposant de bloc physique ») est utilisé pour dériver /sys/block/disque/queue/logical_block_size
  • LOWEST ALIGNED LOGICAL BLOCK ADDRESS (« Adresse du bloc logique aligné au plus bas ») est utilisée pour dériver :
    • /sys/block/disk/alignment_offset
    • /sys/block/disk/partition/alignment_offset
La page BLOCK LIMITS VPD (0xb0) fournit les indicateurs d'E/S. OPTIMAL TRANSFER LENGTH GRANULARITY et OPTIMAL TRANSFER LENGTH sont également utilisés pour dériver :
  • /sys/block/disk/queue/minimum_io_size
  • /sys/block/disk/queue/optimal_io_size
Le paquet sg3_utils fournit l'utilitaire sg_inq, qui peut être utilisé pour accéder à la page BLOCK LIMITS VPD. Pour ce faire, veuillez exécuter :
# sg_inq -p 0xb0 disk