Université Pierre et Marie Curie

Systèmes d'exploitation des ordinateurs

Chapitre 1. Les systèmes d'exploitation
Chapitre 2. Mécanismes d'exécution et de communication
Chapitre 3. Gestion des activités parallèles
Chapitre 4. Gestion des fichiers
Chapitre 5. Partage des ressources
5.1. Partage du temps de calcul: l'exemple du traitement par lot
5.2. Le partage du processeur. Notions sur les files d'attente
5.3. Partage des disques
5.4. Partage de la mémoire
5.4.1. Structure d'un module exécutable
5.4.2. Allocation de la mémoire
5.5. Mémoires hiérarchiques
Chapitre 6. Au-dessus du système d'exploitation
Chapitre 7. Notions sur les communications
Chapitre 8. Notions sur la sécurité
Bibliographie
Chapitre 9. Exercices et TPs
Examens
Page d'accueilTable des matièresNiveau supérieurPage précédenteBas de la pagePage suivante

5.4. Partage de la mémoire

La mémoire est  une ressource rare. Il n'en existe qu'un seul exemplaire et tous les processus actifs doivent la partager. Si les mécanismes de gestion de ce partage sont peu efficaces l'ordinateur sera peu performant, quelque soit la puissance de son processeur. Celui-ci sera souvent interrompu en attente d'un échange qu'il aura réclamé. Si un programme viole les règles de fonctionnement de la mémoire, il en sera de même.

Lorsqu'on veut connaître les performances d'un ordinateur, on mesure pour chaque programme d'un jeu de tests trois temps :

  • le temps de travail du processeur, directement proportionnel à la puissance de celui-ci
  • le temps système qui traduit l'efficacité du système d'exploitation et des échanges avec la mémoire
  • le temps total d'exécution, c'est à dire le temps qui s'est écoulé entre le début et la fin du programme.  C'est la seule notion qui intéresse l'usager. Ce dernier temps peut être très supérieur à la somme des deux premiers si le programme testé viole les règles de gestion de la mémoire. Souvent de légères modifications du code suffisent à bouleverser les performances. Par exemple, comme nous le verrons, lorsqu'on travaille sur les éléments d'un grand tableau, il est aisé de faire varier de 30% à 50% ce temps simplement en choisissant l'ordre de manipulation des indices.

Pour écrire des programmes efficaces il faut  bien comprendre comment la mémoire est gérée.


Copyright Yves Epelboin, université P.M. Curie, février 2003, MAJ 8 mars, 2006

  5.4.1. Structure d'un module exécutable
  5.4.2. Allocation de la mémoire
Page d'accueilTable des matièresNiveau supérieurPage précédenteHaut de la pagePage suivante