Processus d'amorçage de Windows NT et contraintes du disque dur

Traductions disponibles Traductions disponibles
Numéro d'article: 114841 - Voir les produits auxquels s'applique cet article
Ancien nº de publication de cet article : F114841
Agrandir tout | Réduire tout

Sommaire

Résumé

Cet article détaille les contraintes liées à la capacité du disque dur sous Windows NT et Windows NT Advanced Server. Pour comprendre ces contraintes, il est nécessaire de comprendre les structures de données qui définissent les partitions du disque mais aussi les interactions entre Windows NT et l'interface BIOS du système utilisé au cours du processus d'amorçage du matériel et du système d'exploitation.

Plus d'informations

La table de partition

La structure de données qui décrit les partitions du disque dur est connue sous le nom de table de partition. Elle comporte un maximum de quatre entrées de 16 bits. Chaque entrée dispose de 10 champs qui décrivent les attributs suivants d'une partition :
   CHAMPS                         TAILLE
   ---------------------------------------
   Indicateur d'amorçage          1 octet
   Face de début                  1 octet
   Cylindre de début              10 bits
   Secteur de début               6 bits
   Indicateur système             1 octet
   Face de fin                    1 octet
   Cylindre de fin                10 bits
   Secteur de fin                 6 bits
   Secteurs relatifs              4 octets
   Nombre de secteurs             4 octets

Indicateur système

L'indicateur système est utilisé pour spécifier le type de système de fichiers contenu dans la partition. Certaines des valeurs courantes sont :
   VALEUR   SYSTÈME DE FICHIERS
   ------------------------------------------------------------------------------------
   0x0B    Partitions Fat32 primaires jusqu'à 2047 Go
   0x0C    Comme 0x0B, utilise les extensions Int 0x13 de l'adressage logique de blocs
   0x0E    Comme 0x06, utilise les extensions Int 0x13 de l'adressage logique de blocs
   0x0F    Comme 0x05, utilise les extensions Int 0x13 de l'adressage logique de blocs
   0x05    Partition étendue
   0x06    Format FAT (File Allocation Table) BIGDOS.
   0x07    Système de fichiers installables (IFS), par exemple : HPFS et NTFS
Lorsqu'une partition fait partie d'un ensemble avec tolérance de panne(FT), Windows NT définit le bit élevé de l'indicateur système afin de la distinguer d'une partition sans tolérance de panne. Par exemple, la valeur de l'indicateur système d'une partition FAT avec tolérance de panne est 0x86 alors que celle d'une partition NTFS avec tolérance de panne est 0x87.

Lorsqu'un membre d'un ensemble à tolérance de panne est désactivé, Windows NT définit les deux bits les plus élevés. Par exemple, la valeur de l'indicateur système d'une partition FAT désactivée est 0xC6 alors que celle d'une partition NTFS FT désactivée est 0xC7.

Indicateur d'amorçage

L'indicateur d'amorçage indique la partition active ou pouvant être amorcée. Seule une partition peut être active sur un disque. La valeur de l'indicateur d'amorçage pour la partition active est définie sur 0x80. D'autres partitions sur le disque sont définies sur 0x00. Le secteur de démarrage (décrit en détail par la suite) recherche cet indicateur pour situer le secteur de démarrage actif.

Face de début et de fin, Cylindre et Secteur

Les champs Face de début et de fin, Cylindre et Secteur affectent la manière dont Windows NT interagit avec le disque.

