2011-04-15 3 views
3

Je suis en cours d'exécution d'un code qui imite exigent le système d'échange voici quelques-uns des paramètres:Le numéro de mystère « 63 » dans le contexte de la demande radiomessagerie

Page size = 4096 bits 
Processor = 32 bits 
Number of page frames = (variable) 

je lance mon code avec un fifo ou le remplacement de page au hasard algorithme avec nombre de trames de page réglées sur 100. Mon disque en lecture/écriture se termine à 63.

Puis, quand je l'ai changé la taille du processeur à 32 bits - cette limite se déplace à 16

dans ce dernier cas, je comprends . Si le nombre d'images de la page est supérieur aux entrées possibles de la table de pages (2^4), il n'y a pas besoin d'expulsions. Pourquoi je ne comprends pas pourquoi dans le premier cas, où les entrées de table de page vont jusqu'à 2^20, le disque de lecture/écriture s'arrête à 63 avec les deux algorithmes de remplacement de page.

Quel est ce mystère numéro 63? Toute idée d'où cela vient? Je vous remercie.

+2

Si vous disque de comptage E/S simulées par le code que vous courez, pourquoi ne pas supposer qu'il est juste un bug dans le code ? Si vous comptez les E/S réelles au niveau du système d'exploitation, quel est votre système d'exploitation? –

+0

@Victor Je compte les E/S au niveau du code. Je comprends qu'il y a un bug dans le code. J'essaie de comprendre d'où il vient: logique ou syntaxe. Premièrement, j'essaie d'écarter la faille logique. – moejoe

+2

la seule chose intéressante que je peux dire à propos de 63 ici - c'est 2^6 - 1 :) –

Répondre

0

La chaîne de référence avait seulement 63 pages - maintenant que j'ai obtenu un peu de sommeil ...

Questions connexes