ericwain 发表于 2010-12-9 08:08:11

skyeye for 2440: 使用gdb無法在start_kernel後看到 assemble code

請問,我用skyeye 模擬2440,並執行vmlinux,一開始的時候在0x30008000可以看到assemble code,可以用stepi的方式執行但是到了turn on mmu後進入到start_kernel,address在0xc0008000後就無法看到assemble code,並且去觀看0xc0008000的data都是0,我想這應該是virtual address mapping的問題,可是要如何在start_kernel也可以正確的看到assemble code呢?感謝您的回覆。

tsinghuayuan86 发表于 2010-12-9 09:50:24

回复 1# ericwain 的帖子

请在sourceforge的skyeye bug栏中将此bug提交,除了描述必要的描述以外,请贴出错误信息:

https://sourceforge.net/tracker/?func=browse&group_id=85554&atid=576533


thanks,
yuanzheng.

ksh 发表于 2010-12-9 10:44:49

目前我们的remote gdb可能读的是物理地址,如果你只是想看0x30008000的汇编代码,可以直接反汇编c0008000的物理地址,比如你可以用如下命令:
disassemble 0x30008000

如果看start_kernel的反汇编可以,计算一下 start_kernel到0xc0008000的偏移量,然后再加上物理基址,进行反汇编。假设 start_kernel的地址为0xc0008440, 那偏移量为0x440,然后你可以反汇编:
disassemble 0x30008440

我们会在后续的版本上考虑这个问题的改进。
页: [1]
查看完整版本: skyeye for 2440: 使用gdb無法在start_kernel後看到 assemble code