์ถ”๊ฐ€..

21 views
Skip to first unread message

Min Lee

unread,
Jul 21, 2010, 11:28:27โ€ฏAM7/21/10
to osin...@googlegroups.com
๋‘๊ฐœ์˜ subchapter Procedure and thread๊ณผ Variable arguments์„ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค.
์š”์ฆ˜ x86-64์ข€ ๋ณด๊ณ ์žˆ๋Š”๋ฐ calling convention์ด ๋‹ค๋ฅด๋”๊ตฐ์š”.. variable
arguments๊ด€๋ จํ•ด์„œ ์‚ฝ์งˆํ•˜๋‹ค๊ฐ€.. ์ •๋ฆฌํ•ด๋ดค์Šต๋‹ˆ๋‹ค..
์ดˆ๋ณด์ ์ธ ๋‚ด์šฉ์ผ์ง€ ๋ชจ๋ฅด๊ฒ ์ง€๋งŒ ์ค‘์š”ํ•œ๋ถ€๋ถ„์ด๋ผ์„œ.. ์—ด์‹ฌํžˆ์ข€ ์จ๋ดค๋”๋‹ˆ ์‹œ๊ฐ„ ํ›„๋”ฑ
๊ฐ€๋„ค์š”..
์„ค๋ช…์˜ ๋‚œ์ด๋„๋Š” ๋ฌธ์ œ๊ฐ€ ์žˆ์„์ง€๋„.. ๊ฑ ๋งˆ์Œ๋Œ€๋กœ ์จ๋ด„..
๋‚ ์”จ๋„ ๋”์šด๋ฐ ๋‹ค๋“ค ๋ชธ์กฐ์‹ฌ~

Junyeong Bak

unread,
Jul 26, 2010, 8:43:52โ€ฏPM7/26/10
to osin...@googlegroups.com
์ •๋ง ์˜ค๋žœ๋งŒ์ž…๋‹ˆ๋‹ค. ๋ฉ”์ผ์€ ๊ฑฐ์˜ ๋งค์ผ ํ™•์ธ ํ•˜๋Š”๋ฐ ๊ธ€์„ ์“ด๊ฑด ์‰ฝ์ง€ ์•Š๋„ค์š”~

์ด๋ฒˆ์— ์—…๋ฐ์ดํŠธ ๋œ ๊ฑธ ๋‹ค ๋ณด์ง„ ๋ชปํ–ˆ์ง€๋งŒ ๊ถ๊ธˆ ํ•œ ๊ฒƒ์ด ์žˆ์–ด ํž˜์ฃผ์–ด ๊ธ€์„ ์“ฐ๋„ค์š”~

osinside์— ๋Œ€ํ•ด ๋„์›€์ด ๊ฑฐ์˜ ๋˜์ง€ ๋ชปํ•ด์„œ ๋ฏธ์•ˆํ•˜๊ธฐ ํ•˜์ง€๋งŒ์š”~

linux๋“  operating system์—์„œ dll / so ๊ฐ™์€ ๊ฒฝ์šฐ ํ•œ๋ฒˆ ๋กœ๋”ฉ ํ•ด์„œ ์—ฌ๋Ÿฌ ํ”„๋กœ์„ธ์Šค๊ฐ€ ๊ฐ™์ด ์‚ฌ์šฉํ•˜๊ธฐ ๋˜๋Š”๋ฐ..

ํ”„๋กœ์„ธ์Šค ๋ณ„๋กœ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜ ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ๋ฅผ ํ™•์ธ ํ•˜๋ ค๋ฉด cat /proc/pid/maps ๋ฅผ ํ†ตํ•ด ํ•  ์ˆ˜ ์žˆ์—ˆ๋˜ ๊ฑฐ ๊ฐ™์€๋ฐ์š”~

ํ”„๋กœ์„ธ์Šค๋ณ„์ด ์•„๋‹ˆ๋ผ ์šด์˜์ฒด์ œ ์ „์ฒด์— ๋กœ๋”ฉ ๋˜์–ด ์žˆ๋Š” library๋ฅผ ์•Œ ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ•์€ ์žˆ๋Š”์ง€ ๊ถ๊ธˆํ•ฉ๋‹ˆ๋‹ค?

