Le système de gestion de la mémoire de Windows 98 représentait une avancée significative par rapport à ses prédécesseurs (comme Windows 95), mais restait nettement plus simple et moins robuste que la gestion de la mémoire trouvée dans les systèmes d'exploitation ultérieurs basés sur Windows NT (comme Windows 2000 et au-delà). Il lui manquait de nombreuses fonctionnalités avancées telles que la pagination de la mémoire virtuelle, cruciales pour les systèmes modernes. Voici une répartition :
Caractéristiques clés :
* Mode réel et mode protégé : Windows 98 s'appuyait encore fortement sur une combinaison de mode réel (pour la compatibilité avec les anciens programmes DOS) et de mode protégé (pour son propre fonctionnement et les applications 32 bits). Cette approche hybride a rendu la gestion de la mémoire plus complexe et moins efficace.
* Mémoire conventionnelle (640 Ko) : Il s'agissait de la quantité limitée de mémoire directement adressable par les programmes DOS. Windows 98 a utilisé cet espace mais a également tenté d'étendre ses capacités.
* Zone de mémoire supérieure (UMA) : La zone comprise entre 640 Ko et 1 Mo. Windows 98 l'a utilisé pour charger les pilotes de périphériques et certains composants du système, en utilisant des techniques telles que le mappage de mémoire pour augmenter l'espace disponible pour les applications. Il s’agissait d’une stratégie cruciale pour s’étendre au-delà de la limite de 640 Ko.
* Mémoire étendue (au-dessus de 1 Mo) : Mémoire au-delà de 1 Mo. Windows 98 l'utilisait largement, mais l'accès nécessitait de basculer entre les modes réel et protégé et une manipulation minutieuse. Il utilisait des techniques telles que High Memory Area (HMA) pour étendre la mémoire conventionnelle.
* Mémoire étendue (EMS) : Une méthode d'émulation de mémoire supplémentaire utilisant la zone de mémoire supérieure, principalement pertinente pour la compatibilité avec les anciennes applications.
* Mémoire virtuelle (limitée) : Windows 98 disposait d'une forme rudimentaire de mémoire virtuelle, utilisant un fichier d'échange sur le disque dur. Cependant, il n'était pas aussi sophistiqué que sur les systèmes ultérieurs et ses performances pouvaient constituer un goulot d'étranglement majeur, en particulier sur les disques durs les plus lents. C'était crucial pour exécuter des applications plus volumineuses que la RAM disponible, mais les opérations sur les fichiers d'échange pouvaient être lentes.
* Aucune protection de la mémoire : Contrairement à la protection de la mémoire du noyau NT, Windows 98 offrait une protection de la mémoire limitée. Une application mal écrite ou malveillante pourrait faire planter l’ensemble du système plus facilement.
* Fragmentation de la mémoire : Au fur et à mesure du chargement et du déchargement des applications, la mémoire se fragmentait. Cela signifiait que même si suffisamment de mémoire totale était disponible, elle pourrait ne pas être suffisamment contiguë pour charger un programme volumineux, entraînant des erreurs de mémoire insuffisante même lorsqu'il y avait beaucoup de RAM libre.
En résumé : La gestion de la mémoire de Windows 98 était un compromis. Il tentait de combler le fossé entre les limitations du DOS et les exigences des applications 32 bits. Son approche hybride, sa mémoire virtuelle limitée et son manque de protection robuste de la mémoire le rendaient sujet à l'instabilité et moins efficace que les systèmes d'exploitation ultérieurs. Il était souvent nécessaire d'employer des techniques telles que la défragmentation et la gestion du fichier d'échange pour optimiser les performances.
|