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

linux ±à³ÌÖ®¿âµÄʹÓã¨Ñ§Ï°±Ê¼Ç£©

1.¿â¸ÅÊö
¿â¿ÉÒÔ·ÖΪ¾²Ì¬¿âºÍ¶¯Ì¬¿â£¬¾²Ì¬¿â±àÒëʱ±ØÐë´æÔÚ£¬³ÌÐòÔËÐÐʱ²»ÐèÒª¡£
¶¯Ì¬¿âÒ²³Æ¹²Ïí¿â£¬Æä´úÂë²»»áÁ´½Óµ½Ä¿±êÎļþÖ®ÖУ¬Ö»Óе±¶¯Ì¬¿â¿É·ÃÎÊʱ£¬Ó¦ÓóÌÐò²ÅÄÜÕýÈ·µØÖ´Ðж¯Ì¬¿âº¯Êý¡£Ö´Ðж¯Ì¬¿âÓÐÁ½ÖÖ·½Ê½£ºÒþʽµ÷ÓúÍÏÔʾµ÷Óá£Òþʽµ÷ÓÃÒ²³Æ¹²Ïí¿âµÄ¾²Ì¬¼ÓÔØ£¬¶¯Ì¬¿âº¯ÊýÔÚÓ¦ÓóÌÐò¿ªÊ¼Ö´ÐÐʱ»á×Ô¶¯ÔØÈëÄڴ棬½ø³Ì½áÊøÊ±ÓÖ×Ô¶¯Ð¶ÔØ¡£±àÒ뷽ʽÓ뾲̬¿âÒ»Ö¡£ÏÔʾµ÷ÓÃÒ²³Æ¹²Ïí¿âµÄ¶¯Ì¬¼ÓÔØ£¬µ÷ÓÃʱ±ØÐë×ñÊØdlopenµÈº¯ÊýµÄ¹æÔòʵÏÖµ÷Óá£
 
ÔÚUnixÖУ¬Ê¹ÓÃarÃüÁî¿ÉÒÔ´´½¨»ò²Ù×÷¾²Ì¬¿â£¬Æä¸ñʽΪ£º
ar [drqtpmx] [option] archivefile objfile ….
²ÎÊý
ÒâÒå
-r
½«objfileÎļþ²åÈ뾲̬¿âβ»òÌæ»»¾²Ì¬¿âÖÐͬÃûÎļþ
-x
´Ó¾²Ì¬¿âÎļþÖгéÈ¡Îļþobjfile
-t
´òÓ¡¾²Ì¬¿âµÄ³ÉÔ±ÎļþÁбí
-d
´Ó¾²Ì¬¿âÎļþÖÐɾ³ýÎļþobjfile
-s
ÖØÖþ²Ì¬¿âÎļþË÷Òý
-v
´´½¨ÎļþÈßÓàÐÅÏ¢
-c
´´½¨¾²Ì¬¿âÎļþ
 
Àý×Ó£º³éÈ¡¾²Ì¬¿â/usr/lib/lic.aÖеÄÎļþ
# ar –x /usr/lib/libc.a
Àý×Ó£º×éÖ¯Îļþxcvt.oºÍxstat.o´´½¨¾²Ì¬¿âlibccc.a¡£
# ar –r libccc.a xcvt.o xstat.o
 
2. ¾²Ì¬¿â±à³Ì
2.1 Éè¼Æ¿âÔ´Âë
/******pr1.c*****/
void pirnt1()
{
       printf(“this is the first lib src\n”);
}
/*******pr2.c***********/
void print2()
{
       printf(“this is the second lib src\n”);
}
 
2.2. ±àÒëÉú³É¿âÎļþ
gcc –O –c pr1.c pr2.c
·Ö±ð²úÉúpr1.o, pr2.oÎļþ
Á´½Ó¾²Ì¬¿â
ar –rsv libpr.a pr1.o pr2.o
2.3 ²âÊÔ³ÌÐòÔ´Âë
/********main.c************/
int main()
{
       print1();
       print2();
}
2.4 ±àÒëÔËÐÐ
gcc –O –o main main.c –L./ -lpr
 
3. ¶¯Ì¬¿â±à³Ì
3.1 ¿âÔ´Âë
/*******pr1.c********/
int p=2;
void print()
{
       printf(“This is the first dll src!\n”);
}
/*******pr2.c*********/
int p = 3;
void print()
{
       printf(“This is the second dll src!\n”);
}
 
