Je crois que les besoins en mémoire viennent de deux phénomènes:
1) Au lieu de traiter des données volumineuses sur disque, elles sont traitées en mémoire. Des cas de données volumineuses y compris pour des utilisations triviales sont les graphiques, si tu veux un bel effet en 1200*800, il te faut un méga octet de RAM, si tu veux de la rapidité (film) il te faut 25 plans mémoire prêt à être affichés soit 25 méga octets, si tu as 2 ou 3 applications ouvertes en même temps il faut 100 mégas. Si tu veux de la transparence ça multiplie encore par 4 ou 8 la taille mémoire. C'est comme ça qu'on finit par avoir besoin de 512 méga de RAM pour jouer au solitaire
2) si tu programme en C, Pascal ou assembleur tu peux faire plein de chose en un Méga de RAM, mais au début des années 2000 et même avant les besoins en informatiques étaient tels qu'il n'y avait pas assez de programmeurs qualifiés sur le marché, aussi il a fallu inventer des langages plus simple à utiliser pour augmenter la productivité des équipes de programmeurs. Ces langages font automatiquement un certain nombres de tâches sans que le programmeur n'ai besoin de s'en préoccuper. Il s'agit de Java, Python, Ruby, C#.
Comme la machine virtuelle de ces langages devait traiter tous les cas de figures (et il y en a beaucoup plus pour un langage de haut niveau que pour un langage de bas niveau) la taille de VM est extrêmement grande, je crois que celle de Java atteint actuellement 400 Mégas!
Heureusement comme on a pas besoin de toutes les fonctions simultanément (contrairement aux graphiques) en fait une partie de la VM est stockée dans le fichier de SWAP.
PS: Le premier "vrai" ordinateur sur lequel j'ai travaillé était un CII 10070 qui avait 32 kilo octets de mémoire vive! Il fallait une pièce de 100 m2 avec climatisation et plusieurs personnes pour son entretien.
Jean-Pierre