๋˜ํ•œ elf์— ๋ณด๋ฉด library์˜ entry point๊ฐ€ ์žˆ๋Š”๋ฐ ๊ทธ๊ณณ์— ๋ฌด์กฐ๊ฑด ์˜ฌ๋ผ๊ฐ€๋Š”์ง€ ์•„๋‹ˆ๋ฉด ๊ธฐ์กด์— ์–ด๋–ค ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ€

์žˆ์œผ๋ฉด ๋‹ค๋ฅธ ๊ณณ์œผ๋กœ ์˜ฌ๋ฆฌ๋Š”์ง€ ๊ถ๊ธˆํ•ด์ง€๋„ค์š”~ ๋‹ค๋ฅธ ๊ณณ ์˜ฌ๋ฆฌ๊ณ  ์žฌ๋ฐฐ์น˜ ํ•˜๋Š” ๊ฑฐ ๊ฐ™์€๋ฐ์š”.

์‹ค์ œ ์˜ฌ๋ผ๊ฐ€๋Š” entry point๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ•์€ ์—†๋‚˜์š”??

:)


2010/7/22 Min Lee <min...@gatech.edu>

--
You received this message because you are subscribed to the Google Groups "osinside" group.
To post to this group, send email to osin...@googlegroups.com.
To unsubscribe from this group, send email to osinside+u...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/osinside?hl=en.


Min Lee

unread,
Jul 27, 2010, 11:11:32โ€ฏAM7/27/10
to osin...@googlegroups.com
๊ตฌ๊ธ€๊ทธ๋ฃน์— ๋“ฑ๋ก๋˜์–ด์žˆ์œผ๋ฉด ์ด๋ฉ”์ผ์ด ์ž๋™์ ์œผ๋กœ ์˜ค์ฃ ?.. ๋ญ ์ €๋„ ๊ทธ๋ ‡์ง€๋งŒ ๋‹ค๋“ค
๋ฐ”์˜๋‹ˆ๊นŒ์š”..ํ—คํ—ค.. ์ƒ๊ด€์—†์–ด์š”.. OS์ „์ฒด์— ๋กœ๋”ฉ๋˜์–ด์žˆ๋Š”๊ฑฐ.. ์ œ๊ฐ€ ์•Œ๊ธฐ๋กœ๋Š” ์—†
๊ณ ์š”.. ๋”ฐ๋กœ ์ œ๊ณต๋˜์ง€ ์•Š์„๊ฑฐ์—์š”.. ๋ญ OS๊ฐ€ ๋งŒ๋“ค๋ ค๋ฉด์•ผ ๋งŒ๋“ค์—ˆ๊ฒ ์ง€๋งŒ.. ๊ฑ ์Šคํฌ
๋ฆฝํŠธ ํ•˜๋‚˜ ์จ์„œ /proc/pid/maps๋ฅผ ๋ชจ์•„๋ฒ„๋ฆฌ๋ฉด ๋˜์ง€ ์•Š์„๊นŒ๋„ ์‹ถ๊ณ ..
library๊ฐ€ entry point๊ฐ€ ์žˆ๋‚˜์š”? ์–ด๋А๊ฑธ ๋ง์”€ํ•˜์‹œ๋Š”์ง€.. ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋Š”
position-independent๋ผ ๊ธฐ๋ณธ์ ์œผ๋กœ ์•„๋ฌด๋ฐ๋‚˜ ๋‹ค ๋ถ™์–ด์š”.. ์š”์ฆ˜์—” ๋˜ ๋ณด์•ˆ๋ฌธ์ œ๋กœ
๋žœ๋คํ•˜๊ฒŒ ์ฃผ์†Œ๊ฐ€ ๊ฒฐ์ •๋˜์„œ ์˜ฌ๋ผ๊ฐ€๋˜๋ฐ์š”..

