Quelques Folies…
Depuis quelques jours, j’ai une idée en tête, je ne peux plus la chasser de mon esprit, elle semble toujours me pourchasser, j’en ai parlé avec quelques amis, mais, je voudrai bien la publier sur mon blog ^^ . Histoire d’avoir d’autres avis (quoique, vous qui visitez mon blog, vous ne semblez pas être intéressées pour poster des commentaires…).
Une Idée ?! Qu’est ce que c’est ?
Aujourd’hui, j’étais en train de faire des copies de fichiers d’une partition à une autre dans mon disque dur, histoire de ranger un peu :-° …
Bref, je mets le déplacement et j’attends comme un bon petit gars la copie. Je me suis dit alors, si explorer fait un crash au moment d’une copie, c’est que la procédure de copie s’arrête, aussi, le fichier copié (ou déplacé) peut risquer de n’endommager, aussi, je me suis dit que les performances de l’ordinateur deviennent très réduites une fois un processus de copie activé.
Pourquoi les performances deviennent-t-elles réduites ?
C’est simple, au moment de la copie, l’ordinateur va copier le fichier de la partition A vers la partition B, mais ce n’est pas aussi simple que cela ! Le système d’exploitation va faire en sorte comme si il veut lire le fichier, il passe une requête de lecture, les données sortent du disque dur, font un petit tour dans la carte mère et reviennent en requête d’écriture dans l’emplacement voulu.
Hors, ce trajet va coûter au système une perte de performances énorme (lecture, contrôle, écriture). Pour en avoir le cœur net, j’ai essayé de copier un fichier de 256Mo de ma partition A vers une partition B de même système de fichiers ;-).
J’ai eu cette graphe au moment du processus de copie (Utilisation du processeur selon Task Manager) :

Note : Je cite que j’ai un Intel P4 Northwood 2.66Ghz ;-) donc, vous pouvez avoir des résultats moins impressionnants ;-).
Après cette illustration, je crois que je vous avez bien compris que les manipulations sur le disque dur sont très lentes.
Si je prends l’exemple de mon disque dur, d’après HD Tune voici les spécifications de mon disque dur après le benchmark :
Vitesse de transfert Maximum : 52.0MB/s
Temps d’accès : 13.4 ms
Pourcentage d’utilisation processeur : 26.4%
Aussi, d’après Everest 2.20, la vitesse de transfert de mon disque dur en interne est de 699MB/s !
Où veux-tu en venir ?
Imaginez un peu si le grand “trajet” dont j’ai parlé plus haut disparait, si le système d’exploitation ne fais rien d’autre que d’envoyer une commande de copie de la partition A vers la partition B.
Le Contrôleur disponible et intégré dans le disque dur se charge de la copie/déplacement, le processeur n’a rien à contrôler, on gagne une vitesse de transfert très grande, plus de gaspillage de ressources inutilement et plus d’économie d’énergie :-) !
Aussi, quand le système doit faire une écriture, il ne vas pas contrôler comment ce dernier va être copié sur le disque, le circuit intégré dans le disque dur le fait tout seul.
Conclusion
Qu’en pensez vous ? Les informaticiens cherchent toujours à soulager le processeur des calculs qui ne lui sont pas (normalement attribuées, comme le calcul graphique ou physique…) pourquoi ne pas le soulager de cette tâche ? ce serai génial n’est-ce pas ?
Je voudrais des avis, des points de vue !
Commentez !
++


Vinc14 a dit,
décembre 22, 2008 à 10:12
Je m’en étais jamais rendu compte mais c’est vrai qu’une simple copie de fichiers bouffe de la ressource processeur… Mais je me demande si une copie de fichiers sans passer par le système d’exploitation est possible. Le disque dur à lui tout seul saurait-il aller chercher les informations sur le fichier source : nom du fichier, propriétés suivant le FS (chmod avec ext3, par exemple), emplacement physique du fichier… Et recopier correctement ces mêmes informations sur une autre partition ? Il faut prendre en compte le fait que le disque dur devrait calculer où se trouve la place disponible pour copier le fichier, parfois le fragmenter pour pouvoir le placer correctement… Il faudrait un processeur dédié au disque dur pour alléger le travail du processeur principal, et encore, ça passerait quand même par l’OS je suppose…
Voilà mon point de vue…
tarkant29 a dit,
décembre 22, 2008 à 11:04
J’y ai pensé, en fait, dans le circuit du contrôleur du disque dur, ils devraient y mettre quelques composants comme un processeur adapté à faire ce calcul, il aurai aussi un mini OS (ce n’est pas peut être obligatoire) qui va gérer les fichiers il devra travailler en fonction des commandes qui lui sont envoyées par l’OS principal (Windows, Linux…).
Aussi, pour le système de fichiers, c’est le mini OS disponible sur le disque dur qui devra supporter ces systèmes de fichiers, pour résumer, notre disque dur deviendra une unité spécialisée qui enverra les données vers l’OS quand on le lui demande (avec des commendes) et fera des opérations quand on le lui demande, rien n’est géré par le système.
ça me rappelle fortement le protocole de transfert de données http://FTP...