[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[linux-team] watson vs core (was:Qu'est ce donc que DrWatson...)



On Mon, Aug 30, 1999 at 09:01:15AM +0200, Piette François wrote:
> > >> les applications. Il y a de nombreuses applications qui 
> >> sont buggées et qui provoquent DrWatson, Core Dump, Kernel 
> >> Panic ou l'équivalent selon
> >Ma question n'a rien à faire ici, je suis d'accord.
> >Mais l'occasion est trop belle 
> >Qu'est ce donc que DrWatson et à quoi sert-il ?
> DrWatson est un programme NT (ou un module de NT, c'est comme tu veux)
> qui permet lorsqu'une application effectue une operation invalide de
> lancer le debuger "just in time" pour debuguer l'application, ou au
> contraire juste la tuer. C'est une version évoluée du Core Dump qui donc
> permet d'intervenir dans le process en erreur AVANT de le détruire. Si
> tu as en plus les sources sur la machine, le debuger te montre le
> problème exactement la où il est. Tu peux encore examiner les variables,
> le stack, les threads et tout le reste quand c'est encore facile. Alors
Ah ouais, c'est "plus facile" quand il tourne encore ?
De toute façon, après, il se fait jeter, le processus... alors ça change
quoi ?

> qu'avec un core dump, après la mort du processus, c'est bien plus
> compliqué.
euuuh ?
Là, c'est de nouveau une façon de voir les choses...
Quand tu as un core dumpé sur disque, tu prends gdb (avec ddd, question
de faire joli ;)), tu charges le core et tu peux te faire afficher un
"backtrace", qui t'indique les fonctions/méthodes dans laquelle l'application
se trouvait lors du core dump (y compris toutes les fonctions appellantes,
genre main -> Foo::foo -> Bar::bar -> Foo::blah <core>)

Au niveau des possibilités, c'est tout à fait pareil.
On peut aussi refaire ça par après avec Dr Watson ?
Et avec Dr Watson, tu sais t'attacher à un processus en cours d'éxécution pour
le débugger ? (avec gdb et dbx, il suffit d'avoir le pid)

Tiens, tant qu'on y est, comment tu fais pour "congeler" un processus sous NT ?
Je parle du "kill -STOP <pid>" d'UNIX...
Tu sais aussi forcer un co^H^HDr Watson ? (bon, pas besoin de forcer, ça vient
tout seul après un moment, mais bon...), là je veux dire "kill -ILL <pid>"...

Raah... c'est pas vrai! Je m'étais pourant juré de l'ignorer, mais pas moyen :)

PS: Ton débuggage "just-in-time", c'est magnifique sur la machine du client...
    Ici, on reprend les cores des systèmes de test des clients pour les analyser
	 chez nous (même si les cores sont rares, si si ;))

-- 
  -o)  Pascal Bleser        | Instead of giving  Windows
  /\\  C++/UNIX Development | the "three-finger-salute",
 _\_v  ATOS Payment Systems | give it  the  "one-finger-
       Aachen, Germany      | goodbye"  {jfk/propaganda}   
<pbleser@atos-group.com>--------------<guru@linuxbe.org>

---------
Visit the Linux Supertore Online: http://www.redcorp.com !
If you want to be deleted from the list, send a mail to
majordomo@rtfm.be with "unsubscribe linux-team" in the body.