root@workplace:~# cat /proc/self/maps
08048000-0804f000 r-xp 00000000 08:01 24579 /bin/cat
0804f000-08050000 rw-p 00006000 08:01 24579 /bin/cat
08050000-08071000 rw-p 08050000 00:00 0 [heap]
b7c8c000-b7ccb000 r--p 00000000 08:01 347437
/usr/lib/locale/en_US.utf8/LC_CTYPE
b7ccb000-b7ccc000 r--p 00000000 08:01 347438
/usr/lib/locale/en_US.utf8/LC_NUMERIC
b7ccc000-b7ccd000 r--p 00000000 08:01 347439
/usr/lib/locale/en_US.utf8/LC_TIME
b7ccd000-b7deb000 r--p 00000000 08:01 347440
/usr/lib/locale/en_US.utf8/LC_COLLATE
b7deb000-b7dec000 r--p 00000000 08:01 347441
/usr/lib/locale/en_US.utf8/LC_MONETARY
b7dec000-b7ded000 r--p 00000000 08:01 347442
/usr/lib/locale/en_US.utf8/LC_MESSAGES/SYS_LC_MESSAGES
b7ded000-b7dee000 r--p 00000000 08:01 347443
/usr/lib/locale/en_US.utf8/LC_PAPER
b7dee000-b7df5000 r--s 00000000 08:01 312727
/usr/lib/gconv/gconv-modules.cache
b7df5000-b7df6000 rw-p b7df5000 00:00 0
b7df6000-b7f49000 r-xp 00000000 08:01 419455
/lib/tls/i686/cmov/libc-2.11.1.so
b7f49000-b7f4a000 ---p 00153000 08:01 419455
/lib/tls/i686/cmov/libc-2.11.1.so
b7f4a000-b7f4c000 r--p 00153000 08:01 419455
/lib/tls/i686/cmov/libc-2.11.1.so
b7f4c000-b7f4d000 rw-p 00155000 08:01 419455
/lib/tls/i686/cmov/libc-2.11.1.so
b7f4d000-b7f50000 rw-p b7f4d000 00:00 0
b7f50000-b7f51000 r--p 00000000 08:01 347444
/usr/lib/locale/en_US.utf8/LC_NAME
b7f51000-b7f52000 r--p 00000000 08:01 347445
/usr/lib/locale/en_US.utf8/LC_ADDRESS
b7f52000-b7f53000 r--p 00000000 08:01 347446
/usr/lib/locale/en_US.utf8/LC_TELEPHONE
b7f53000-b7f54000 r--p 00000000 08:01 347447
/usr/lib/locale/en_US.utf8/LC_MEASUREMENT
b7f54000-b7f55000 r--p 00000000 08:01 347448
/usr/lib/locale/en_US.utf8/LC_IDENTIFICATION
b7f55000-b7f57000 rw-p b7f55000 00:00 0
b7f57000-b7f58000 r-xp b7f57000 00:00 0 [vdso]
b7f58000-b7f73000 r-xp 00000000 08:01 417808 /lib/ld-2.11.1.so
b7f73000-b7f74000 r--p 0001a000 08:01 417808 /lib/ld-2.11.1.so
b7f74000-b7f75000 rw-p 0001b000 08:01 417808 /lib/ld-2.11.1.so
bf94d000-bf962000 rw-p bffeb000 00:00 0 [stack]
root@workplace:~# cat /proc/self/maps
08048000-0804f000 r-xp 00000000 08:01 24579 /bin/cat
0804f000-08050000 rw-p 00006000 08:01 24579 /bin/cat
08050000-08071000 rw-p 08050000 00:00 0 [heap]
b7c75000-b7cb4000 r--p 00000000 08:01 347437
/usr/lib/locale/en_US.utf8/LC_CTYPE
b7cb4000-b7cb5000 r--p 00000000 08:01 347438
/usr/lib/locale/en_US.utf8/LC_NUMERIC
b7cb5000-b7cb6000 r--p 00000000 08:01 347439
/usr/lib/locale/en_US.utf8/LC_TIME
b7cb6000-b7dd4000 r--p 00000000 08:01 347440
/usr/lib/locale/en_US.utf8/LC_COLLATE
b7dd4000-b7dd5000 r--p 00000000 08:01 347441
/usr/lib/locale/en_US.utf8/LC_MONETARY
b7dd5000-b7dd6000 r--p 00000000 08:01 347442
/usr/lib/locale/en_US.utf8/LC_MESSAGES/SYS_LC_MESSAGES
b7dd6000-b7dd7000 r--p 00000000 08:01 347443
/usr/lib/locale/en_US.utf8/LC_PAPER
b7dd7000-b7dde000 r--s 00000000 08:01 312727
/usr/lib/gconv/gconv-modules.cache
b7dde000-b7ddf000 rw-p b7dde000 00:00 0
b7ddf000-b7f32000 r-xp 00000000 08:01 419455
/lib/tls/i686/cmov/libc-2.11.1.so
b7f32000-b7f33000 ---p 00153000 08:01 419455
/lib/tls/i686/cmov/libc-2.11.1.so
b7f33000-b7f35000 r--p 00153000 08:01 419455
/lib/tls/i686/cmov/libc-2.11.1.so
b7f35000-b7f36000 rw-p 00155000 08:01 419455
/lib/tls/i686/cmov/libc-2.11.1.so
b7f36000-b7f39000 rw-p b7f36000 00:00 0
b7f39000-b7f3a000 r--p 00000000 08:01 347444
/usr/lib/locale/en_US.utf8/LC_NAME
b7f3a000-b7f3b000 r--p 00000000 08:01 347445
/usr/lib/locale/en_US.utf8/LC_ADDRESS
b7f3b000-b7f3c000 r--p 00000000 08:01 347446
/usr/lib/locale/en_US.utf8/LC_TELEPHONE
b7f3c000-b7f3d000 r--p 00000000 08:01 347447
/usr/lib/locale/en_US.utf8/LC_MEASUREMENT
b7f3d000-b7f3e000 r--p 00000000 08:01 347448
/usr/lib/locale/en_US.utf8/LC_IDENTIFICATION
b7f3e000-b7f40000 rw-p b7f3e000 00:00 0
b7f40000-b7f41000 r-xp b7f40000 00:00 0 [vdso]
b7f41000-b7f5c000 r-xp 00000000 08:01 417808 /lib/ld-2.11.1.so
b7f5c000-b7f5d000 r--p 0001a000 08:01 417808 /lib/ld-2.11.1.so
b7f5d000-b7f5e000 rw-p 0001b000 08:01 417808 /lib/ld-2.11.1.so
bfd2c000-bfd41000 rw-p bffeb000 00:00 0 [stack]

