Journal A propos de fragmentation

Posté par  .
Étiquettes : aucune
0
24
fév.
2004
Quelqu'un sait-il pourquoi les partitions linux ne fragmentent pas (ou très peu) comparé aux partitions fat. Parce que je ne comprends pas trop comment cela fonctionne. Si quelqu'un possède donc des liens intéressents (pas la doc complet de ext2 de 500&nbp;:pages) ou peut faire une explication sommaire, je lui serait reconnaissant.
Merci.
  • # Re: A propos de fragmentation

    Posté par  . Évalué à 5.

  • # Re: A propos de fragmentation

    Posté par  . Évalué à 7.

    C'est tout simple.

    Avec une partition FAT, les fichiers sont « tassés » au début de la partition et découpé en morceaux pour remplir les trous. Resultat, même s'il te reste 100000Go, tu te retrouves très vite avec des fichiers fragmentés et la fragmentation a tendance à augmenter. Avec un système de fichiers moins violent, un fichier est d'abord placé la ou il y a de la place. Donc de base, le système de fichier à tendance à moins fragmenter. De plus, le disque se retrouve découpé en tronçons logiques (soit vide, soit appartenant un un unique fichier) plus grand qu'avec un système FAT. Résultat, des gens ont montré que si un disque n'est pas utilisé à plus de 60% de sa capacité (je ne suis plus sur du chiffre), le système ne se fragmente presque pas. C'est très moral.

    voilà
  • # Re: A propos de fragmentation

    Posté par  (site web personnel) . Évalué à 1.

    est ce valable pour tous les types de systeme de fichier ?
    ( ext3, reiserfs, xfs, jfs, ... )

    parcequ il me semble ( mais je me trompe peut etre ) que le systeme de fichier
    d'apple fragmente lui. ( car ils fournissent un outils pour defragmenter )
    • [^] # Re: A propos de fragmentation

      Posté par  (site web personnel) . Évalué à 2.

      Jamais vu d'outil pour défragmenter leur horrible HFS+... Sinon des payants et très chers. C'est où ?
      D'ailleurs, tout le Mac est très en retard pour la gestion des disques durs. Toujours pas de partitionneur non destructif, notion de partition connue seulement des experts, pas de défragmenteur intégré (ou alors pas trouvé).
      Bon, faut dire que si les Maceux s'y connaissaient en informatique et avaient besoin de ces choses-là, ça se saurait.
      • [^] # Re: A propos de fragmentation

        Posté par  . Évalué à 1.

        D'ailleurs à ce propos, si quelqu'un a des explications sur le logique de partitionnement des macintosh (sous OSX du moins). Il y a une foultitude de petites partitions qui font très crade dans fdisk et donc la justification m'échappe. (une partition "drivers"??!)
        M'enfin, au moins on n'est pas limité à 4 partitions principales et aux bidouilles infâmes de lecteurs logiques
        • [^] # Re: A propos de fragmentation

          Posté par  (site web personnel) . Évalué à 1.

          Comme leur nom l'indique, c'est des partitions réservées au système, pour les pilotes, des machins comme ça.
          C'est ça que j'aime, aussi, sur le Mac : l'abondance de la documentation avancée. Et y en a qui disent qu'Apple fait des efforts d'ouverture, depuis le virage Unix. Je me demande bien dans quel désert d'ignorance erraient les Maceux, avant, alors.

          Tiens, mon iBook ne recharge plus la batterie. Pourtant, elle est neuve, j'ai essayé avec d'autres batteries, et d'autres chargeurs secteurs : même résultat. Toujours après l'échéance de la garantie, en plus, ces défaillances. Pfff...
  • # Re: A propos de fragmentation

    Posté par  . Évalué à 1.

    Merci beaucoup pour les réponses, c'était très instructif.

    Une autre question me vient alors : si l'on utilise beaucoup de gros fichiers (de l'ordre du Go), risque-t-il d'y avoir un ralentissement dû à la recherche d'un emplacement assez grand sur le disque quand il ne reste plus beaucoup de place (je me sers de mon ordi comme un magnétoscope numérique et je trouve qu'il rame vraiment beaucoup plus quand le disque (120Go) atteind dans les 90% (il arrive que l'enregistrement sacade).
    • [^] # Re: A propos de fragmentation

      Posté par  . Évalué à 1.

      Si tu mets peux de fichier sur ton disque (moins de 1000 par exemple) tu peux diminuer le nombre d'inodes (man mke2fs) ça te permettra de gagner de la place et du temps :)

      Caeies
    • [^] # Re: A propos de fragmentation

      Posté par  . Évalué à 1.

      Juste comme ca, si tu utilises essentielment des gros fichiers, as-tu essayé XFS ? Il parait que c'est bien pour les enormes fichiers, et il me semble qu'a l'origine c'etait fait pour stocker des fichier destiné a etre streamer (ce qui est bien pour un magneto numerique)
      Bon je dit ca mais ptet que t'es deja en XFS, hein.
    • [^] # Re: A propos de fragmentation

      Posté par  (Mastodon) . Évalué à 1.

      La recherche d'un emplacement de bonne taille est toujours très rapide car le noyau garde en mémoire une table triée par taille des «trous» du système de fichier.

      Par contre, là où tu va ralentir sur une partition remplie à 90% (et d'autant plus si tu enregistre de grosses quantité de données rapidement), c'est pour le déplacement des têtes de ton disque vers les emplacements vides a chaque début de fragment.
    • [^] # Re: A propos de fragmentation

      Posté par  . Évalué à 5.

      La "recherche" d'un emplacement assez grand est plutôt rapide, car en fait, elle se fait en mémoire. Explications :
      * Le système de fichiers est divisé en blocs logiques, genre 1 bloc = 4 Ko. Ce qui donne, par exemple, pour une partition de 40 Go => 10 millions de blocs.
      * Il y a un tableau indiquant quels blocs sont libres (1), et lesquels non (0). Ce tableau est stocké sur le disque (lu au démarrage du système, actualisé après synchronisation DD/cache) et en mémoire. 1 bit/bloc => dans notre example un tableau d'environ 1,2 Mo.
      * Les algorithmes les plus simples font des recherches d'espace libre sur un tel tableau.
      * D'autres algorithmes plus évolués stockent les emplacements d'espaces libres dans des arbres binaires, etc...
      * Bien évidemment, plus le disque est rempli, plus les algorithmes ont du mal à fonctionner. Cependant, le coût d'une recherche sera toujours bien inférieur aux temps d'accès au disque (10 ms = 10 millions de cycles processeur à 1 GHz = une éternité en temps de calcul)

      * Quand le disque est bien rempli, les fichiers vont de toutes facons être fragmentés.
      * Petite consolation : plus tu utilises ton disque (écriture, ré-écriture de beaucoup de fichiers), plus les algorithmes auront de chance de trouver des espaces non-fragmentés pour les fichiers ré-écrits.
      * Enfin, il n'existe pas d'algorithme optimal : on peut toujours trouver un type d'utilisation du disque qui sera mal géré par ton algorithme.

      Conseils :
      * Jouer sur la taille des blocs : si la majorité des fichiers sur une partition est de taille inférieure à 1 Ko, prendre 512 octets comme taille pour les blocs.
      * Inversément si les fichiers font majoritairement plus de 1 Mo (une partition contenant vidéo et musique), prendre des gros blocs, genre 512 Ko.
      * Faire plusieurs partitions, destinées à plusieurs usages, avec chacune le système de fichiers adapté (ext2, ext3, Reiser, etc...).
    • [^] # Re: A propos de fragmentation

      Posté par  . Évalué à 1.

      Merci pour toute ses réponses. Je pense juste que je vais essayer de toujours laisser une demi-dizaine de giga disponible pour de meilleurs performences (d'autant que mon proc n'est qu'un 800Mhz et c'est limite). Pour le XFS, je verais quand je me reprendrais un disque suplémentaire, parce que là, je peux pas y toucher (je vais pas graver tout les films).

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.