La demande d'échange: Calcul de l'effectif d'accès à la mémoire du temps
Je ne comprends pas la réponse à cette question:
Envisager un système d'exploitation à l'aide de l'un au niveau de la pagination avec TLB registres. Si le défaut de page taux est de 10% et sale des pages doit être rechargé lorsque nécessaire, calculer l'efficacité de l'accès en temps si:
- TLB Recherche = 20 ns
- TLB Hit ratio = 80%
- D'accès à la mémoire temps = 75 ns
- Swap page = temps de 500 000 ns
- 50% des pages sont sales.
Réponse:
T = 0.8(TLB+MEM) + 0.2(0.9[TLB+MEM+MEM] + 0.1[TLB+MEM + 0.5(Disque) + 0.5(2Disk+MEM)]) = 15,110 ns
Pouvez-vous expliquer pourquoi?
OriginalL'auteur ehsan toghian | 2013-01-07
Vous devez vous connecter pour publier un commentaire.
Dans ce contexte, "efficace" temps moyen "devrait" ou "moyenne" du temps. Vous prenez donc le temps qu'il faut pour accéder à la page dans le cas individuels et de multiplier chaque probabilité. L'expression est un peu compliquée par le fractionnement des cas à plusieurs niveaux. Les cas sont les suivants:
0.8(TLB + MEM)
0.2(loooong expression)
(l'expression n'est pas réellement avoir cette parenthèse, mais je vais le prendre comme une faute de frappe, parce que les coefficients de ne pas ajouter jusqu'à 1 sans elle et elle n'a pas de sens si elles ne le font pas). Les cas sont les suivants:0.9(TLB + MEM + MEM)
. L'un au niveau de la pagination est mentionné, il est donc juste 1 supplémentaire d'accès à la mémoire ici, mais les implémentations pratiques ont généralement deux au niveau de la pagination et aurait donc 2 extra accès à la mémoire.0.5(Disk)
.(MEM+Disk)
et de lire dans le nouveau contenu(Disk)
, donnant l'0.5(2Disk + MEM)
Je pense que certains d'appoint accès à la mémoire qui devrait être inclus dans les deux dernières (swap), des cas que les deux accès sont nécessaires pour marquer la page précédente indisponible et la nouvelle page disponible dans la table des pages.
Il est également très irréaliste, parce que dans la vraie système où une salle pour la lecture d'une page n'est nécessaire, le système choisit toujours une propre page à remplacer. Pour s'assurer qu'il a des pages blanches il y a un processus d'arrière-plan qui va sur les pages sale et écrit. Il prend un peu de ressources de calcul, de sorte qu'il devrait réellement compter pour l'accès à la mémoire un peu, mais beaucoup moins depuis les défauts de page n'avez pas besoin d'attendre l'écrit à la fin.
L'expression est en fait mal. Il doit être soit
si des défauts de page sont de 10% d'absences TLB ou
si la page-les défauts sont de 10% de tous les accès. Vous n'êtes pas explicite à ce sujet, mais je suppose que le plus tard, si la formule ne comprend pas que 0,2*0.9, ce qui suggère que l'ancien.
Consultez les Systèmes d'Exploitation Modernes , par Andrew Tanembaum.
Hudec: En cas de sale page d'explication: pourquoi ReadNewContentFromDisk est seulement
(Disk)
au lieu de(Disk+MEM)
. Parce que le nouveau contenu doit être placé dans la mémoire. Il n'est pas le cas que ReadNewContetFromDisk = WriteContentToDisk =(Disk+MEM)
? Donc, La Formule =T = 0.8(TLB + MEM) + 0.2((0.9(TLB + MEM + MEM)) + 0.1(TLB + MEM + 0.5(Disk+MEM) + 0.5(2Disk + 2MEM)))
OriginalL'auteur Jan Hudec
la lecture de la question, je pensais à un scénario plus réaliste en fonction, par exemple, sur un système de pagination.
Dans ce scénario, aussi loin que je peux comprendre, il y a peut-être le cas de la table des pages (PT) lui-même n'est pas résident en mémoire (PT lui-même peut avoir été transférées à partir de la RAM en échange zone (par exemple Linux) ou dans le fichier d'échange (par exemple Windows)).
Concernant le répertoire de la page (le premier niveau de la pagination de la hiérarchie) je crois qu'il doit être toujours résident dans la mémoire vive (autrement, lors de changement de contexte, le x86 le registre CR3 contenu serait totalement inutile...)
Ainsi, il existe un pourcentage d'occurrences que nous avons à comprendre au moins:
T-il un sens ?
OriginalL'auteur Carlo