Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö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Äں˵ķ½·¨Ð¡½ázz

¼Ù¶¨Äã»áCÓïÑÔ£¬¶øÇÒÃ÷°×CÓïÑÔÃæÏò¶ÔÏó±à³ÌµÄschme£¬¶Ô²Ù×÷ϵͳ£¨°üÀ¨µ÷¶È£¬ÄÚ´æ·ÖÅ䣬·ÖÒ³£¬Í¬²½£¬etc£©±È½ÏÁ˽⡣ÄÇôÄã¿ÉÒÔ°´ÕÕÈçÏÂ˳ÐòѧϰLinux Äںˡ£
    1.¿´Linux Device DriverÕâ±¾Êé¡£ÕâÊÇΪÁËÈÃÄã¶®µÃ±àÒëÄÚºËÄ£¿éµÄ·½·¨¡£»¹ÓÐΪLinux¸÷ÖÖÉ豸ÁôÏÂһЩӡÏó¡£Í¬Ê±Ò»±é¿´ÊéÒ»±ß¿´Ä³Ð©É豸µÄÔ´´ú ......

linux ssh ³£ÓÃÃüÁî

ssh³£ÓÃÃüÁî
Ŀ¼£º
1. Basic Instructions /»ù±¾Ö¸Áî
2. wget /ÏÂÔØ¹¤¾ß
3. Crontab /¶¨Ê±ÈÎÎñ
4. tar/tar.gz /ѹËõÎļþ
5. vi /±à¼­Æ÷
1. Basic Instructions»ù±¾²Ù×÷ÃüÁî
ͨ³£À´Ëµ£¬Ê¹ÓÃ"$[Instructions] --help"¿ÉÒÔ»ñµÃÒÔϸ÷¸öÃüÁî[instructions]µÄ°ïÖú£¬°üº¬Æä²ÎÊýÁбíµÄ¶¨Òå¡£
-ls Áгöµ±Ç°Îļþ¼Ð ......

linux´ÅÅÌIO²é¿´

hiphop_linux
linux´ÅÅÌIO²é¿´(iostat)
##############
#
#    ²Ù×÷
#
##############
# iostat -x 1 10
Linux 2.6.18-92.el5xen    02/03/2009
avg-cpu:  %user   %nice %system %iowait  %steal   %idle
          ......

linux ²é¿´ CPU£¬ÄÚ´æ£¬ÍøÂçÁ÷Á¿ºÍ´ÅÅÌ I/O

ʹÓÃvmstatÃüÁîÀ´²ì¿´ÏµÍ³×ÊÔ´Çé¿ö
ÔÚÃüÁîÐз½Ê½Ï£¬ÈçºÎ²é¿´CPU¡¢ÄÚ´æµÄʹÓÃÇé¿ö£¬ÍøÂçÁ÷Á¿ºÍ´ÅÅÌI/O£¿
Q: ÔÚÃüÁîÐз½Ê½Ï£¬ÈçºÎ²é¿´CPU¡¢ÄÚ´æµÄʹÓÃÇé¿ö£¬ÍøÂçÁ÷Á¿ºÍ´ÅÅÌI/O£¿
A: ÔÚÃüÁîÐз½Ê½Ï£¬
1. ²é¿´CPUʹÓÃÇé¿öµÄÃüÁî
""ÿ5ÃëË¢ÐÂÒ»´Î£¬×îÓÒ²àÓÐCPUµÄÕ¼ÓÃÂʵÄÊý¾Ý
$ vmstat 5
""top È»ºó°´Shift+P£¬°´ÕÕ½ ......

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ºÅ