linux¶¯Ì¬¿âµÄ±àÒëÓëʹÓÃ
ÔÎĵØÖ·£ºhttp://hi.baidu.com/linuxlife/blog/item/0d3e302ae2384d3a5343c1b1.html
LinuxÏµĶ¯Ì¬¿âÒÔ.soΪºó׺£¬ÎÒÒ²Êdzõ´ÎÔÚLinuxÏÂʹÓö¯Ì¬¿â£¬Ð´Ò»µãÈëÃŲ½Ö裬ÒÔ±ãÒÔºóÄÜ·½±ãʹÓá£
µÚÒ»²½£º±àдLinux³ÌÐò¿â
Îļþ1.¶¯Ì¬¿â½Ó¿ÚÎļþ
//¶¯Ì¬¿â½Ó¿ÚÎļþgetmaxlen.h
#ifndef _GETMAXLEN_H_
#define _GETMAXLEN_H_
int getMaxLen(int *sel,int N);
#endif
Îļþ2.¶¯Ì¬¿â³ÌÐòʵÏÖÎļþ
//¶¯Ì¬¿â³ÌÐòʵÏÖÎļþgetmaxlen.c
#include "getmaxlen.h"
int getMaxLen(int *sel,int N)
{
int n1=1,n2=1;
for(int i=1;i<N;i++)
{
if(sel[i]>sel[i-1])
{
n2 ++;
if(n2 > n1)
{
n1 = n2;
}
}
else
{
n2 = 1;
}
}
return n1;
}
µÚ¶þ²½£º±àÒëÉú³É¶¯Ì¬¿â
gcc getmaxlen.c –fPIC –shared –o libtest.so
ÓÉÒÔÉÏÃüÁîÉú³É¶¯Ì¬¿âlibtest.so£¬ÎªÁ˲»ÐèÒª¶¯Ì¬¼ÓÔØ¶¯Ì¬¿â£¬ÔÚÃüÁîʱÐèÒÔlib¿ªÍ·ÒÔ.soΪºó׺¡£
–fPIC£º±íʾ±àÒëΪλÖöÀÁ¢µÄ´úÂ룬²»ÓôËÑ¡ÏîµÄ»°±àÒëºóµÄ´úÂëÊÇλÖÃÏà¹ØµÄËùÒÔ¶¯Ì¬ÔØÈëʱÊÇͨ¹ý´úÂ뿽±´µÄ·½Ê½À´Âú×㲻ͬ½ø³ÌµÄÐèÒª£¬¶ø²»ÄÜ´ïµ½ÕæÕý´úÂë¶Î¹²ÏíµÄÄ¿µÄ¡£
–shared£ºÖ¸Ã÷±àÒë³É¶¯Ì¬¿â¡£
µÚÈý²½£ºÊ¹Óö¯Ì¬¿â
1. ±àÒëʱʹÓö¯Ì¬¿â
Îļþ1.¶¯Ì¬¿âʹÓÃÎļþtest.c
//ʹÓö¯Ì¬¿âlibtest.so,¸ÃÎļþÃûΪtest.c
#include "getmaxlen.h"
int main()
{
Ïà¹ØÎĵµ£º
Service Discovery Protocol(SDP)ÌṩһÖÖÄÜÁ¦£¬ÈÃÓ¦ÓóÌÐòÓз½·¨·¢ÏÖÄÄÖÖ·þÎñ¿ÉÓÃÒÔ¼°ÕâÖÖ·þÎñµÄÌØÐÔ¡£
·þÎñ·¢ÏÖÐÒé(SDP»òBluetooth SDP)ÔÚÀ¶ÑÀÐÒéÕ»ÖжÔÀ¶ÑÀ»·¾³ÖеÄÓ¦ÓóÌÐòÓÐÌØÊâµÄº¬Ò⣬·¢ÏÖÄĸö·þÎñÊÇ¿ÉÓõĺÍÈ·¶¨ÕâЩ¿ÉÓ÷þÎñµÄÌØÕ÷¡£SDP¶¨ÒåÁËbluetooth client·¢ÏÖ¿ÉÓÃbluetooth server·þÎñºÍËüÃǵÄÌØÕ÷µÄ·½·¨¡£ ......
Ò»¡¢½ø³Ì¿ØÖÆ£º
fork
´´½¨Ò»¸öнø³Ì
clone
°´Ö¸¶¨Ìõ¼þ´´½¨×Ó½ø³Ì
execve
ÔËÐпÉÖ´ÐÐÎļþ
exit
ÖÐÖ¹½ø³Ì
_exit
Á¢¼´ÖÐÖ¹µ±Ç°½ø³Ì
getdtablesize
½ø³ÌËùÄÜ´ò¿ªµÄ×î´óÎļþÊý
getpgid
»ñȡָ¶¨½ø³Ì×é±êʶºÅ
setpgid
ÉèÖÃÖ¸¶¨½ø³Ì×é±êÖ¾ºÅ
getpgrp
»ñÈ¡µ±Ç°½ø³Ì×é±êʶºÅ
setpgrp
ÉèÖõ±Ç°½ø³Ì×é±êÖ¾ºÅ
g ......
1. Ubuntu
Ubuntu ϵͳÆô¶¯ÏȶÁÎļþ/etc/event.d/rc-default ÎļþÀ´¶ÁÒªÏÈÖ´ÐеĿª»úÎļþ£¬rc-default½Å±¾ÖÐÓÐÌõ¼þ/etc/inittabÈç¹û´æÔÚÔòÏÈÖ´ÐÐ/etc/inittab·ñÔòÏÈÖ´ÐÐ/etc/rc2.d.ÓÉÓÚ/etc/inittabÔÚUbuntuÖв»´æÔÚ£¬ËùÒÔÏÈÖ´ÐÐrc2.d.¼´¿ª»úÎļþºÍ·þÎñ¿ÉдÔÚ¸ÃĿ¼Ï£¨·þÎñÆô¶¯½Å±¾´æ·ÅµÄλÖã©
2. SUSE
SUSEÏµÍ ......
Ñ¡¶¨Ðеķ¶Î§£º£¬¶ººÅ
$ sed -n '/test/,/check/p'
example--ËùÓÐÔÚÄ£°åtestºÍcheckËùÈ·¶¨µÄ·¶Î§ÄÚµÄÐж¼±»´òÓ¡¡£
$ sed -n '5,/^test/p'
example--´òÓ¡´ÓµÚÎåÐпªÊ¼µ½µÚÒ»¸öÒÔtest¿ªÊ¼µÄÐÐÖ®¼äµÄËùÓÐÐС£
$ sed '/test/,/check/s/$/sed te ......
ÍØ²¨±ü³Ð²»¶Ï¿ªÍؽøÈ¡µÄ¾«Éñ£¬ÔÚ¼¼ÊõÑз¢ºÍÖ§³ÖÉϲ»¶ÏµÄͶÈëÈËÁ¦ÎïÁ¦£¬Á¦ÇóÔÚ²»¶Ï±ä»¯µÄÊг¡ÐèÇóÖУ¬´ïµ½100%µÄ¿Í»§ÂúÒâ¶È¡£ÔÚ¸Õ¸Õ̤Èë2010Ä꣬¸ù¾Ý¹ýÍùµÄÊг¡µ÷²é£¬½áºÏ¿Í»§µÄÐèÇóºÍ½¨Òé£¬ÍØ²¨ÓʼþÏµÍ³ÍÆ³öÁËLinux_°²ÌÚ°æ±¾£¬×÷ΪдºË͸ø¹ã´ó¿Í»§µÄµÚÒ»·ÝÀñÎï¡£
°²ÌÚ´¦ÀíÆ÷ÊÇ×î½üÊ®Äê²ÅÖð½¥·¢Õ¹ÆðÀ´µÄ£¬ÊÇÓ¢ÌØ¶û ......