3.2 ±àÒëÉú³É¶¯Ì¬¿â
gcc –O –fpic –shared &n


Ïà¹ØÎĵµ£º

[תÌû]LinuxÇý¶¯¿ª·¢Ñ§Ï°µÄһЩ±ØÒª²½Öè

 1. ѧ»áд¼òµ¥µÄmakefile
2. ±àһЩӦÓÃ
³ÌÐò
£¬¿ÉÒÔÓÃmakefileÅÜÆðÀ´
3. ѧ»áдÇý¶¯
µÄmakefile
4. дһ¼òµ¥charÇý¶¯£¬makefile±àÒëͨ¹ý£¬¿ÉÒÔinsmod£¬ lsmod£¬ rmmod. ÔÚÇý¶¯µÄinitº¯ÊýÀï´òÓ¡hello world£¬insmodºóÓ¦¸ÃÄܹ»Í¨¹ýdmesg¿´µ½Êä³ö
¡£
5. дһÍêÕûÇý¶¯£¬ ¼ÓÉÏread£¬ write£¬ ioctl£¬ pollingµÈ¸ ......

LinuxÄÚºËÎĵµÖ®rbtree.txt

Red-black Trees (rbtree) in Linux
January 18, 2007
Rob Landley <rob@landley.net>
=============================
red-blackÊ÷ÊÇʲôÑùµÄÊ÷£¬ÎªÊ²Ã´ÐèÒªred-blackÊ÷£¿
------------------------------------------------
    red-black tree£¨RBÊ÷£©ÊÇÒ»ÖÖÆ½ºâ¶þ²æÊ÷£¬ËüÖ÷ÒªÓÃÓÚ´æ´¢»òÕß˵ ......

LinuxÏ´ÅÅÌÏà¹Ø²Ù×÷ÃüÁî

²é¿´´ÅÅÌÒÔ¼°·ÖÇøÃüÁ
fdisk -l
Êä³ö½á¹ûÈçÏ£º
-----------------------------------------------------------------------
Disk /dev/sda: 160.0 GB, 160040803840 bytes
255 heads, 63 sectors/track, 19457 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
   Device Boot   ......

Àí½âLinuxµÄÐÔÄÜ


ÏîÄ¿Öг£Óöµ½ÐèÒª¶ÔĿǰÔËÐеÄϵͳ½øÐÐЧÂÊ·ÖÎö£¬»òÅöµ½¿Í»§×ÉѯÈçºÎÓÅ»¯ÏµÍ³µÄЧÂÊÎÊÌâ¡£¸ü¶àµÄÇé¿öÊÇ£¬ÔÚϵͳ³öÏÖÎÊÌâµÄʱºò£¬ÐèÒª·ÖÎöÔ­Òò£¬¶¨Î»ÏµÍ³ ¹ÊÕÏ»òÆ¿¾±£¬µ±È»£¬×îºÃÊÇ¿ÉÒÔÒ»²¢½â¾ö¹ÊÕÏ¡£µ«Êµ¼ÊÉÏ£¬²Ù×÷ϵͳÓÅ»¯ÊÇÒ»¸ö·Ç³£¸´ÔÓµÄÎÊÌ⣬¿öÇÒlinuxÓÐ×Ô¼ºÒ»Ì×ÓбðÓÚÆäËû²Ù×÷ϵͳ¹ÜÀíµÄ»úÖÆ£¬ÓÉ´Ë »áÒýÆðºÜ¶à²»±ØÒ ......

LinuxĿ¼С½â

ÔÚlinuxÖÐÓû§·ÖΪÁ½Àࣺ1¡¢root³¬¼¶Óû§  2¡¢ÆÕͨÓû§
      /bin
  ¡¡¡¡Òýµ¼Æô¶¯ËùÐèµÄÃüÁî»òÆÕͨÓû§¿ÉÄÜÓõÄÃüÁî(¿ÉÄÜÔÚÒýµ¼Æô¶¯ºó)¡£
  ¡¡¡¡/sbin
  ¡¡¡¡ÀàËÆ/bin £¬µ«²»¸øÆÕͨÓû§Ê¹Óã¬ËäÈ»Èç¹û±ØÒªÇÒÔÊÐíʱ¿ÉÒÔʹÓá£
  ¡¡¡¡/etc
  ¡¡¡¡Ìض¨µÄÅ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