Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö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 <stdio.h>
#include <unistd.h>
#include <string.h>
int main(int argc, char ** argv)
{
        char buf[10] = "";
        read(0, buf, 9); /* ´Ó±ê×¼ÊäÈë 0 ¶ÁÈë×Ö·û */
        fprintf(stdout, "%s\n", buf); /* Ïò±ê×¼Êä³ö stdout д×Ö·û */
        return 0;
}
/* **ÉÏÃæºÍÏÂÃæµÄ´úÂë¶¼¿ÉÒÔÓÃÀ´´Ó±ê×¼ÊäÈë¶ÁÓû§ÊäÈëµÄ9¸ö×Ö·û** */
#include <stdio.h>
#include <unistd.h>
#include <string.h>
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 tim


Ïà¹ØÎĵµ£º

Linux iptableÎĵµ

×ÜÀÀ
ÓÃiptables -ADC À´Ö¸¶¨Á´µÄ¹æ
Ôò
£¬-AÌí¼Ó -Dɾ³ý -C ÐÞ¸Ä
iptables - [RI] chain rule num rule-specification[option]
ÓÃiptables - RI ͨ¹ý¹æÔòµÄ˳ÐòÖ¸¶¨
iptables -D chain rule num[option]
ɾ³ýÖ¸¶¨¹æÔò
iptables -[LFZ] [chain][option]
ÓÃiptables -LFZ Á´Ãû [Ñ¡Ïî]
iptables -[NX] chain
ÓÃ -NX ......

LinuxϵͳSudoÃüÁîµÄʹÓÃ˵Ã÷

“Sudo” ÊÇUnix/Linuxƽ̨ÉϵÄÒ»¸ö·Ç³£ÓÐÓõŤ¾ß£¬ËüÔÊÐíϵͳ¹ÜÀíÔ±·ÖÅ䏸ÆÕͨÓû§Ò»Ð©ºÏÀíµÄ“ȨÀû”£¬ÈÃËûÃÇÖ´ÐÐһЩֻÓг¬¼¶Óû§»òÆäËûÌØÐíÓû§²ÅÄÜÍê³ÉµÄÈÎÎñ£¬±ÈÈ磺ÔËÐÐһЩÏñmount£¬halt£¬suÖ®ÀàµÄÃüÁ»òÕ߱༭һЩϵͳÅäÖÃÎļþ£¬Ïñ/etc/mtab£¬ /etc/samba/smb.confµÈ¡£ÕâÑùÒÔÀ´£ ......

LinuxϵͳÉϼÜÉèVSFTP·þÎñÆ÷ʵÀý½âÎö

     
ʵÑé»·¾³£ºAS4×îС»¯°²×°
ʵÑéÄ¿±ê£º¼ÜÉèVSFTP·þÎñÆ÷
Õâ´ÎÎÒÃÇÀ´Ñ§Ï°LinuxϵͳÖÐµÄ vsftp·þÎñÆ÷µÄÅäÖá£
ÏÂÃæÎÒÃÇ¿ªÊ¼ÁË£¡Ê×ÏÈÎÒÃǰ²×°vsftp·þÎñÆ÷¶ËµÄÈí¼þ¡£
vsftpd·þÎñÆ÷µÄ°²×°ÎļþλÓÚµÚ1ÕŰ²×°¹âÅÌÖС£
ʹÓÃrpmÃüÃû¿É˳Àû°²×°¸ÃÈí¼þ°ü¡£
# rpm -ivh vsftpd-2.0.1-5.i386.r ......

LinuxÖÐerrnoʹÓÃ

µ±linuxÖеÄC apiº¯Êý·¢ÉúÒ쳣ʱ,Ò»°ã»á½«errno±äÁ¿(Ðèinclude
errno.h)¸³Ò»¸öÕûÊýÖµ,²»Í¬µÄÖµ±íʾ²»Í¬µÄº¬Òå,¿ÉÒÔͨ¹ý²é¿´¸ÃÖµÍÆ²â³ö´íµÄÔ­Òò£¬ÔÚʵ¼Ê±à³ÌÖÐÓÃÕâÒ»Õнâ¾öÁ˲»ÉÙÔ­±¾¿´À´ÄªÃûÆäÃîµÄÎÊÌâ¡£µ«ÊÇ
errnoÊÇÒ»¸öÊý×Ö£¬´ú±íµÄ¾ßÌ庬Ò廹Ҫµ½errno.hÖÐÈ¥ÔĶÁºê¶¨Ò壬¶øÃ¿´Î²éÔÄÊÇÒ»¼þºÜ·±ËöµÄÊÂÇé¡£ÓÐÏÂÃæ¼¸ÖÖ·½·¨ ......

Linux JDK and ANT install

Linux JDK and ANT install
linux JDKµÄ°²×°

°²×°JDK
´ÓsunÍøÕ¾ÉÏÖ±½ÓÏÂÔØJDK£ºhttp:
//java.sun.com/j2se/1.4.2
/download.htmlÌṩÁËÁ½¸öÏÂÔØ£º
1¡¢RPM in self-extracting file
(j2sdk-1_4_2_04-linux-i586.bin,
32.77 MB) Õâ¸öÊÇ×Ô½âѹµÄÎļþ£¬ÔÚlinuxÉϰ²×°ÈçÏ£º

chmod u+x
./j2sdk-1_4_2_04-l ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