์ด๋Ÿฐ์‹์œผ๋กœ /proc/self/maps ๋ช‡๋ฒˆ ๋•Œ๋ ค๋ณด๋ฉด.. executable๋งŒ ๋นผ๊ณ ๋Š” ๋‹ค๋“ค ์ž๊พธ ์ฃผ
์†Œ๊ฐ€ ๋ฐ”๋€Œ์ฃ ..

๋ฌผ๋ก  ๋ถ™์ด๊ณ ์žํ•˜๋Š” ์ฃผ์†Œ์— ์ด๋ฏธ ๋‹ค๋ฅธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ€ ๋ถ™์–ด์žˆ๊ฑฐ๋‚˜ ๊ทธ๋Ÿด์ˆ˜ ์žˆ์ฃ  ๋ฌผ
๋ก .. ์•„๋งˆ ๋‹ค๋ฅธ๊ณณ์— ๋ถ™์ด์ง€ ์•Š์„๊นŒ์š”..ใ…Žใ…Ž.. ๊ทธ๋Ÿฐ ๊ฒฝ์šฐ ์ž˜ ๋ณธ์ ์ด ์—†์–ด์„œ.. ์–ด
์จŒ๋“  ๊ทธ๊ฑด ๋ง์ปคํ•œํ…Œ ๋‹ฌ๋ฆฐ ๋ฌธ์ œ์—์š”.. ๋ง์ปค๋งˆ์Œ..๊ตฌํ˜„ํ•˜๊ธฐ ๋‚˜๋ฆ„.. executable๋งŒ
๊ณ ์ •๋œ loading address๊ฐ€ ์žˆ์ฃ .. ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ€ ์‹ค์ œ ์˜ฌ๋ผ๊ฐ„ ์ฃผ์†Œ๊ฐ€ ์œ„์—์„œ์ฒ˜๋Ÿผ
ํ™•์ธ๋˜์ฃ .. /proc/self/maps๋ฅผ ์ด์šฉํ•˜๋ฉด..

