FSTWikiDiff for 1.7 김도집/LinuxElf
Login:
Password:
Join
U E D R S I H P RSS
FrontPage|FindPage|TitleIndex|RecentChanges

Difference between r1.7 and the current

@@ -23,6 +23,7 @@
== 유용한 도구 ==
ELF의 헤더를 분석할 때 '''readelf''' 명령을 사용하면 편리하다. 다음은 readelf의 몇가지 옵션을 정리한 것이다.
||'''readelf에서 사용하는 옵션'''||'''설명'''||
||{{{-a}}}||ELF의 모든 헤더를 보여준다||
||{{{-h}}}||ELF 파일의 헤더를 보여준다||
||{{{-l}}}||프로그램 헤더를 보여준다||
||{{{-S}}}||섹센 헤더를 보여준다||
@@ -37,6 +38,5 @@
{{{
$ hexedit foobar
}}}




ELF는 Executalbe and Linkable Format의 약어이다.

-- 김도집 2005-11-07 10:00:32

ELF 포맷에 대한 문서는 [http://www.skyfree.org/linux/references/ELF_Format.pdf ] 에서 다운 받을 수 있다.

그외 x86의 ELF 포맷을 역으로 분석한 것도 있는데 [http]http://www.linuxsa.org.au/meetings/reveng-0.2.pdf 도 좋은 참고 자료가 될 것이다.

ARM에서 ELF에 대한 ARM ABI를 참고하자.

Contents

1 ELF 개요
1.1 유용한 도구

1 ELF 개요 #

ELF는 크게 세개의 헤더를 갖는다.
  • ELF header
  • Program header table
  • Section header table

ELF header는 ELF 파일의 처음에 위치하며 그외 header는 어디든 위치할 수 있다.

또한 ELF 파일이 Linking View, Excecution View 등의 관점에 따라 Program header table이 생략되거나 Section header table이 생략될 수도 있다.

1.1 유용한 도구 #

ELF의 헤더를 분석할 때 readelf 명령을 사용하면 편리하다. 다음은 readelf의 몇가지 옵션을 정리한 것이다.
readelf에서 사용하는 옵션설명
-aELF의 모든 헤더를 보여준다
-hELF 파일의 헤더를 보여준다
-l프로그램 헤더를 보여준다
-S섹센 헤더를 보여준다
-e모든 헤더 정보를 보여준다 (-h -l -S)

readelf의 사용은 다음과 같다:
$ readelf -h foobar

그외에도 hexedit 를 이용하면 ELF 파일을 hex code로 볼 수 있다.
$ hexedit foobar

last modified 2006-05-11 10:52:02
ShowPage|FindPage|DeletePage|LikePages Valid XHTML 1.0! Valid CSS! powered by MoniWiki
0.0212 sec