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

½â»ó—LinuxÖеĵØÖ·¿Õ¼ä£¨Ò»£©×ªÔØ

ÓÐÕâôһϵÁеÄÎÊÌ⣬ÊÇ·ñÔÚÀ§ÈÅ×ÅÄ㣺Óû§³ÌÐò±àÒëÁ¬½ÓÐγɵĵØÖ·¿Õ¼äÔÚʲô·¶Î§ÄÚ£¿Äں˱àÒëºóµØÖ·¿Õ¼äÔÚʲô·¶Î§ÄÚ£¿Òª¶ÔÍâÉè½øÐзÃÎÊ£¬I/OµÄµØÖ·¿Õ¼äÓÖÊÇʲôÑùµÄ£¿
ÏȻشðµÚÒ»¸öÎÊÌâ¡£Linux×î³£¼ûµÄ¿ÉÖ´ÐÐÎļþ¸ñʽΪelf(Executable and Linkable Format)¡£ÔÚelf¸ñʽµÄ¿ÉÖ´ÐдúÂëÖУ¬ld×ÜÊÇ´Ó0x8000000¿ªÊ¼°²ÅųÌÐòµÄ“´úÂë¶Î”£¬¶Ôÿ¸ö³ÌÐò¶¼ÊÇÕâÑù¡£ÖÁÓÚ³ÌÐòÖ´ÐÐʱÔÚÎïÀíÄÚ´æÖеÄʵ¼ÊµØÖ·£¬ÔòÓÉÄÚºËΪÆä½¨Á¢ÄÚ´æÓ³ÉäʱÁÙʱ·ÖÅ䣬¾ßÌåµØÖ·È¡¾öÓÚµ±Ê±Ëù·ÖÅäµÄÎïÀíÄÚ´æÒ³Ãæ¡£
ÎÒÃÇ¿ÉÒÔÓÃLinuxµÄʵÓóÌÐòobjdump¶ÔÄãµÄ³ÌÐò½øÐз´»ã±à£¬´Ó¶øÖªÏþÆäµØÖ··¶Î§¡£
ÀýÈ磺¼Ù¶¨ÎÒÃÇÓÐÒ»¸ö¼òµ¥µÄC³ÌÐòHello.c
  # include <stdio.h>
  greeting ( )
  {
              printf(“Hello,world!\n”);
  }
  main()
   {
         greeting();
   }
Ö®ËùÒÔ°ÑÕâÑù¼òµ¥µÄ³ÌÐòд³ÉÁ½¸öº¯Êý£¬ÊÇΪÁË˵Ã÷Ö¸ÁîµÄ×ªÒÆ¹ý³Ì¡£ÎÒÃÇÓÃgccºÍld¶ÔÆä½øÐбàÒëºÍÁ¬½Ó£¬µÃµ½¿ÉÖ´ÐдúÂëhello¡£È»ºó£¬ÓÃLinuxµÄʵÓóÌÐòobjdump¶ÔÆä½øÐз´»ã±à£º
$objdump –d hello
µÃµ½µÄÖ÷ҪƬ¶ÎΪ£º
08048568 <greeting>:
   8048568:     pushl  %ebp
   8048569:     movl  %esp, %ebp
   804856b:     pushl  $0x809404
   8048570:     call    8048474  <_init+0x84>
   8048575:     addl   $0x4, %esp
   8048578:     leave
   8048579:     ret
   804857a:     movl  %esi, %esi
   0804857c <main>:
   804857c:     pushl  %ebp
   804857d:     movl  %esp, %ebp
   804857f:     call    8048568  <greeting>
   8048584:   


Ïà¹ØÎĵµ£º

LinuxÄÚ´æ¿Õ¼ä·ÃÎÊÔý¼Ç(ת)

