Messages in this thread | | | Date | 8 Sep 1999 13:13:23 -0000 | From | zslinux@263 ... | Subject | for a help |
| |
Dear Sir, During my reading the code of Linux,I always encouter the programming like this" __asm__ __volatile__( "movl %%esp,%%esi\n\t" "int $0x80\n\t" /* Linux/i386 system call */ "cmpl %%esp,%%esi\n\t" /* child or parent? */ "je 1f\n\t" /* parent - jump */ /* Load the argument into eax, and push it. That way, it does * not matter whether the called function is compiled with * -mregparm or not. */ "movl %4,%%eax\n\t" "pushl %%eax\n\t" "call *%5\n\t" /* call fn */ "movl %3,%0\n\t" /* exit */ "int $0x80\n" "1:\t" :"=&a" (retval), "=&S" (d0) :"0" (__NR_clone), "i" (__NR_exit), "r" (arg), "r" (fn), "b" (flags | CLONE_VM) : "memory"); If you like, can you explain the :"=&a" (retval), "=&S" (d0) :"0" (__NR_clone), "i" (__NR_exit), "r" (arg), "r" (fn), "b" (flags | CLONE_VM) : "memory"); for me,just the Language grammer,what does it mean? Thanks very much. BTW, how can I get the info of this address,and try myself to help others? Zhangsu
_____________________________________________ Ê׶ŒÔÚÏß--ÏÈœøÖйúÈ˵ÄÍøÉÏŒÒÔ° http://www.263.net Ãâ·ÑÓÊÏä ÓÊŒþÔÓÖŸ Ç©ÃûÓÊŒþ ÓÊŒþŒÓÃÜ ÓÊŒþ×·Éíºô ËÑË÷ÒýÇæ žöÈËÕŸµã ÔÚÏßÓÎÏ· ÍøÉÏÁÄÌì ÍøÉϹҺŠœðÈÚÍõ¹ú ÔÚÏßɱ¶Ÿ ÌøÔéÊг¡ ÈíŒþÏÂÔØ ÐÝÏÐÓéÀÖ
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
| |