On 7/26/2010 8:43 PM, Junyeong Bak wrote:
> ์ •๋ง ์˜ค๋žœ๋งŒ์ž…๋‹ˆ๋‹ค. ๋ฉ”์ผ์€ ๊ฑฐ์˜ ๋งค์ผ ํ™•์ธ ํ•˜๋Š”๋ฐ ๊ธ€์„ ์“ด๊ฑด ์‰ฝ์ง€ ์•Š๋„ค์š”~
>
> ์ด๋ฒˆ์— ์—…๋ฐ์ดํŠธ ๋œ ๊ฑธ ๋‹ค ๋ณด์ง„ ๋ชปํ–ˆ์ง€๋งŒ ๊ถ๊ธˆ ํ•œ ๊ฒƒ์ด ์žˆ์–ด ํž˜์ฃผ์–ด ๊ธ€์„ ์“ฐ๋„ค์š”~
>
> osinside์— ๋Œ€ํ•ด ๋„์›€์ด ๊ฑฐ์˜ ๋˜์ง€ ๋ชปํ•ด์„œ ๋ฏธ์•ˆํ•˜๊ธฐ ํ•˜์ง€๋งŒ์š”~
>
> linux๋“  operating system์—์„œ dll / so ๊ฐ™์€ ๊ฒฝ์šฐ ํ•œ๋ฒˆ ๋กœ๋”ฉ ํ•ด์„œ ์—ฌ๋Ÿฌ ํ”„๋กœ์„ธ
> ์Šค๊ฐ€ ๊ฐ™์ด ์‚ฌ์šฉํ•˜๊ธฐ ๋˜๋Š”๋ฐ..
>
> ํ”„๋กœ์„ธ์Šค ๋ณ„๋กœ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜ ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ๋ฅผ ํ™•์ธ ํ•˜๋ ค๋ฉด cat /proc/pid/maps ๋ฅผ
> ํ†ตํ•ด ํ•  ์ˆ˜ ์žˆ์—ˆ๋˜ ๊ฑฐ ๊ฐ™์€๋ฐ์š”~
>
> ํ”„๋กœ์„ธ์Šค๋ณ„์ด ์•„๋‹ˆ๋ผ ์šด์˜์ฒด์ œ ์ „์ฒด์— ๋กœ๋”ฉ ๋˜์–ด ์žˆ๋Š” library๋ฅผ ์•Œ ์ˆ˜ ์žˆ๋Š” ๋ฐฉ
> ๋ฒ•์€ ์žˆ๋Š”์ง€ ๊ถ๊ธˆํ•ฉ๋‹ˆ๋‹ค?
>
> ๋˜ํ•œ elf์— ๋ณด๋ฉด library์˜ entry point๊ฐ€ ์žˆ๋Š”๋ฐ ๊ทธ๊ณณ์— ๋ฌด์กฐ๊ฑด ์˜ฌ๋ผ๊ฐ€๋Š”์ง€ ์•„
> ๋‹ˆ๋ฉด ๊ธฐ์กด์— ์–ด๋–ค ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ€
>
> ์žˆ์œผ๋ฉด ๋‹ค๋ฅธ ๊ณณ์œผ๋กœ ์˜ฌ๋ฆฌ๋Š”์ง€ ๊ถ๊ธˆํ•ด์ง€๋„ค์š”~ ๋‹ค๋ฅธ ๊ณณ ์˜ฌ๋ฆฌ๊ณ  ์žฌ๋ฐฐ์น˜ ํ•˜๋Š” ๊ฑฐ ๊ฐ™
> ์€๋ฐ์š”.
>
> ์‹ค์ œ ์˜ฌ๋ผ๊ฐ€๋Š” entry point๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ•์€ ์—†๋‚˜์š”??
>
> :)
>
>

> 2010/7/22 Min Lee <min...@gatech.edu <mailto:min...@gatech.edu>>


>
> ๋‘๊ฐœ์˜ subchapter Procedure and thread๊ณผ Variable arguments์„ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค.
> ์š”์ฆ˜ x86-64์ข€ ๋ณด๊ณ ์žˆ๋Š”๋ฐ calling convention์ด ๋‹ค๋ฅด๋”๊ตฐ์š”.. variable
> arguments๊ด€๋ จํ•ด์„œ ์‚ฝ์งˆํ•˜๋‹ค๊ฐ€.. ์ •๋ฆฌํ•ด๋ดค์Šต๋‹ˆ๋‹ค..
> ์ดˆ๋ณด์ ์ธ ๋‚ด์šฉ์ผ์ง€ ๋ชจ๋ฅด๊ฒ ์ง€๋งŒ ์ค‘์š”ํ•œ๋ถ€๋ถ„์ด๋ผ์„œ.. ์—ด์‹ฌํžˆ์ข€ ์จ๋ดค๋”๋‹ˆ ์‹œ๊ฐ„
> ํ›„๋”ฑ ๊ฐ€๋„ค์š”..
> ์„ค๋ช…์˜ ๋‚œ์ด๋„๋Š” ๋ฌธ์ œ๊ฐ€ ์žˆ์„์ง€๋„.. ๊ฑ ๋งˆ์Œ๋Œ€๋กœ ์จ๋ด„..
> ๋‚ ์”จ๋„ ๋”์šด๋ฐ ๋‹ค๋“ค ๋ชธ์กฐ์‹ฌ~
>
> --
> You received this message because you are subscribed to the Google
> Groups "osinside" group.
> To post to this group, send email to osin...@googlegroups.com