Le nombre maximal de faces (tête de lecture/tête d'écriture) pouvant être représentées par 1 octet est égal à 256. Le nombre maximal de cylindres pouvant être représentés par 10 bits est égal à 1024. Le nombre maximal de secteurs qui peuvent être représentés par 6 bits est de 63 parce que les secteurs commencent le décompte à partir de 1 (alors que le décompte des cylindres et des faces commence à 0).

La valeur Cylindre, représentée par 10 bits, est trop grande pour être contenue dans un seul octet. Pour stocker 10 bits, deux bits sont extraits de l'octet dans lequel est stockée la valeur de secteur 6 bits.

Dans le cas d'une taille de secteur standard de 512 octets, les 24 bits utilisés pour enregistrer les adresses de secteur de début et de fin équivalent à une taille de partition maximale de 7,8 Go (8,455,716,864 octets) pouvant être décrite avec ces champs. Cela est particulièrement important parce que les mêmes capacités de champ sont utilisées par l'interface BIOS INT 13, laquelle définit le mode d'interaction entre le système BIOS et le disque dur.

Secteurs relatifs

Les secteurs relatifs représentent l'écart entre le début de la table de partition et le début de la partition, en comptant par secteurs.

Nombre de secteurs

Le nombre de secteurs représente le nombre total de secteurs dans la partition.

REMARQUE : Les champs Secteurs relatifs et Nombre de secteurs ont chacun une capacité de 32 bits. Dans la plupart des cas, ils contiennent les mêmes informations que les valeurs de Face de début et de fin, Cylindre et Secteur représentées par un total de 24 bits pour le début et 24 bits pour la fin.

Processus d'amorçage de Windows NT

Sur les ordinateurs Intel, le système BIOS contrôle le processus d'amorçage du système d'exploitation initial. Après le démarrage initial sur autotest (POST) au cours duquel les composants matériels sont initialisés, le système BIOS identifie le périphérique d'amorçage. En général, il s'agit d'une disquette ou d'un disque dur. Dans le cas du disque dur, le système BIOS lit le premier secteur physique sur le disque, appelé secteur d'amorçage principal, et charge une image de ce dernier dans la mémoire. Le système BIOS transmet ensuite l'exécution à cette image du secteur d'amorçage principal.

L'enregistrement d'amorçage principal contient la table de partition et une petite quantité de code exécutable. Le code exécutable examine la table de partition et identifie la partition active (ou amorçable). L'enregistrement d'amorçage principal cherche alors le point de démarrage de la partition active sur le disque et charge une image de son premier secteur, appelé secteur d'amorçage, dans la mémoire. L'enregistrement d'amorçage principal transfère alors l'exécution à cette image du secteur d'amorçage.

Alors que l'enregistrement d'amorçage principal fonctionne généralement indépendamment du système d'exploitation, le secteur d'amorçage de la partition active est fonction du système d'exploitation et du système de fichiers. Dans le cas de Windows NT et de Windows NT Advanced Server, le secteur d'amorçage est chargé de rechercher le fichier exécutable, NTLDR, lequel poursuit le processus d'amorçage. À ce stade de l'amorçage du système, les seuls services du disque accessibles au code du secteur d'amorçage sont fournis par l'interface BIOS INT 13. Le code du secteur d'amorçage doit pouvoir trouver les structures de données du fichier NTLDR et celles du système de fichiers, telles que le dossier de base et la table d'allocation des fichiers (FAT) dans le cas d'un volume MS-DOS FAT, ou encore la table principale de fichiers dans le cas d'un volume NTFS. Celles-ci doivent figurer dans la zone du disque adressable par la structure 24 bits des face, cylindre et secteur utilisée par l'interface BIOS INT 13 et la table de partition. Ceci limite la capacité de la partition du système à 7,8 gigaoctets, quel que soit le système de fichiers utilisé.

REMARQUE : D'autres contraintes peuvent être appliquées en fonction du matériel et du système de fichiers de l'ordinateur. Certaines de ces contraintes sont mentionnées ci-dessous.

Afin de contenir les partitions supérieures à 7,8 gigaoctets, Windows NT ignore les valeurs dans les champs d'adresse du secteur de démarrage et de fin de la table de partition au profit des champs Écart relatif et Nombre de secteurs. Huit bits supplémentaires sont ainsi disponibles pour représenter les secteurs. Ces bits supplémentaires permettent de décrire les partitions avec un maximum de 2^32 secteurs.

Dans le cas d'une capacité de secteur standard de 512 octets, les 32 bits utilisés pour représenter l'écart relatif et le nombre de secteurs correspondent à une partition d'une capacité maximale de 2 téraoctets ou (2,199,023,255,552 octets).

Lors du partitionnement d'un disque, Windows NT enregistre les valeurs exactes dans les champs de la table de partition chaque fois que cela s'avère possible. Lorsque le nombre total de secteurs d'une partition dépasse le nombre spécifié dans la notation des face, cylindre et secteur, Windows NT enregistre les valeurs maximales permises dans ces champs de la table de partition. Ceci empêche le système BIOS d'essayer de calculer les adresses de démarrage et de fin en se basant sur des données erronées.

Supposons par exemple qu'un pilote 3,5 Go SCSI soit rattaché à un contrôleur Adaptec 154x série SCSI. Si la fonctionnalité de traduction étendue de secteur est désactivée sur la carte, il peut communiquer les caractéristiques de disque suivantes au système BIOS :
   Cylindres : 1023, Faces : 64, Secteurs : 32
ce qui correspond à environ 1 gigaoctet. Lorsque la fonctionnalité de traduction étendue est activée, les caractéristiques du périphérique peuvent être les suivantes :
   Cylindres : 435, Faces : 255, Secteurs : 63
ce qui correspond à environ 3,5 Go.

Dès que Windows NT fonctionne, il utilise ses pilotes SCSI pour dialoguer directement avec le disque, sans utiliser l'interface BIOS INT 13. Les paramètres BIOS n'ont de ce fait que très peu d'importance au cours de l'exécution normale. Cependant, les différences sont essentielles si le disque doit être formaté avec une seule partition et utilisé comme unité d'amorçage.

Sans traduction étendue, Windows NT constate que le disque a une capacité supérieure à celle indiquée par les paramètres BIOS. Lorsque Windows NT partitionne le disque lors de l'installation initiale, les adresses du secteur de démarrage et de fin prennent leurs valeurs maximales. Ceci empêche le code d'enregistrement de secteur d'amorçage principal de fonctionner correctement, bien que l'unité soit inférieure à 7,8 gigaoctets.

Avec la traduction étendue, Windows NT peut spécifier des valeurs correctes pour les adresses de démarrage et de fin dans la table de partition, et de ce fait, la partition demeure amorçable.

Les messages d'erreur suivants sont susceptibles de s'afficher lorsque la traduction étendue n'est pas activée et que l'enregistrement de secteur principal d'amorçage n'est pas en mesure de rechercher le secteur d'amorçage de la partition active :
Erreur lors du chargement du système d'exploitation
- ou -
Système d'exploitation manquant

Systèmes de fichiers

FAT et HPFS ont des limites internes de 4 Go ; cela s'explique par le fait qu'ils utilisent des champs 32 bits pour stocker les tailles de fichiers. NTFS utilise des champs de 64 bits pour toutes les tailles, ce qui permet à ses structures de données de traiter des volumes pouvant aller jusqu'à 2^64 octets (16 exaoctets ou 18 073 709 551 616 octets).

Cette valeur est la limite théorique d'un système de fichiers NTFS. En pratique, les limites se rapportant à la taille maximale de partition décrite ci-dessus limitent la taille d'une partition NTFS à environ 2 téraoctets. Les champs 32 bits de la table de partition faisant référence au nombre de secteurs de la partition, les disques de secteurs plus grands se traduisent par des tailles de partition supérieures à la taille autorisée. La version actuelle de Windows NT prend en charge des secteurs pouvant aller jusqu'à 4 Ko. Dans le cas de secteurs de 4 Ko, Windows NT peut prendre en charge une partition de 16 téraoctets. Au fur et à mesure que de nouveaux matériels et logiciels deviendront disponibles, NTFS pourra traiter des volumes beaucoup plus importants.

Types de pilotes et de contrôleurs

Les disques IDE utilisent une structure de données différente de celle de la table de partition et de l'interface BIOS INT 13 pour représenter le nombre de cylindres, de têtes et de secteurs par piste. Selon les spécifications IDE, le nombre maximal de cylindres est de 65536, celui de têtes s'élève à 16 et celui de secteurs par piste est de 255. Ceci représente un maximum de 136,9 gigaoctets mais, l'interface BIOS/IDE étant contrainte d'utiliser le dénominateur commun le plus bas, il en résulte une limite d'environ 528 Mo par lecteur IDE sur un ordinateur Intel à bus ISA. Il existe de nouveaux lecteurs et pilotes qui utilisent une " table étendue de paramètres de lecteur " pour effectuer la traduction entre la disposition logique de secteur interne du lecteur IDE et celle adressable par l'interface BIOS INT 13. Ces pilotes et périphériques peuvent prendre en charge des disques d'une capacité plus importante. Le jeu de commandes SCSI II utilise sa propre forme d'adressage de secteurs qui gère actuellement des disques d'environ 7 gigaoctets.

Volumes à tolérance de panne (FT) Windows NT

En utilisant les ensembles de volumes et les agrégats par bandes, Windows NT et Windows NT Advanced Server permettent la construction de volumes logiques à partir de partitions de disques multiples. Cette technique permet à Windows d'outrepasser les limitations matérielles physiques imposées par les différents contrôleurs de disques et de construire un volume logique plus important que celui qu'un disque unique est capable de gérer.

REMARQUE : Un volume logique ressemble à une partition de disque physique et il doit être conforme à la disposition de table de partition décrite ci-dessus. Cela signifie qu'un système à tolérance de panne, tel qu'un ensemble de volumes, ne doit pas compter plus de 2^32 secteurs (ou 2 téraoctets, à raison de 512 octets par secteur).

Propriétés

Numéro d'article: 114841 - Dernière mise à jour: mercredi 14 janvier 2004 - Version: 3.0
Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • Microsoft Windows NT Advanced Server 3.1
  • Microsoft Windows NT Server 3.5
  • Microsoft Windows NT Server 3.51
  • Microsoft Windows NT Server 4.0 Standard Edition
  • Microsoft Windows NT Workstation 3.1
  • Microsoft Windows NT Workstation 3.5
  • Microsoft Windows NT Workstation 3.51
  • Microsoft Windows NT Workstation 4.0 Édition Développeur
  • Microsoft Windows NT Advanced Server 3.1
Mots-clés : 
kbother KB114841
L'INFORMATION CONTENUE DANS CE DOCUMENT EST FOURNIE PAR MICROSOFT SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE. L'UTILISATEUR ASSUME LE RISQUE DE L'UTILISATION DU CONTENU DE CE DOCUMENT. CE DOCUMENT NE PEUT ETRE REVENDU OU CEDE EN ECHANGE D'UN QUELCONQUE PROFIT.

Envoyer des commentaires

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com