· KLDP.org · KLDP.net · KLDP Wiki · KLDP BBS ·
Shared Stub

Shared library stub ¸¸µé±â


  • Shared library¸¦ ½ÇÇà°¡´ÉÇÑ ÇüÅ·εµ ¸¸µé¾úÀ¸¸é ÁÁ°Ú´Ù´Â »ý°¢ Çغ»Àû ÀÖ½À´Ï±î? ¸Å¿ì Á¦ÇÑÀûÀÎ ºÎºÐÀÌ ÀÖ°í ¾î¼Àºí¸®¸¦ ÀÌÇØÇØ¾ß ÇÏ´Â Á¶°ÇÀÌ ÀÖÁö¸¸ ¹æ¹ýÀÌ ÀÖ½À´Ï´Ù. ÀÏ´Ü ÀÚ½ÅÀÌ ¸¸µç Shared library¸¦ Çϳª °ñ¶ó¼­ ¾Æ·¡ÀÇ ¼Ò½º¸¦ ÇÔ²² ¸µÅ© ÇÕ´Ï´Ù. ´Ü, ¸µÅ©ÇÒ¶§ "-e L_EngineStub" À̶ó´Â ¿É¼ÇÀ» Áֽðí Çغ¸¼¼¿ä. ÀÌÁ¦ ¸µÅ©°¡ µÇ¾ú´Ù¸é ½ÇÇà¼Ó¼ºÀ» ÁÖ½Ã°í ½ÇÇàÇغ¸¼¼¿ä. ÀÌ°ÍÀÌ °¡Àå °£·«ÇÑ Stub ±¸Á¶¸¦ À̽ÄÇÑ°ÍÀÌ µË´Ï´Ù. ÀÀ¿ëÀº ¿©·¯ºÐÀÌ ´Ù¾çÇÏ°Ô Çغ¸½Ã°í ÁÁÀº ÀÀ¿ëÀÌ ÀÖÀ¸¸é ÀÌ°÷¿¡ Àû¾îÁÖ¼¼¿ä. - minzkn

# Code by JaeHyuk Cho <mailto:minzkn@infoeq.com> Made in KOREA
# http://minzkn.pe.ky

.global L_EngineStub

.text
.org 0x0000
L_EngineStub:

        /* Shared library °¡ ½ÇÇàµÉ¶§ offset À» °ËÃâÇϱâ À§ÇÑ trick */
        call 0f
0:
        popl %ecx
        subl $0b, %ecx

        /* write(1, (void *)pMessage, strlen(pMessage)); */
        movl $0x4,%eax
        movl $1, %ebx
        addl $0f, %ecx
        movl $1f - 0f, %edx
        int $0x80

        /* exit(0); */                                      
        movl $1,%eax
        xorl %ebx, %ebx
        int $0x80

        /* while(1); */                                                                                              
        jmp . /* Halt */

0:     /* pMessage */
        .ascii "My shared stub message\n"
        .ascii "Code by JaeHyuk Cho <mailto:minzkn@infoeq.com> Made in KOREA\n"
        .ascii "\n"
1:

# End of source

ID
Password
Join
People who take cat naps don't usually sleep in a cat's cradle.


sponsored by andamiro
sponsored by cdnetworks
sponsored by HP

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2004-12-04 20:46:22
Processing time 0.0014 sec