LINUX ¾²Ì¬¿âºÍ¶¯Ì¬¿â
¿âÓж¯Ì¬Ó뾲̬Á½ÖÖ£¬¶¯Ì¬Í¨³£ÓÃ.soΪºó׺£¬¾²Ì¬ÓÃ.aΪºó׺¡£ÀýÈ磺libhello.so libhello.a
1£¬Éú³É¿â
µÚÒ»²½Òª°ÑÔ´´úÂë±àÒï³ÉÄ¿±ê´úÂë¡£ÒÔÏÂÃæµÄ´úÂëΪÀý£¬Éú³ÉÉÏÃæÓõ½µÄhello¿â£º
/* hello.c */
#include
void sayhello()
{
printf("hello,world\n");
}
ÓÃgcc±àÒï¸ÃÎļþ£¬ÔÚ±àÒïʱ¿ÉÒÔʹÓÃÈκÎÈ«·¨µÄ±àÒï²ÎÊý£¬ÀýÈç-g¼ÓÈëµ÷ÊÔ´úÂëµÈ£º
gcc -c hello.c -o hello.o
1£©.Á¬½Ó³É¾²Ì¬¿â
ÏÖÔÚÎÒÃÇ´´½¨libhello¾²Ì¬¿âÎļþ:
$ gcc -c libhello -o libhello.o
$ ar rcs libhello.a libhello.o
ÆäÖÐarÖеÄrcsµÄÒâ˼ÊÇ£º r±íÃ÷½«Ä£¿é
¼ÓÈëµ½¾²Ì¬¿âÖУ¬c±íʾ´´½¨¾²Ì¬¿â£¬s±íʾÉú²úË÷Òý¡£
2£©.Á¬½Ó³É¶¯Ì¬¿â
gcc -fpic/fPIC -c source.c -o source.o
gcc -shared -Wl,-soname,your_soname -o library_name file_list library_list
˵Ã÷:
-fpic»òÕß-fPIC±íÃ÷´´½¨position independent code£¬Õâͨ³£ÊÇ´´½¨¹²Ïí¿â±ØÐëµÄ¡£
-Wl ±íÃ÷¸øÁ´½ÓÆ÷´«ËͲÎÊý£¬ËùÒÔÕâÀï-soname, library_name Ϊ¸øÁ´½ÓÆ÷µÄ²ÎÊý¡£
-shared ±íÃ÷ÊÇʹÓù²Ïí¿â
ÏÂÃæÊÇʹÓÃa.cºÍb.c´´½¨¹²Ïí¿âµÄʾÀý£º
gcc -fPIC -g -c -Wall a
Ïà¹ØÎĵµ£º
ÔÚLinuxÏÂдÁ˸öСµÄsocket³ÌÐò£¬·ÖΪ¿Í»§¶ËºÍ·þÎñÆ÷¶Ë£¬·þÎñ¶Ë¿ªÒ»¸ö¶Ë¿Ú(20000)£¬×öΪһ¸ödaemon£¬µÈ´ý¿Í»§µÄÁ¬½ÓÇëÇó¡£Ò»µ©Óпͻ§Á¬½Ó£¨¿Í»§¶ËµÄIPºÍ¶Ë¿ÚºÅÊDz»¹Ì¶¨µÄ£©£¬·þÎñÆ÷¶Ë´òÓ¡³ö¿Í»§¶ËµÄIPµØÖ·ºÍ¶Ë¿Ú£¬²¢ÇÒÏò¿Í»§¶Ë·¢ËÍ»¶ÓÐÅÏ¢ºÍʱ¼ä¡£
ÏÂÃæÊÇ ......
ÓÐʱsystem.mapÎļþ¿ÉÒÔ°ïÖúÎÒÃÇÀí½âÄں˱àÒ룬Ëü¼Ç¼ÁËËùÓдúÂëµÄÔËÐеØÖ·¡£
system.mapÄÚÈݸñʽΪ£ºÏßÐÔµØÖ· ÀàÐÍ ·ûºÅ
¾ßÌåÄÚÈÝÈçÏ£º
00100000 A phys_startup_32
c0100000 T startup_32
c0100000 A _text &nbs ......
Ò»¡¢Ê²Ã´ÊÇ modules£¿
¡¡¡¡modules µÄ×ÖÃæÒâ˼¾ÍÊÇÄ£¿é£¬ÔÚ´ËÖ¸µÄÊÇ kernel modules£»¼òµ¥À´Ëµ£¬ Ò»¸öÄ£¿éÌṩÁËÒ»¸ö¹¦ÄÜ£¬Èç isofs¡¢minix¡¢nfs¡¢lp µÈµÈ¡£´«Í³À´½²£¬Ä£¿é»¯ÓÐÁ½¸ö·½·¨½â¾ö£º Éè¼ÆÕß¿ÉÒ԰Ѹ÷ÏÄÜ·ÖÀëµ½µ¥¶ÀµÄ½Ð×öÏ̵߳Ĵ¦ÀíÖÐÈ¥£¬»òÕßÊǽ«ÄÚºËÒÔ°üº¬/ÅųýһЩ¹¦Äܵķ½Ê½ÖØÐ±àÒë¡£Èç¹û°Ñ¹¦ÄÜ·ÖÀëµ½Ïß³ ......
LinuxÖеĽø³ÌͨÐÅ
1.¹ÜµÀ
º¯ÊýÔÐÍ£ºint pipe(int filedes[2]);
º¯Êý·µ»ØÖµ£º ÕýÈ··µ»Ø0£»´íÎó·µ»Ø-1
ÆäÖеÄÎļþÃèÊö·ûfiledes[0]ÊÇÓÃÀ´¶ÁÈ¡Êý¾ÝµÄ£¬filedes[1]ÊÇÓÃÀ´Ð´Êý¾ÝµÄ¡£
Àý×Ó1£º
#include<stdio.h>
#include<stdlib.h>
#include<u ......
ʹÓÃlinux²Ù×÷ϵͳ£¬ÄÑÃâÓöµ½Ò»Ð©Èí¼þ"¿¨¿Ç"µÄÎÊÌ⣬Õâʱ¾ÍÐèҪʹÓÃlinuxÏÂÇ¿´óµÄkillÃüÁîÀ´½áÊøÏà¹Ø½ø³Ì¡£ÕâÔÚlinuxϵͳÏÂÊǼ«ÆäÈÝÒ×µÄÊÂÇ飬ÄãÖ»ÐèÒªkill xxx¼´¿É£¬ÕâÀïxxx´ú±íÓë´ËÈí¼þÔËÐÐÏà¹ØµÄ½ø³ÌPIDºÅ¡£
Ê×ÏÈ£¬ÎÒÃÇÐèҪʹÓÃlinuxÏÂÁíÍâÒ»¸öpsÃüÁî²éÕÒÓë½ø³ÌÏà¹ØµÄPIDºÅ£ºps aux | grep pr ......