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

Linux select()Ïê½â

Linux select()Ïê½â selectϵͳµ÷ÓÃÊÇÓÃÀ´ÈÃÎÒÃǵijÌÐò¼àÊÓ¶à¸öÎļþ¾ä±ú(file descriptor)µÄ״̬±ä»¯µÄ¡£³ÌÐò»áÍ£ÔÚselectÕâÀïµÈ´ý£¬Ö±µ½±»¼àÊÓµÄÎļþ¾ä±úÓÐijһ¸ö»ò¶à¸ö·¢ÉúÁË״̬¸Ä±ä¡£ ÎļþÔÚ¾ä±úÔÚLinuxÀïºÜ¶à£¬Èç¹ûÄãmanij¸öº¯Êý£¬ÔÚº¯Êý·µ»ØÖµ²¿·Ö˵µ½³É¹¦ºóÓÐÒ»¸öÎļþ¾ä±ú±»´´½¨µÄ¶¼Êǵģ¬Èçman socket¿ÉÒÔ¿´µ½“On success, a file descriptor for the new socket is returned.”¶øman 2 open¿ÉÒÔ¿´µ½“open() and creat() return the new file descriptor”£¬ÆäʵÎļþ¾ä±ú¾ÍÊÇÒ»¸öÕûÊý£¬¿´socketº¯ÊýµÄÉùÃ÷¾ÍÃ÷°×ÁË£º int socket(int domain, int type, int protocol); µ±È»£¬ÎÒÃÇ×îÊìϤµÄ¾ä±úÊÇ0¡¢1¡¢2Èý¸ö£¬0ÊDZê×¼ÊäÈ룬1ÊDZê×¼Êä³ö£¬2ÊDZê×¼´íÎóÊä³ö¡£0¡¢1¡¢2ÊÇÕûÊý±íʾµÄ£¬¶ÔÓ¦µÄFILE *½á¹¹µÄ±íʾ¾ÍÊÇstdin¡¢stdout¡¢stderr£¬0¾ÍÊÇstdin£¬1¾ÍÊÇstdout£¬2¾ÍÊÇstderr¡£±ÈÈçÏÂÃæÕâÁ½¶Î´úÂë¶¼ÊÇ´Ó±ê×¼ÊäÈë¶ÁÈë9¸ö×Ö½Ú×Ö·û£º #include #include #include int main(int argc, char ** argv) { char buf[10] = ""; read(0, buf, 9); /* ´Ó±ê×¼ÊäÈë 0 ¶ÁÈë×Ö·û */ fprintf(stdout, "%s\n", buf); /* Ïò±ê×¼Êä³ö stdout д×Ö·û */ return 0; } /* **ÉÏÃæºÍÏÂÃæµÄ´úÂë¶¼¿ÉÒÔÓÃÀ´´Ó±ê×¼ÊäÈë¶ÁÓû§ÊäÈëµÄ9¸ö×Ö·û** */ #include #include #include int main(int argc, char ** argv) { char buf[10] = ""; fread(buf, 9, 1, stdin); /* ´Ó±ê×¼ÊäÈë stdin ¶ÁÈë×Ö·û */ write(1, buf, strlen(buf)); return 0; } ¼ÌÐøÉÏÃæËµµÄselect£¬¾ÍÊÇÓÃÀ´¼àÊÓij¸ö»òijЩ¾ä±úµÄ״̬±ä»¯µÄ¡£selectº¯ÊýÔ­ÐÍÈçÏ£º int select(int nfds, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, struct timeval *timeout); º¯ÊýµÄ×îºóÒ»¸ö²ÎÊýtimeoutÏÔÈ»ÊÇÒ»¸ö³¬Ê±Ê±¼äÖµ£¬ÆäÀàÐÍÊÇstruct timeval *£¬¼´Ò»¸östruct timeval½á¹¹µÄ±äÁ¿µÄÖ¸Õ룬ËùÒÔÎÒÃÇÔÚ³ÌÐòÀïÒªÉêÃ÷Ò»¸östruct timeval tv;È»ºó°Ñ±äÁ¿tvµÄµØÖ·&tv´«µÝ¸øselectº¯Êý¡£struct timeval½á¹¹ÈçÏ£º struct timeval { long tv_sec; /* seconds */ long tv_usec; /* microseconds */ }; µÚ2¡¢3¡¢4Èý¸ö²ÎÊýÊÇÒ»ÑùµÄÀàÐÍ£º fd_set *£¬¼´ÎÒÃÇÔÚ³ÌÐòÀïÒªÉêÃ÷¼¸¸öfd_setÀàÐ͵ıäÁ¿£¬±ÈÈçrdfds, wtfds, exfds£¬È»ºó°ÑÕâ¸ö±äÁ¿µÄµØÖ·&rdfds, &wtfds, &exfds ´«µÝ¸øselectº¯Êý¡£ÕâÈý¸ö²ÎÊý¶¼ÊÇÒ»¸ö¾ä±úµÄ¼¯ºÏ£¬µÚÒ»¸ördfdsÊÇÓÃÀ´±£´æÕâÑùµÄ¾ä±úµÄ£ºµ±¾ä±úµÄ״̬±ä³É¿É¶ÁµÄʱϵͳ¾


