[Vm-dev] Debugging VM

Igor Stasenko siguctua at gmail.com
Tue Jun 16 07:17:07 UTC 2009


2009/6/16  <pascal.vollmer at nexgo.de>:
>
> Hi,
>
> I cross-debug the activities of a Unix-VM running on a PowerPC/Linux embedded system.
>
> 1. Via gdbserver/gdb I am able to see that main() is executed up to the point where the interpreter is called
> 2. I can also set a breakpoint at the switch(currentBytecode) of the interpreter and break there once
> 3. After continuing I do not come back to this breakpoint a second time

i suppose this is because of gnu-ified bytecodes, which replacing all
'break;' statements with direct gotos to next bytecode label.
For debugging , i recommend you to build VM with gnuification step disabled.

> 4. I can interrupt execution with Ctrl-C (SIGINT) and tell gdb: call printAllStacks(). This yields what is shown at the end of the mail
> 5. I use Cuis1.0-0204 which fits nicely in my 16MB flash memory. I modified it so that an early alife-message is sent to stderr. This is done when executing the class method startUp of the Delay class. This works well on my intel/Linux desktop system. But I do not get there on my PowerPC/Linux embedded system.
> 6. I use Bert Freudenbergs changesets to print SqueakDebug.log on stderr. They work well on intel/Linux but on the embedded system I apparently do not get a MNU.
>
> What possibilities do I have to get further diagnosis?
>
> A last question: There is a document "porting1.pdf" written by Ian Piumarta which might be helpful. Does anybody know where I can download a readable copy?
>
> Kind regards
> Pascal
>
> ---snip---
>
> Process
> 816700312 MethodContext>tempAt:put:
> 816700220 BlockContext>ensure:
> 816699724 Semaphore>critical:
> 816699632 SharedQueue>nextOrNilSuchThat:
> 816699540 EventSensor>primKbdPeek
> 816699448 InputSensor>keyboardPressed
> 816556468 Object>primitiveError:
> 816550660 [] in Debugger class>openOn:context:label:contents:fullView:
> 816555956 BlockContext>valueWithPossibleArgs:
> 816556276 [] in ContextPart>handleSignal:
> 816555864 BlockContext>ensure:
> 816555772 ContextPart>handleSignal:
> 816555680 Exception>signal
> 816555588 Object>doesNotUnderstand: bitAnd:
> 816555496 Color>setRed:green:blue:
> 816555324 Color class>r:g:b:
> 816555232 Color class>r:g:b:alpha:
> 816555140 Color>alphaMixed:with:
> 816555048 Color>muchLighter
> 816554712 [] in Debugger>buttonRowForPreDebugWindow:
> 816554620 OrderedCollection>do:
> 816554416 Debugger>buttonRowForPreDebugWindow:
> 816551096 Debugger>buildMorphicNotifierLabelled:message:
> 816551004 Debugger>openNotifierContents:label:
> 816550408 [] in Debugger class>openOn:context:label:contents:fullView:
> 816550316 BlockContext>on:do:
> 816549940 [] in Debugger class>openOn:context:label:contents:fullView:
> 816550192 [] in BlockContext>newProcess
>
> Process
> 809231112 WeakArray class>finalizationProcess
> 809230928 [] in WeakArray class>restartFinalizationProcess
> 809231020 [] in BlockContext>newProcess
>
> Process
> 809241876 Delay class>handleTimerEvent
> 807952212 Delay class>runTimerEventLoop
> 807952528 [] in Delay class>startTimerEventLoop
> 807952620 [] in BlockContext>newProcess
>
> Process
> 809227976 SystemDictionary>lowSpaceWatcher
> 809228068 [] in SystemDictionary>installLowSpaceWatcher
> 809228160 [] in BlockContext>newProcess
>
> ---snip---
>
> Pascal Vollmer
> Email: pascal.vollmer at ieee.org
>
> Jetzt klicken und gucken! Das Arcor.de Fotoalbum mit tausenden von öffentlich einsehbaren Privatfotos!
> Wir empfehlen die Kategorie Singles!
> http://www.arcor.de/rd/palb
>



-- 
Best regards,
Igor Stasenko AKA sig.


More information about the Vm-dev mailing list