http://blog.chinaunix.net/u/25764/showart_1882931.html
Òý£º±¾À´´òË㽫Õⲿ·ÖÄÚÈݲ¢Èëµ½¡¶The Linux Kernel Module Programming Guide±Ê¼Ç¡·ÖÐÈ¥£¬µ«ÊÇÏëÏÂÄÚ´æ¿Õ¼ä¹ÜÀí·ÃÎÊÏ൱»ù´¡ÖØÒª¶øÇÒÄÚÈÝÁ¿½Ï´ó£¬ËùÒԾ͵¥¶À¼Ç¼¡£ÔÚ¹ýÈ¥Ò»ÄêÀÓÉÓڳɹ¦¿ª·¢¹ý¼¸¸öÆÄΪ¸´ÔÓµÄÉ豸Çý¶¯£¬¾Í×ÔÒÔÎªÕÆÎÕÁËÇý¶¯¿ª·¢µÄ·½·¨ºÍ¼¼ÇÉ£¬ÊÂÊ ......

Linux ÄÚºËÓжàÉÙ´úÂëÊÇÀ´×Ô»ªÈ˵űÏ×£¿

ÀïÓÐÒ»¸öͳ¼Æ http://www.remword.com/kps_result/china.php
µã»÷Á¬½Ó½øÈ¥£¬¿ÉÒÔ¿´Äܵ½£º
Total patch sets of this kernel release: 157236
5337 person contribute their works to this kernel release.
Averagely, every person committed 29 patch sets.
299(5.60%) Chinese people contribute 6185(3.93%) patch ......

Linux TCP/IPЭÒéÕ»µÄͨÓñàÂëģʽ

ת×Ô£ºhttp://blog.chinaunix.net/u/26185/showart_475934.html
ºÍÆäËûÄں˹¦ÄÜÒ»Ñù£¬Ã¿¸öÍøÂ繦Äܶ¼ÊÇÄں˳ÉÔ±ÖеÄÒ»¸ö¡£Òò´Ë£¬Ëü±ØÐëºÏÀíÇÒ¹«Æ½µÄʹÓÃÄÚ´æ,
CPUºÍÆäËû¹²Ïí×ÊÔ´¡£¾ø´ó¶àÊý¹¦Äܲ¢·ÇÄÚºËÖÐÒ»¶Î¶ÀÁ¢µÄ³ÌÐò£¬¶øÊǸù¾Ý¸Ã¹¦Äܶø»ò¶à»òÉÙµÄÓëÄÚºËÖÐÆäËû²¿·ÖÏ໥ӰÏì¡£Òò´ËËüÃÇ×ÜÊÇÊÔͼ£¬¾¡¿ÉÄܵģ¬Ê¹ÓÃ
ÀàËÆµÄÌ ......

linuxÃæÊÔÌâ²Î¿¼´ð°¸

Ò»£®Ìî¿ÕÌ⣺
1. ÔÚLinuxϵͳÖУ¬ÒÔ Îļþ ·½Ê½·ÃÎÊÉ豸 ¡£
2. LinuxÄÚºËÒýµ¼Ê±£¬´ÓÎļþ /etc/fstab ÖжÁȡҪ¼ÓÔØµÄÎļþϵͳ¡£
3. LinuxÎļþϵͳÖÐÿ¸öÎļþÓà i½Úµã À´±êʶ¡£
4. È«²¿´ÅÅÌ¿éÓÉËĸö²¿·Ö×é³É£¬·Ö±ðΪÒýµ¼¿é ¡¢×¨ÓÃ¿é ¡¢ i½Úµã±í¿é ºÍÊý¾Ý´æ´¢¿é¡£
5. Á´½Ó·ÖΪ£º Ó²Á´½Ó ºÍ ·ûºÅÁ´½Ó ¡£
6. ³¬¼¶¿é°üº¬ÁËi½ ......

LinuxÐźÅ

from: http://cc.byexamples.com/20070520/tap-the-interrupt-signal/
When you hit control+c, you are actually send a SIGINT ( Interrupt signal ) to your program. By default, your program will be terminated after receiving SIGINT. But you can change the way of handling Interrupt signal.
Some of the a ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