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

linuxÖÐselect()º¯Êý·ÖÎö

select()µÄ»úÖÆÖÐÌṩһfd_setµÄÊý¾Ý½á¹¹£¬Êµ¼ÊÉÏÊÇÒ»longÀàÐ͵ÄÊý×飬 Ã¿Ò»¸öÊý×éÔªËØ¶¼ÄÜÓëÒ»´ò¿ªµÄÎļþ¾ä±ú£¨²»¹ÜÊÇSocket¾ä±ú,»¹ÊÇÆäËû Îļþ»òÃüÃû¹ÜµÀ»òÉ豸¾ä±ú£©½¨Á¢ÁªÏµ£¬½¨Á¢ÁªÏµµÄ¹¤×÷ÓɳÌÐòÔ±Íê³É£¬ µ±µ÷ÓÃselect()ʱ£¬ÓÉÄں˸ù¾ÝIO״̬ÐÞ¸Äfd_setµÄÄÚÈÝ£¬ÓÉ´ËÀ´Í¨ÖªÖ´ ÐÐÁËselect()µÄ½ø³ÌÄÄÒ»Socket»òÎļþ¿É¶Á£¬ÏÂÃæ¾ßÌå½âÊÍ£º 
#include 
#include 
#include 
int select(nfds, readfds, writefds, exceptfds, timeout) 
int nfds; 
fd_set *readfds, *writefds, *exceptfds; 
struct timeval *timeout; 
ndfs£ºselect¼àÊÓµÄÎļþ¾ä±úÊý£¬ÊÓ½ø³ÌÖдò¿ªµÄÎļþÊý¶ø¶¨,Ò»°ãÉèÎªÄØÒª¼àÊÓ¸÷Îļþ ÖеÄ×î´óÎļþºÅ¼ÓÒ»¡£ 
readfds£ºselect¼àÊӵĿɶÁÎļþ¾ä±ú¼¯ºÏ¡£ 
writefds: select¼àÊӵĿÉдÎļþ¾ä±ú¼¯ºÏ¡£ 
exceptfds£ºselect¼àÊÓµÄÒì³£Îļþ¾ä±ú¼¯ºÏ¡£ 
timeout£º±¾´Îselect()µÄ³¬Ê±½áÊøÊ±¼ä¡££¨¼û/usr/sys/select.h£¬ ¿É¾«È·ÖÁ°ÙÍò·ÖÖ®Ò»Ã룡£© 
µ±readfds»òwritefdsÖÐÓ³ÏóµÄÎļþ¿É¶Á»ò¿Éд»ò³¬Ê±£¬±¾´Îselect() ¾Í½áÊø·µ»Ø¡£³ÌÐòÔ±ÀûÓÃÒ»×éϵͳÌṩµÄºêÔÚselect()½áÊøÊ±±ã¿ÉÅР¶ÏÄÄÒ»Îļþ¿É¶Á»ò¿Éд¡£¶ÔSocket±à³ÌÌØ±ðÓÐÓõľÍÊÇreadfds¡£ ¼¸Ö»Ïà¹ØµÄºê½âÊÍÈçÏ£º 
FD_ZERO(fd_set *fdset)£ºÇå¿ÕfdsetÓëËùÓÐÎļþ¾ä±úµÄÁªÏµ¡£ 
FD_SET(int fd, fd_set *fdset)£º½¨Á¢Îļþ¾ä±úfdÓëfdsetµÄÁªÏµ¡£ 
FD_CLR(int fd, fd_set *fdset)£ºÇå³ýÎļþ¾ä±úfdÓëfdsetµÄÁªÏµ¡£ 
FD_ISSET(int fd, fdset *fdset)£º¼ì²éfdsetÁªÏµµÄÎļþ¾ä±úfdÊÇ·ñ 
¿É¶Áд£¬>0±íʾ¿É¶Áд¡£ 
£¨¹ØÓÚfd_set¼°Ïà¹ØºêµÄ¶¨Òå¼û/usr/include/sys/types.h£© 
ÕâÑù£¬ÄãµÄsocketÖ»ÐèÔÚÓж«¶«¶ÁµÄʱºò²Å¶ÁÈ룬´óÖÂÈçÏ£º 
... 
int sockfd; 
fd_set fdR; 
struct timeval timeout = ..; 
... 
for(;;) { 
FD_ZERO(&fdR); 
FD_SET(sockfd, &fdR); 
switch (select(sockfd + 1, &fdR, NULL, &timeout)) {&


Ïà¹ØÎĵµ£º

GNU/Linux ¿ª·¢»·¾³ £¨2£©


¼ÌÐøÌ¸Ì¸ÆäËüÓïÑԵĿª·¢¡£
3.2) ¶¯Ì¬ÓïÑÔ
ÕâÀïÖ¸µÄÊǰüÀ¨½Å±¾ÓïÑÔ£¬½âÊÍÐÍÓïÑÔÔÚÄڵıà³ÌÓïÑÔ£¬ÀýÈçJava£¬Perl£¬Python£¬PHP£¬JavaScript£¬Ruby£¬Shell Script£¬µÈµÈ¡£
´Ó¿ª·¢»·¾³½Ç¶È¿´£¬¶¯Ì¬ÓïÑÔ¶¼ÓÐ×Ô¼ºµÄÔËÐл·¾³£¬¶øÇÒͨ³£¶¼ÊÇ¿çÆ½Ì¨µÄ¡£Òò´Ë£¬±àд´úÂ룬µ÷ÊÔÔËÐÐÔòÍêÈ«¿ÉÒÔÔÚ×Ô¼ºµÄ»·¾³ÖÐÍê³É£¬Ö»ÊÇ´ó¶àÊÇÃüÁîÐÐ ......

linuxÃüÁîÖ®zipѹËõÓëunzip½âѹËõÃüÁî

example:
zip -q -r html.zip html
²ÎÊý˵Ã÷£º
Óï¡¡¡¡·¨£ºzip [-AcdDfFghjJKlLmoqrSTuvVwXyz$][-b <¹¤×÷Ŀ¼>][-ll][-n <×Öβ×Ö·û´®>][-t <ÈÕÆÚʱ¼ä>][-<ѹËõЧÂÊ>][ѹËõÎļþ][Îļþ...][-i <·¶±¾Ñùʽ>][-x <·¶±¾Ñùʽ>]
²¹³ä˵Ã÷£ºzipÊǸöʹÓù㷺µÄѹËõ³ÌÐò£¬Îļþ¾­ËüѹËõºó»áÁíÍ ......

linux¿ª»úÆô¶¯·þÎñÏê½â

acpid
ÅäÖÃÎļþ£º/proc/acpi/event
ĬÈ϶˿ڣºÎÞ
˵Ã÷£ºAdvanced Configuration and Power Interface£¬ÎªÌæ´ú´«Í³µÄAPM µçÔ´¹ÜÀí±ê×¼¶øÍƳö
µÄÐÂÐ͵çÔ´¹ÜÀí±ê×¼¡£
ÊÇ·ñÐèÒªÆô¶¯£ºÈç¹ûÄãÐèÒª¶ÔµçÔ´½øÐйÜÀí£¬ÄǾÍÐèÒªÆô¶¯¡£
anacron
ÅäÖÃÎļþ£º/etc/anacron
ĬÈ϶˿ڣºÎÞ
˵Ã÷£ºÒ»¸ö×Ô¶¯»¯ÔËÐÐÈÎÎñ¡£Red Hat Linux ......

linux ¿ª»úÆô¶¯½Å±¾

linux ¿ª»úÆô¶¯½Å±¾Ë³Ðò¡£
 µÚÒ»²½£ºÆô¶¯ÄÚºË
 µÚ¶þ²½£ºÖ´ÐÐinit £¨ÅäÖÃÎļþ/etc/inittab£©
 µÚÈý²½£ºÆô¶¯ÏàÓ¦µÄ½Å±¾£¬²¢ÇÒ´ò¿ªÖÕ¶Ë/etc/init.d
 rc.sysinit rc.d(ÀïÃæµÄ½Å±¾£© rc.local
 µÚËIJ½£ºÆô¶¯loginµÇ¼½çÃæ login
 µÚÎå²½:ÔÚÓû§µÇ¼µÄʱºòÖ´ÐÐsh½Å±¾µÄ˳Ðò£ºÃ¿´ÎµÇ¼µÄʱºò¶ ......

Linux Socketѧϰ±Ê¼Ç£¨1£© ѧϰĿ¼

1. Sockets ½éÉÜ
2. ÓòºÍµØÖ··ÖÀà
3. µØÖ·×ª»»º¯Êý
4. SocketÀàÐÍÒÔ¼°¸÷ÖÖЭÒé
5. ½«µØÖ·ºÍSocketÏà°ó¶¨
6. ÃæÏòÎÞÁ¬½ÓµÄЭÒé
7. ÃæÏòÁ¬½ÓµÄЭÒé
8. ·þÎñÆ÷¶ËµÄÃæÏòÁ¬½ÓЭÒé
9. Ö÷»úºÍÍøÂçÃû²éѯ
---------------------------------------------
10. ÔÚSocketÉÏʹÓñê×¼I/O
11. ²¢·¢¿Í»§ºÍ·þÎñÆ÷
12. Sock ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