Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1844241
  • 博文数量: 274
  • 博客积分: 2366
  • 博客等级: 大尉
  • 技术积分: 1880
  • 用 户 组: 普通用户
  • 注册时间: 2007-04-22 09:37
文章分类

全部博文(274)

文章存档

2022年(1)

2020年(10)

2019年(7)

2018年(18)

2017年(26)

2016年(32)

2015年(43)

2014年(30)

2013年(44)

2012年(36)

2011年(17)

2010年(10)

分类: LINUX

2013-11-13 13:58:02

Subject: 如何反汇编核心的某个指定函数(如setup_arch),如何使反汇编中包含源代码的行号?请指教,谢谢 
Author: sanford    Posted: 2003-07-02 13:36    Length: 0 byte(s)
[Original] [Print] [Top]
[Original] [Print] [Top]
Subject: Re: 如何反汇编核心的某个指定函数(如setup_arch),如何使反汇编中包含源代码的行号?请指教,谢谢 
Author: sanford    Posted: 2003-07-03 17:56    Length: 108 byte(s)
[Original] [Print] [Top]
反汇编中包含源代码的行号已会了,是objdump -Sl filename 


如何反汇编核心的某个指定函数还不会
[Original] [Print] [Top]
Subject: Re: 如何反汇编核心的某个指定函数(如setup_arch),如何使反汇编中包含源代码的行号?请指教,谢谢 
Author: foehn    Posted: 2003-07-03 17:58    Length: 110 byte(s)
[Original] [Print] [Top]
你必须要有包含该函数的目标文件,比如.o之类的,然后用objdump -d就可以了。 
不知道是否我误解了你的意思。
----
臭豆腐3块钱一块,10块钱两块,多买多送啊......
[Original] [Print] [Top]
Subject: Re: 如何反汇编核心的某个指定函数(如setup_arch),如何使反汇编中包含源代码的行号?请指教,谢谢 
Author: sanford    Posted: 2003-07-03 18:22    Length: 111 byte(s)
[Original] [Print] [Top]
你的意思是objdump -d .o文件吗? 
objdump -d vmlinux可以反汇编整个核心,但我是要反汇编其中某个指定函数。
[Original] [Print] [Top]
Subject: Re: 如何反汇编核心的某个指定函数(如setup_arch),如何使反汇编中包含源代码的行号?请指教,谢谢 
Author: foehn    Posted: 2003-07-03 19:40    Length: 42 byte(s)
[Original] [Print] [Top]
不用整个vmlinux,只要对应的.o文件就可以了。
----
臭豆腐3块钱一块,10块钱两块,多买多送啊......
[Original] [Print] [Top]
Subject: Re: 如何反汇编核心的某个指定函数(如setup_arch),如何使反汇编中包含源代码的行号?请指教,谢谢 
Author: wheelz    Posted: 2003-07-04 09:35    Length: 94 byte(s)
[Original] [Print] [Top]
先用nm看函数的地址,再用objdump ... --start-address=xxxxx 


具体看man objdump
----
Hot 4 Freedom
[Original] [Print] [Top]
Subject: Re: 如何反汇编核心的某个指定函数(如setup_arch),如何使反汇编中包含源代码的行号?请指教,谢谢 
Author: halibot    Posted: 2003-07-04 10:41    Length: 50 byte(s)
[Original] [Print] [Top]
用gdb调试vmlinx,然后disassemble setup_arch就可以了
[Original] [Print] [Top]
Subject: Re: 如何反汇编核心的某个指定函数(如setup_arch),如何使反汇编中包含源代码的行号?请指教,谢谢 
Author: sanford    Posted: 2003-07-04 18:18    Length: 550 byte(s)
[Original] [Print] [Top]
感谢大家!我已经搞定。 


wheelz的方法可行。 
先readelf -a vmlinux|grep setup_arch得到相关信息: 
12707: c0351020 543 FUNC GLOBAL DEFAULT 9 setup_arch 


其中,c0351020 为起始地址,543为长度(10进制), 


然后使用objdump -d --start-address=c0351020 --stop-address=c035123f vmlinux 
即可。 


只是感觉这样太不方便了,以前在Tru64 Unix中使用dis -p procname vmunix 就可以了。 


有空开发一个类似程序看看。 
阅读(3361) | 评论(0) | 转发(1) |
0

上一篇:MIME Content-Type

下一篇:gdb 调试多线程

给主人留下些什么吧!~~