> <mailto:osin...@googlegroups.com>.


> To unsubscribe from this group, send email to
> osinside+u...@googlegroups.com

> <mailto:osinside%2Bunsu...@googlegroups.com>.

Min Lee

unread,
Jul 27, 2010, 1:31:54โ€ฏPM7/27/10
to osin...@googlegroups.com
์•„, ํ˜น์‹œ entry point๋ผ๋Š”๊ฒŒ executable์˜ mainํ•จ์ˆ˜ (์ •ํ™•ํžˆ๋Š” _start ์ธ๊ฐ€..
์ฃ ..CRT์ฒซ๋ฒˆ์งธ์ฝ”๋“œ)๋ฅผ ์–˜๊ธฐํ•˜์‹œ๋Š”๊ฒŒ ์•„๋‹Œ๊ฐ€ ์‹ถ๋„ค์š”
entry์™€ loading address๋Š” ๋‹ค๋ฅธ๋ฐ์š”, loading address๋Š” ๋ง๊ทธ๋Œ€๋กœ ์ฃผ์†Œ๊ณต๊ฐ„์—์„œ
์–ด๋””์— ๋†“์ผ์ง€๋ฅผ ์–˜๊ธฐํ•˜๋Š”๊ฒƒ์ด๊ณ , ์ด๊ฒŒ ์•„๋ฌด๊ณณ์—๋‚˜ ๋†“์ผ์ˆ˜ ์žˆ์œผ๋ฉด PIC์ด๋ผ ๋ถ€๋ฅด์ฃ ..
๋ฐ˜๋ฉด entry๋Š” library๋“ฑ์—๋Š” ์—†๊ณ  executable์—๋งŒ ์žˆ๋Š”, executable์„ ์‹คํ–‰ํ–ˆ์„
๋•Œ ์ฒ˜์Œ ์‹œ์ž‘ ํ•จ์ˆ˜๊ฐ€ ์–ด๋Аํ•จ์ˆ˜์ธ์ง€..๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š”๊ฑฐ๊ณ ์š”..library๋Š” ์‹œ์ž‘ํ•จ์ˆ˜๋ผ๋Š”
๊ฒŒ ์—†์œผ๋‹ˆ๊นŒ entry๊ฐ€ ์—†๋Š”๊ฒƒ์ด์ฃ .

Min Lee

unread,
Jul 27, 2010, 4:18:41โ€ฏPM7/27/10
to osin...@googlegroups.com
ELF์™€ ์žฌ๋ฐฐ์น˜๋“ฑ๊ณผ ๊ด€๋ จํ•ด์„œ ์–ด๋–ค์ผ์„ ํ•˜์‹œ๋‚˜์š”? ์ง€๋‚œ๋ฒˆ์˜ gdb๋กœ printf์ถ”์ ํ•ด๋ณด
๋Š”๊ฒƒ๋„ ๊ทธ๋ ‡๊ณ , runtime์— linkingํ•˜๋Š” ๊ณผ์ •์ด ์ข€ ๋ณต์žกํ•˜๊ธด ํ•œ๊ฒƒ๊ฐ™์•„์š”.. ์ข€ ์˜ค
๋ž˜๋˜์—ˆ์ง€๋งŒ..
http://netwinder.osuosl.org/users/p/patb/public_html/elf_relocs.html
๊ฐ™์€๊ณณ์—์„œ ์„ค๋ช…์ด ๋˜์–ด์žˆ๊ณ  ๊ทธ๋Ÿฐ๋ฐ์š”..๊ตฌ๊ธ€์—์„œ ์ฐพ์•„๋ณด๋ฉด์•ผ ์ž๋ฃŒ๋Š” ๋งŽ์ง€๋งŒ..
์•„๋งˆ ํ•œ๊ธ€์ž๋ฃŒ๋Š” ๋ณ„๋กœ ์—†์„๊ฑฐ์—์š”..ํ˜...
์ด ์ „์ฒด์ ์ธ ์ด์•ผ๊ธฐ๋Š”.. ๊ธฐ๋ณธ์ ์œผ๋กœ elfํฌ๋งท์˜ GOT์™€ PLT๊ฐ€ ์–ด๋–ป๊ฒŒ ๊ตฌํ˜„๋˜๊ณ  ๊ตด
๋Ÿฌ๊ฐ€๋Š”์ง€์— ๋Œ€ํ•œ ์ด์•ผ๊ธฐ์ธ๋ฐ์š”.. ๊ฐœ๋…์€ ๊ฐ„๋‹จํ•œ๋ฐ ๋‚ด์šฉ์ด ์ข€๋งŽ๊ตฐ์š”..ใ… ใ… ..
์ €๋„ ์‹œ๊ฐ„๋‚˜๋ฉด ๊ณต๋ถ€ํ•˜๋ฉด์„œ ์ •๋ฆฌํ•ด๋ณด๊ณ ์‹ถ์€๋ฐ๋ง์ด์ฃ ..ใ… ใ… 

