Le préchargement est un «démon adaptatif en lecture anticipée» qui s'exécute en arrière-plan de votre système et observe les programmes que vous utilisez le plus souvent, en les mettant en cache afin d'accélérer le temps de chargement des applications. En utilisant le préchargement, vous pouvez exploiter au mieux votre RAM et améliorer les performances globales de votre système de bureau.
Ne vous attendez pas à un changement radical des performances tout de suite. De plus, si vous ouvrez / fermez les applications de manière répétitive, votre ordinateur stockera quand même ces fichiers dans le cache (il s'agit d'une charge «à chaud»), de sorte que vous ne verrez aucune différence de vitesse là-bas. Cependant, vous constaterez une amélioration de la vitesse si, par exemple, vous utilisez un programme par intermittence; ces programmes démarreront plus rapidement que sans préchargement.
La précharge peut améliorer considérablement le temps de démarrage des applications. Comme la plupart des machines modernes disposent de beaucoup de mémoire, Preload utilise cette mémoire vive à bon escient. 1
Cela étant dit, il semble que la précharge soit un outil très utile, et c’est peut-être le cas.
Je pense que la raison pour laquelle le système d'exploitation n'est pas préchargé, c'est parce que l'utilisateur doit savoir exactement ce qu'il fait, et avoir suffisamment d'expérience pour pouvoir l'utiliser, et le système doit disposer de suffisamment de RAM.
Sur un aspect plus technique, le préchargement consiste à déplacer les données du disque dur vers la RAM, ce qui oblige la plupart des disques durs à passer en mode veille s'ils ne sont pas utilisés, puis à revenir en arrière si nécessaire. Une rotation vers le haut / vers le bas du disque entraînerait le décompte du cycle de chargement / déchargement et une augmentation du nombre de temps de mise sous tension, ce qui raccourcirait la durée de vie du lecteur.
Nous avons conçu et mis en œuvre le préchargement, un schéma de prélecture adaptative basé sur Markov qui fonctionne sur les prévisions au niveau de l'application. De plus, le préchargement est implémenté dans l'espace utilisateur et ne modifie en rien l'environnement d'exécution de l'application. Il s’agit du premier travail expérimentant avec la pré-extraction de système de fichiers à ce niveau, à notre connaissance.
Nos résultats expérimentaux montrent des améliorations prometteuses sur le temps de démarrage des applications par rapport aux caches à froid, et un taux de réussite décent par rapport à un algorithme de prédiction na¨ıve.
Cependant, le fait d'être dans l'espace utilisateur crée des obstacles majeurs pour faire du préchargement une solution compétitive au problème du démarrage. En particulier, le fait de ne pas disposer d'informations complètes sur les demandes d'E / S des applications et de l'absence de canaux de communication puissants avec le sous-système de cache de pages dégrade considérablement l'efficacité du préchargement, en particulier dans des conditions de mémoire insuffisante.
Un autre problème inhérent à la conception de la précharge est la variance élevée et la confiance faible des prévisions due à la corrélation relativement vague des démarrages d'applications. Bien que nous ayons réussi à construire un modèle permettant de suivre les corrélations d’applications, le fait que les lancements d’applications soient très rares comparés à l’échelle de temps sur laquelle travaillent les ordinateurs est condamné. Cette mémoire peut être utilisée pour améliorer le comportement du cache à court terme.
Enfin, nous proposons un ensemble de recommandations aux développeurs système sur la manière d’améliorer le temps de démarrage, le temps de connexion et le temps de démarrage des applications sans recourir à un outil de préfet intégré au sous-système de cache du noyau. Bien entendu, un préfetcher basé sur le fichier dans le noyau peut s’améliorer par la suite. 2
1 Source: techthrob
2 Source: Preload - Un démon adaptatif de prélecture de Behdad Esfahbod - Thèse soumise conformément aux exigences du diplôme de maîtrise en sciences - Département de premier cycle en informatique - Université de Toronto. Copyright (c) 2006 de Behdad Esfahbod.