[SOS] Re: Là, je suis perdu !

David Decotigny david.decotigny at free.fr
Dim 5 Juin 15:12:03 CEST 2005


Bonjour,

Pour regler le probleme de "mes applis user ne sont jamais lancees dans
bochs", en premiere approche il suffit de doper un peu la variable de
config de bochs "ips".

Chez moi, une valeur 510000 ou plus convient. La valeur par defaut de
bochs etant 500000, rajoutez par exemple la ligne :
--------------------------------------
ips: 600000 # Pour plus de "securite"
--------------------------------------
dans votre fichier de config de bochs (en general ~/.bochsrc). Cette
valeur n'est pas une valeur "absolue". Elle depend du compilo (la
longeur des chemins critiques interruptions desactivees depend du code
généré).

Dans les sources de bochs, leur fichier de config positionne ips a
10000000...

Je vais quand meme regarder de plus pres. C'est une solution qui marche
mais il me semble que ce n'est pas LA bonne solution. En effet, selon
cette solution, le probleme viendrait du fait que le chemin critique
interruptions desactivees du code de switch kernel -> user serait plus
long que la periode de l'IRQ timer (10ms). Que ce soit le cas quand le
page fault sur la stack user se produit la 1ere fois, soit. Mais je ne
comprends pas pourquoi ca apparaitrait une fois que la stack user + les
premieres pages code/donnees ont ete mappees. D'autant plus que pour
l'article 7, on peut passer cette variable a une valeur <= 300000 sans
probleme. Or entre 7 et 7.5, la seule chose qui change est la resolution
des page faults. Donc, une fois ces page faults resolus, le 7.5 devrait
avoir les memes proprietes quant au timing des switches kernel -> user
qu'on trouve dans l'article 7 (en partie en ce qui concerne la longueur
des chemins critiques interruptions desactivees).

Bonne journee,



Plus d'informations sur la liste de diffusion Sos