Je suppose que ce n'est pas Total Commander qui met en cache la structure du répertoire, ou est-ce le cas ?
Probablement pas. Si vous avez un grand nombre de fichiers, vous pouvez constater le même effet si vous ouvrez une invite de commande et tapez quelque chose comme dir c:\abc.def /s
Il est peu probable que vous ayez des fichiers portant ce nom, mais il prend beaucoup plus de temps à terminer la première fois qu'il n'en prendrait si vous l'exécutiez une deuxième fois immédiatement après.
Il me semble que c'est une fonctionnalité du système d'exploitation, ou un cache du disque dur. Où et comment exactement est-il mis en cache alors ? (c'est-à-dire par quel mécanisme de quel composant, dans quelle structure ?)
Windows/NTFS mettrait les éléments en cache et il y aurait également un cache dans votre contrôleur de disque dur.
Comment le système sait-il que le cache est à jour ou non ?
En effet, la seule façon d'écrire sur le disque dur est d'utiliser des routines qui connaissent et donc mettent à jour ou invalident le cache. Pour Windows, ces routines sont probablement le pilote de périphérique NTFS, alors que pour le disque dur, c'est le contrôleur de disque.
S'il peut être entièrement mis en cache, pourquoi n'est-il pas mis en cache par défaut ?
Parce que le cache est mieux utilisé pour d'autres choses. Le mettre en cache par défaut signifierait
-
Chaque fois que l'ordinateur démarre, il doit lire et stocker des informations sur chaque fichier de votre disque dur, qu'il en ait besoin ou non. Cela peut ajouter quelques secondes à votre temps de démarrage. Il est également fréquent que les gens aient des millions de fichiers, ce qui signifie que le temps peut être considérablement plus élevé.
-
Cette mémoire n'est pas disponible pour mettre en cache quoi que ce soit d'autre, en particulier les fichiers sur lesquels vous travaillez réellement.
-
Que se passe-t-il si votre profil/documents sont stockés sur un serveur. Voulez-vous que le système attende pendant qu'il tire les informations sur tous vos fichiers à travers le réseau ?
Rappelez-vous aussi que ce n'est pas parce que tout peut être mis en cache, ne signifie pas qu'il devrait être mis en cache. Il faut parfois plus de temps pour accéder aux informations contenues dans un cache extrêmement grand que dans un cache plus petit, ce qui signifie qu'une mise en cache trop importante peut en fait vous ralentir. (J'entends par là que l'accès est plus lent qu'avec un cache plus petit, mais qu'il reste plus rapide qu'en l'absence de cache).