Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

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()
{


Ïà¹ØÎĵµ£º

linux ϵͳµ÷ÓÃÁбí /usr/include/asm/unistd.h


Ò»¡¢½ø³Ì¿ØÖÆ£º
fork
´´½¨Ò»¸öнø³Ì
clone
°´Ö¸¶¨Ìõ¼þ´´½¨×Ó½ø³Ì
execve
ÔËÐпÉÖ´ÐÐÎļþ
exit
ÖÐÖ¹½ø³Ì
_exit
Á¢¼´ÖÐÖ¹µ±Ç°½ø³Ì
getdtablesize
½ø³ÌËùÄÜ´ò¿ªµÄ×î´óÎļþÊý
getpgid
»ñȡָ¶¨½ø³Ì×é±êʶºÅ
setpgid
ÉèÖÃÖ¸¶¨½ø³Ì×é±êÖ¾ºÅ
getpgrp
»ñÈ¡µ±Ç°½ø³Ì×é±êʶºÅ
setpgrp
ÉèÖõ±Ç°½ø³Ì×é±êÖ¾ºÅ
g ......

ËÄ´¨¸ßУЭͬͨÐŲ¦ºÅÆ÷linuxÎÞ·¨ÉÏÍø½â¾ö·½·¨Á½Ôò~

     Èç¹ûÄãÊÇËÄ´¨Ñ§Éú£¬Èç¹ûÄãÊDz¦ºÅÉÏÍø£¬Èç¹ûÄãÏëѧlinux¡£ÄÇôЭͬͨÐŲ¦ºÅÆ÷Ò»¶¨ÈÃÄãÍ´²»ÓûÉú~~~
 µÚÒ»ÖÖ·½·¨£º×ÔÁ¦¸üÉú£¬ÐéÄâ»ú´úÀí·¨
     Õâ·½·¨¾ø¶Ô¿ÉÒÔÈÃÄãÔÚlinuxÏÂÉϵÃÁËÍø£¬µ«·½·¨ºÃ»µ£¬ÒÔ¼°ÊÇ·ñ²ÉÓÃÄú×Ô¼ºµàÁ¿~
      Ϊ´ËÄãÐèÒªÏ ......

ǶÈëʽLinuxϵͳÂþ̸

 
ǶÈëʽLinuxϵͳÂþ̸
 
ÊÂÎï×ÜÓиöºËÐÄ£¬¸´ÔÓµÄÊÂÎï×Ü¿ÉÒÔÄ£¿é»¯¡¢²ã´Î»¯£¬Ç¶Èëʽ
LinuxÒ²Èç´Ë¡£Ñ§Ï°Ç¶ÈëʽLinuxÀ§ÄÑ£¬Ö÷ÒªÒòÎªÉæ¼°ÖªÊ¶ºÍ¸ÅÄî¹ý¶à£¬¼´±È½Ï¸´ÔÓ£¬ËùÒÔѧϰǶÈëʽLinuxµÄ¾ÍÐèÒªÕÒµ½ºËÐÄ£¬ÐèҪģ¿é»¯£¬ÐèÒª½øÐвã´Î»®·Ö¡£
 
 
ǶÈëʽLinuxϵͳ×öÄ£¿é»¯´¦Àí¿É»®·ÖΪBootloader£¨ ......

linux±Ê¼Ç¡¾×ª¡¿


linuxĿ¼¼Ü¹¹
/   ¸ùĿ¼
/bin    ³£ÓõÄÃüÁî
binary file µÄÄ¿錄
/boot   ´æ·ÅϵͳÆô¶¯Ê±±ØÐë¶ÁÈ¡µÄµµ°¸£¬°üÀ¨ºËÐÄ
(kernel) ÔÚÄÚ
     /boot/grub/menu.lst   GRUBÉèÖÃ
     /boot/vmlinuz   ÄÚºË
  ......

Linux ·¢Ðа汾һÀÀ

ʲôÊÇLinux£¿
Ò²ÐíºÜ¶àÈ˻᲻мµÄ˵£¬Linux²»¾ÍÊǸö²Ù×÷ϵͳô¡£´í£¡Linux²»ÊÇÒ»¸ö²Ù×÷ϵͳ£¬ÑϸñÀ´½²£¬LinuxÖ»ÊÇÒ»¸ö²Ù×÷ϵͳÖеÄÄںˡ£ÄÚºËÊÇʲô£¿Äں˽¨Á¢Á˼ÆËã»úÈí¼þÓëÓ²¼þÖ®¼äͨѶµÄƽ̨£¬ÄÚºËÌṩϵͳ·þÎñ£¬±ÈÈçÈÎÎñµ÷¶È£¬Îļþ¹ÜÀí¡¢ÐéÄâÄÚ´æ¡¢É豸I/OµÈ¡£
LinuxÄں˵Ŀª·¢ÒѾ­¾­ÀúÁËÒ»¸öÂþ³¤µÄ¹ý³Ì£¬×î³õÊÇ L ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