Des informations doivent êtres écrites sur le disque pour structurer l'espace disponnible, permettant au systèmes d'exploitation de gérer cet espace, de le
découper, d'en attribuer des morceaux dédiés au stockage des fichiers, et de retrouver facilement l'emplacement physique des données contenues dans un fichier.
L'écriture de ces informations est réalisée d'une part lors du partitionnement du disque, et d'autre part lors du formattage des partitions.
La première structure inscrite sur un disque est la Table de Partitions. Cette table contient davantage d'informations sur le disque, et son début est
toujours écrit sur le premier secteur physique du disque pour qu'il soit possible de la retrouver même si la taille totale du disque est inconnue. Les
informations contenues dans cette table permettent d'organiser un disque physique en plusieurs volumes de stockage indépendants les uns des autres. Ces volumes
de stockage, appelés Partitions, ont une taille et une position précise sur le disque, inscrites dans la table. Ce découpage du disque en volumes est
particulierement intéressant pour séparer les données des utilisateurs de l'endroit ou les applications et le système d'exploitation sont installés, permettant
par exemple d'utiliser plusieurs systèmes d'exploitation avec les mêmes données utilisateur, ou de réinstaller le système d'exploitation sans risquer de perdre
ses données. Un exemple de découpage de disque en partition peut être vu sur l'image ci dessous : (échelle arbitraire)
Le système d'exploitation possède plusieurs informations sur chaque partition d'un disque, fournies par la table de partition dans cet ordre :
Une table de partition contient ces informations pour 4 partitions, ce qui est suffisant dans la plupart des cas. Si un plus grand nombre de partitions doit être créé, il devient alors nécéssaire de créer une partition étendue. La différence entre une partition normale (aussi appelée partition principale) et une partition étendue est qu'une partition étendue ne contient pas de fichiers, mais d'autres partitions. Une partition étendue est organisée comme un disque dur, c'est à dire qu'elle possède une table de partition sur son premier secteur, contenant les informations relatives à ses sous partitions. Une partition étendue peut contenir une autre partition étendue, et on peut répéter cette organisation de type poupées gigognes ad nauseam jusqu'à pouvoir mettre les informations relatives à chaque partition dans une table. Certains systèmes d'exploitation limitent le nombre total de partitions sur un disque à 255, ou imposent des restrictions sur la forme de l'arbre de partition créé par l'imbrication de ces partitions étendues (arbre en peigne, profondeur de l'arbre maximum, ...).
La première table de partition est donc contenue dans le premier secteur du disque, mais celui-ci ne contient pas que cela. Ce secteur, appelé MBR (Master
Boot Record) contient aussi une signature de deux octets à la fin des 512 octets du MBR permettant d'indiquer que ce secteur contient du code de démarrage
(l'octet 510 contient la valeur 0x55, et le 511 contient la valeur 0xAA, formant la signature 0xAA55). Cette signature indique au BIOS que ce secteur contient
un programme de démarrage, et est donc nécéssaire pour qu'un disque soit démarrable. Le diagramme suivant montre l'organisation du MBR :
Celui ci est divisé en 6 parties: Le code de démarrage, la table de partition contenant les informations sur les 4 partitions principales et la signature 'démarrable'. Le code de démarrage contenu dans le MBR, appelé Master Boot Code (MBC), est un petit programme de 446 octets écrit en assembleur. Le modèle le plus courant analyse les informations des 4 partitions de la table de partition une par une. Si il en trouve une active, ce MBC charge le premier secteur de cette partition en mémoire, vérifie que le secteur chargé possède aussi la signature 0xAA55 de secteur executable, puis l'execute via un branchement inconditionnel (instruction JMP).
Ce programme est copié dans le MBR lors du partitionnement du disque sous certains OS (DOS, Windows 9x), et peut être réinstallé si il est absent grace à la commande FDISK /MBR sur les OS disposant de cette commmande, ou recopié manuellement. D'autres programmes peuvent être installés sur dans ces 446 octets, comme lilo ou grub par exemple, et certains ne tenant pas dans ces 446 octets occupent aussi quelques secteurs après le MBR. Ces secteurs réservés (appelés 'padding' sur le premier diagramme) ne font partie d'aucune partition, car ils se situent juste après le MBR et avant le début de la premiere partition du disque. La plupart du temps, les utilitaires de partitionnement ajoutent assez de secteurs réservés après le MBR pour faire coincider le début de la première partition avec une coordonnée de secteur physique CHS ayant la coordonnée secteur égale à zéro. Par exemple, sur les disques ayant 64 secteurs par tete, le premier secteur de la premiere partition sera le secteur n°64 {C=0, H=1, S=0} laissant 63 secteurs réservés entre le secteur 0 (MBR) et cette partition. Dans ce cas, on peut donc utiliser un programme de démarrage de 446 + 63*512 ~= 32ko, qui offre davantage de possibilités.
La présence d'un programme de démarrage dans le MBR est nécéssaire, puisque c'est ce programme que le BIOS executera pour booter sur un disque et qu'il sert d'intermédiaire entre le BIOS et le code de démarrage de la partition contenant le système d'exploitation. Le contenu du premier secteur de la partition dépend du type de partition, et du système d'exploitation installé.