Ïà¹ØÎĵµ£º

UNIX/Linux±à³ÌÏà¹Ø¹¤¾ßºÍ×ÊÔ´

×ªÔØÓÚhttp://blog.csdn.net/CLX1314/archive/2006/03/30/643826.aspx
1¡£linux±à³ÌËùÓõÄһЩ¹¤¾ß
GCC ÖÐÎÄÊÖ²á
http://www.nbfan.com/forum/dispbbs....&ID=1433&page=1
GNU make Ö¸ÄÏ
http://www.linuxsir.org/bbs/showthr...&threadid=40431
autoconf-2.57ÊÖ²á(Ó¢ÎÄ)
http://www.gnu.org/software/a ......

Unix/Linux³£ÓÃÃüÁî—±¸·ÝÓëѹËõ

tarÃüÁî
tar¿ÉÒÔΪÎļþºÍĿ¼´´½¨µµ°¸¡£ÀûÓÃtar£¬Óû§¿ÉÒÔÎªÄ³Ò»ÌØ¶¨Îļþ´´½¨µµ°¸£¨±¸·ÝÎļþ£©£¬Ò²¿ÉÒÔÔÚµµ°¸ÖиıäÎļþ£¬»òÕßÏòµµ°¸ÖмÓÈëеÄÎļþ¡£tar×î³õ±»ÓÃÀ´ÔÚ´Å´øÉÏ´´½¨µµ°¸£¬ÏÖÔÚ£¬Óû§¿ÉÒÔÔÚÈκÎÉ豸ÉÏ´´½¨µµ°¸£¬ÈçÈíÅÌ¡£ÀûÓÃtarÃüÁ¿ÉÒÔ°ÑÒ»´ó¶ÑµÄÎļþºÍĿ¼ȫ²¿´ò°ü³ÉÒ»¸öÎļþ£¬Õâ¶ÔÓÚ±¸·ÝÎļþ»ò½«¼¸¸öÎļþ× ......

´ÓWindow¿ª·¢µ½Linux¿ª·¢

´ÓWindow¿ª·¢µ½Linux¿ª·¢
     ÔÚITÕâÐÐÍ·´ò¹ö¶àÄ꣬´ÓDOSµÄ¿ª·¢µ½WindowµÄ¿ª·¢£¬¶¼ÎÞ²»ÊǸú×ÅMicrosoftÅÜ£»µ«×ÐϸÏëÏ룬´ÓMicrosoftµÄ¼¼ÊõÉϵõ½Á˶àÉÙ (µ±È»ÊÇÖ¸ÄÜ׬µ½µÄÉú»î·Ñ)£¬¾Í·¢ÏÖÎÊÌâÀ´ÁË¡£
 
    Èç¹ûÄãÊÇ´ò¹¤µÄ£¬¾ÍÖ»Óй¤×Ê£¬¹¤×ÊÄÜÓжàÉÙ£¬¸÷¹«Ë¾ÓиßÓеͣ¬µ«ÎÒÏë£ ......

linuxÅäÖÃjava»·¾³±äÁ¿(Ïêϸ)

ÏÖÔÚÓÃlinuxµÄÅóÓÑÔ½À´Ô½¶àÁË£¬Ç°¼¸Ìì¾ÍÓÐÁ½¸öÅóÓÑÎÊÎÒlinuxÏÂÔõôÅäÖÃjava»·¾³£¬ÎÒÏ뻹ÓкܶàÅóÓÑÏëÁ˽âѧϰÕâ·½ÃæµÄ¶«Î÷£¬¾Íдһ¸öÍêȫһµãµÄlinux java»·¾³ÅäÖðɣ¬Ï£Íû¶Ô´ó¼ÒÓаïÖú¡£
Ò». ÏÂÔØjdk5.0 for linux
¡¡¡¡µ½sunµÄÖ÷Ò³ http://java.sun.com/j2se/1.5.0/download.jsp ÏÂÔØjdk°²×°Îļþjdk-1_5_0_05-linux-i586 ......

linuxµÄfreeÃüÁîÖУ¬cachedºÍbuffersµÄÇø±ð

linuxµÄfreeÃüÁîÖУ¬cachedºÍbuffersµÄÇø±ð
Free
¡¡¡¡free ÃüÁîÏà¶ÔÓÚtop ÌṩÁ˸ü¼ò½àµÄ²é¿´ÏµÍ³ÄÚ´æÊ¹ÓÃÇé¿ö£º
¡¡¡¡$ free
¡¡¡¡total used free shared buffers cachedMem: 255268 238332 16936 0 85540 126384-/+ buffers/cache: 26408 228860Swap: 265000 0 265000
¡¡¡¡Mem£º±íʾÎïÀíÄÚ´æÍ³¼Æ
¡¡¡¡-/+ buffers/ca ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