Junyeong Bak

unread,
Jul 27, 2010, 9:50:30โ€ฏPM7/27/10
to osin...@googlegroups.com
์ „์— elf ๊ด€๋ จ ํ•ด์„œ ์กฐ๊ธˆ ๋ณด๋‹ค๊ฐ€ ๋ง์•„์„œ ๋” ํ—ค๊ฐˆ๋ฆฐ๊ฑฐ ๊ฐ™์Šต๋‹ˆ๋‹ค.

์ด๋ฒˆ ๊ธฐํšŒ์— ํ•œ๋ฒˆ ๋” ๋ด์•ผ ํ•  ๊ฒƒ ๊ฐ™์•„์š”~~

์ด๊ณณ์—์„œ ์ด๋ฃจ์–ด์ง„ ์งˆ๋ฌธ๋“ค์€ ์ œ๊ฐ€ ํ•˜๊ณ  ์žˆ๋Š” job๊ณผ๋Š” ๋ฌด๊ด€?ํ•œ ์งˆ๋ฌธ ์ธ ๊ฑฐ ๊ฐ™์•„์š”

๋ญ ํ•™๋ฌธ์ด๋ผ๋Š”๊ฒŒ ์„œ๋กœ ์—ฐ๊ฒฐ๋˜์–ด ์žˆ๊ธด ํ•˜์ง€๋งŒ์š” ์ง์ ‘์ ์ด์ง„ ์•Š์€ ๊ฑฐ ๊ฐ™์Šต๋‹ˆ๋‹ค.

ํ•˜๋Š” ์ผ์€ ๋ถˆํ–‰ํ•˜๊ฒŒ๋„ ์œ„๋‹จ ์ผ์„ ํ•˜๊ณ  ์žˆ๊ตฌ์š”.. ์ •๋ง ๋ถˆํ–‰ ํ•ฉ๋‹ˆ๋‹ค.. ใ…Žใ…Ž

์ข‹์•„๋ผ ํ•˜๋Š” ๋ถ„์•ผ๋Š” ์•„๋ž˜ ๋‹จ ๋™๋„ค ์—์„œ ๋Œ์•„๊ฐ€๋Š” ์ผ์ด ๋Œ€ํ•ด ๊ถ๊ธˆํ•ด ํ•˜๋Š” ๊ฑด๋ฐ ๋ง์ž…๋‹ˆ๋‹ค..

์š”์ฆ˜ ๋‹ค์‹œ linux kernel source์™€ ๊ทธ ๋•Œ ๊ทธ ๋•Œ ์ˆœ๊ฐ„ ์ˆœ๊ฐ„ ๋ถ€์กฑํ•œ ์ง€์‹์œผ๋กœ ์ƒ๊ฐ๋‚œ system ๋‹จ์— ๊ถ๊ธˆํ•œ ๋ถ€๋ถ„์„ ๋ณด๊ธด ํ•˜์ง€๋งŒ์š”

์ผ์„ ํ•˜๋ ค๋‚˜ ใ…Ž ์‹œ๊ฐ„์„ ๋‚ด๊ธฐ๊ฐ€ ์—ฌ๊ฐ„ ์‰ฌ์šด์ผ์ด ์•„๋‹ˆ๋”๋ผ๊ตฌ์š”.. ๊ทธ๋ž˜๋„ ์š” ์•„๋ž˜๋‹จ ๋™๋„ค์—์„œ ๋…ธ๋Š” ๊ฒŒ ์ข‹์•„์„œ์š” ใ…Ž


2010/7/28 Min Lee <min...@gatech.edu>
Reply all
Reply to author
Forward
0 new messages