ΪʲôLinuxϵͳµ÷Ó÷µ»ØÀàÐÍ¡°long¡±£¿
| 
                         ÎÒÕýÔÚÔĶÁ LinuxÄں˿ª·¢,µÚ3°æ,Á˽âÄÚºËʵÏÖºÍÉè¼Æ.µÚ5ÕÂÊǹØÓÚϵͳµ÷ÓÃ.×÷ÕßÏÔʾÁËʹÓÃSYSCALL_DEFINE0ºê¶¨ÒåµÄϵͳµ÷ÓÃÉùÃ÷µÄʾÀý,¸ÃºêÔÚ¸ÃÌØ¶¨Ê¾ÀýÖÐÕ¹¿ªÎª£º asmlinkage long sys_getpid(void) Ëû½øÒ»²½Ëµ£º 
 Ëû²»»á±ÈÕâ¸üÉî¿Ì,ÎÒ²»ÄÜÍêÈ«Àí½âΪʲô»áÕâÑù.ΪʲôҪʹÓÃÓë32λºÍ64λϵͳÏà¹ØµÄ³¤ÆÚ¹ØÏµ£¿ÎªÊ²Ã´ÎÒÃDz»ÄÜ·µ»ØÒ»¸ö¼òµ¥µÄint£¿ ½â¾ö·½·¨ÒòΪÔÚÐí¶à 64 bits»úÆ÷(ÀýÈçx86-64)ÉÏÓÃÓÚ³£¼ûµÄGCC±àÒëÆ÷sizeof(int)== 4µ«ÊÇsizeof(void *)== 8&&µÄsizeof(³¤)== 8;Õâ±»³ÆÎªI32LP64(»òÖ»ÊÇLP64) data modelÀýÈç,ÔÚLinux / x86-64ϵͳÉϱàÒë²¢ÔËÐÐÒÔϳÌÐò£º #include<stdio.h>
#include<stdint.h>
int main ()
{
  printf ("sizeof(int)=%dn",(int) sizeof (int));
  printf ("sizeof(intptr_t)=%dn",(int) sizeof (intptr_t));
  printf ("sizeof(short)=%dn",(int) sizeof (short));
  printf ("sizeof(long)=%dn",(int) sizeof (long));
  printf ("sizeof(long long)=%dn",(int) sizeof (long long));
  printf ("sizeof(void*)=%dn",(int) sizeof (void *));
  return 0;
} 
 ÔÚÎÒµÄϵͳÉÏʹÓÃgcc -Wall s.c -o±àÒë²¢ÔÚÎÒµÄDebian / Sid / x86-64(i3770k´¦ÀíÆ÷,GCC 4.8.2)ÉÏÔËÐÐ./s£º sizeof(int)=4 sizeof(intptr_t)=8 sizeof(short)=2 sizeof(long)=8 sizeof(long long)=8 sizeof(void*)=8 ÔÚ32λģʽÏÂʹÓÃgcc -m32 -Wall s.c -o s32±àÒë²¢ÔËÐÐ./s32£º sizeof(int)=4 sizeof(intptr_t)=4 sizeof(short)=2 sizeof(long)=4 sizeof(long long)=8 sizeof(void*)=4 Èç¹ûʹÓÃgcc -mx32 -O3 -Wall s.c -o sx32±àÒëx32,Îҵõ½ÏàͬµÄÊä³ö£¡ BTW,Ò²Ðí¸üºÃµÄÎÊÌâÊÇΪʲô²»Ê¹ÓÃintptr_t ¡.ÎÒ²»ÖªµÀ(¿ÉÄÜÊÇÒ»¸öϰ¹ßÎÊÌâ; when LinusÊ×ÏÈ¿ªÊ¼±àдËûµÄÄÚºË,C99±ê×¼¶¨Òå< stdint.h>ºÍintptr_t-²»´æÔÚ). ÔĶÁ¸ü¶à¹ØÓÚABIs,ÌØ±ðÊÇ×ÐϸÔĶÁX86-64 ABI(Áí¼ûx32 ABI ¡)ºÍx86 calling conventionsµÄwikipage. £¨±à¼£ºÀ³ÎßÕ¾³¤Íø£© ¡¾ÉùÃ÷¡¿±¾Õ¾ÄÚÈݾùÀ´×ÔÍøÂ磬ÆäÏà¹ØÑÔÂÛ½ö´ú±í×÷Õ߸öÈ˹۵㣬²»´ú±í±¾Õ¾Á¢³¡¡£ÈôÎÞÒâÇÖ·¸µ½ÄúµÄȨÀû£¬Ç뼰ʱÓëÁªÏµÕ¾³¤É¾³ýÏà¹ØÄÚÈÝ!  | 
                  
- linux ¨C shell½Å±¾ÈçºÎÅжÏËüÊÇ·ñÔÚÖ§³Ö256É«µÄxterm´°¿ÚÖÐ
 - ÈçºÎÇ¿ÖÆJavaÎı¾¿¹¾â³Ý£¿
 - linux ¨C ÓÐûÓÐ°ì·¨Ç¿ÖÆ¿ìËÙÄÚÈÝÀàÐÍÈ·¶¨ÂýËÙÎļþϵͳ
 - ÈçºÎÔÚIEEE802.11¿ò¼ÜÄÚÕÒµ½·â×°ÐÒ飿
 - linuxÏÂlogrotateÅäÖúÍÀí½â---ת
 - ÔÚlinuxÖв¢Ðд¦Àí
 - LINUX½Ì³Ì£ºMakefile¼òµ¥ÈëÃŽ̳Ì
 - linux ¨C ÈçºÎ´Ó¶à¸öÎļþÖÐÌáȡһÁÐ,²¢½«ÕâЩÁÐÕ³Ìùµ½Ò»¸öÎÄ
 - linux Ð¶ÔØphp
 - ʹÓÃgdb½øÐÐʺóÄÚ´æÐ¹Â©ËÑË÷(ºÍ·ÖÎö)
 
- linux ¨C Óëext4½áºÏʹÓõÄ͸Ã÷ѹËõÎļþϵͳ
 - c ¨C ÈçºÎµÈ´ý´°¿ÚÓ³ÉäºÍ¿É¼û
 - /etc/sudoers: syntax error near line 27 ½â¾ö·½
 - linux ¨C cgroups¸ôÀë(·ÖÀë×é½ø³Ì)
 - linux¶¨Ê±ÈÎÎñÖ®crontab
 - ΪʲôÎÒ»áÔÚLinuxÉÏʹÓÃWindows Server£¿
 - ÔÚLinuxÉϰ²×°RʱµÄÅäÖôíÎó
 - Linux£ºpython£ºÔÚraw_input()֮ǰÇå³ýÊäÈ뻺³åÇø
 - ÈçºÎÔÚLinux(²»ÊÇGNOME»òKDE)Öн«shift-spaceÖØÐÂ
 - ѰÕÒÒ»ÖÖ°²È«µÄ·½Ê½À´²¿ÊðPHP´úÂë
 
