Linuxƽ̨É϶¯Ì¬Á´½Ó¿âµÄ´´½¨Óë¼ÓÔØ
ÔÚ¶Ájvm´úÂëʱ£¬Ñ§Ï°Á˶ÁÈ¡¶¯Ì¬Á´½Ó¿âµÄ·½·¨¡£ÏÂÃæ¾Í.soÎļþµÄ´´½¨ºÍ¶ÁÈ¡×öÒ»¸ö¼òµ¥µÄ×ܽᡣ
1.´´½¨.soÎļþ
add.h
#ifndef ADD_H
#define ADD_H
int add(int arg1,int arg2);
#endif
add.c
#include "add.h"
int add(int arg1,int arg2)
{
return arg1 + arg2;
}
±àÒëΪ.oÎļþ:
gcc -fPIC -c add.c
Éú³É¿âÎļþ£º
gcc -shared -Wl,-soname,libadd.so.1 -o libadd.so.1.0 add.o
cp libadd.so.1.0 libadd.so
ÕâÑù¾ÍÉú³ÉÁËlibadd.so¿âÎļþ¡£ÐÞ¸ÄLD_LIBRARY_PATH,½«libadd.so¼ÓÈ뵽·¾¶ÖС£
2.¼ÓÔØ.soÎļþ£¬µ÷Óú¯Êý¡£
dltest.c,²Î¿¼man 3 dlopen °ïÖúÎļþÖеÄÀý×Ó¡£
#include <stdio.h>
#include <stdlib.h>
#include <dlfcn.h>
int main(int argc, char **argv)
{
void *handle;
int (*add)(int,int);
char *error;
handle = dlopen ("libadd.so", RTLD_LAZY);
if (!handle) {
fprintf (stderr, "%s\n", dlerror());
exit(1);
}
dlerror(); /* Clear any existing error */
add = dlsym(handle, "add");
if ((error = dlerror()) != NULL) {
fprintf (stderr, "%s\n", error);
exit(1);
}
printf ("%d\n", add(3,5));
dlclose(handle);
return 0;
}
±àÒ룺
gcc -rdynamic -o dltest dltest.c -ldl
Ö´ÐÐdltestµÃµ½½á¹ûΪ8¡£
Ïà¹ØÎĵµ£º
1. ½øÈëµ½vimµÄ°²×°Ä¿Â¼£¬Ò»°ãΪ /usr/share/vim/vim70/
, »òÀàËÆ /usr/share/vim/vim??
/£»
2. Èç¹ûÓÐ .vimrc.vim
Îļþ£¬²éÕÒµ½¸ÃÎļþÖеÄÈçÏÂÄÚÈÝ£º
if has("vms")
set
nobackup " do not keep a backup file, use versions instead
else
set
backup " keep a backup f ......
Linuxϵͳ³öÏÖÎÊÌâʱ£¬ÎÒÃDz»½öÐèÒª²é¿´ÏµÍ³ÈÕÖ¾ÐÅÏ¢£¬¶øÇÒ»¹ÒªÊ¹ÓôóÁ¿µÄÐÔÄܼà²â¹¤¾ßÀ´ÅжϾ¿¾¹ÊÇÄÄÒ»²¿·Ö£¨ÄÚ´æ¡¢CPU¡¢Ó²ÅÌ……£©³öÁËÎÊÌâ¡£ÔÚLinuxϵͳÖУ¬ËùÓеÄÔËÐвÎÊý±£´æÔÚÐéÄâĿ¼/procÖУ¬»»¾ä»°Ëµ£¬ÎÒÃÇʹÓõÄÐÔÄÜ¼à¿Ø¹¤¾ßÈ¡µ½µÄÊý¾Ýֵʵ¼ÊÉϾÍÊÇÔ´×ÔÓÚÕâ¸öĿ¼£¬µ±Éæ¼°µ½ÏµÍ³¸ß¹Àʱ£¬ÎÒÃǾͿÉÒÔÐÞ ......
DNSÅäÖôíÎó
´íÎó1
dns_master_load: *:2: unexpected end of line
´íÎó2
>linux.zzw.com
* Server: 127.0.0.1 *
* Address: 127.0.0.1#53 *
* *
*** server can't find linux.zzw.com: SERVFAIL *
linuxÏ´íÎó²é¿´ /var/log/messages
¸ÃÎļþÏÂÓÐservice named restart µÄÆô¶¯ÈÕÖ¾
µ±¸Ã·þÎñÆô¶¯Ê±£¬¹ý³ÌÈçÏ ......
¾²Ì¬Á´½Ó¿âÊÇÒÔ.a½áβµÄÎļþ,Ò»°ãÊÇÓù¤¾ß½«¶à¸ö.oÎļþºÏ²¢µ½Ò»Æð×é³É¾²Ì¬¿â
¶¯Ì¬Á´½Ó¿âÊÇÒÔ.so½áβµÄÎļþ,ºÍwindowsϵÄdllÎļþÀàËÆ¡£
¾²Ì¬Á´½Ó¿â¶¼¿ÉÒÔÔÚ³ÌÐò±àÒë¹ý³ÌÖÐÓà -L²ÎÊýÀ´Ö¸¶¨ËûÃÇ -L/opt/lib/XXX.a
¶¯Ì¬Á´½Ó¿âÒ»°ãÊÇÔÚLD_LIBRARY_PATHÖÐÀ´Ö¸¶¨ËÑË÷·¾¶,Ò²¿ÉÒÔÔÚ -L/opt/lib ºóÃæ¼ÓÒ»¸ö lXX,¶ÔÓ¦ÁËlibÖеÄXX. ......
LinuxÓëFreeBSD¼ò½é
Linux×÷ΪһÖÖ¿ª·ÅÔ´´úÂëµÄ²Ù×÷ϵͳ£¬×Ô1991ÄêÎÊÊÀÒÔÀ´£¬²»¹ÜÊÇ´Ó¹¦ÄÜÉÏ£¬»¹ÊÇ´ÓÁ÷´«µÄ¹ã¶ÈÉÏ£¬¶¼µÃµ½ÁËÎȲ½µÄÔö³¤¡£Linuxϵͳ°üº¬Á˽¨Á¢InternetÍøÂç»·¾³ËùÓзþÎñµÄÈí¼þ°ü£¬ÈçApache Web·þÎñÆ÷¡¢MAIL·þÎñÆ÷¡¢firewall¡¢Database·þÎñÆ÷µÈ¡£Òò´ËÑо¿Linux²Ù×÷ϵͳϵÄTCP/IPÐÒéÕ»µÄʵÏÖ¾ßÓÐÖØÒ ......