LinuxÍøÂç±à³Ì ¿Í»§¶ËÓë·þÎñÆ÷¶ËÒ첽ͨÐÅ
#include <sys/select.h>
#include <sys/time.h>
#include
<sys/types.h>
#include <unistd.h>
int select(int
nfds,fd_set *readfds,fd_set *writefds, fd_set *except fds,struct timeval
*timeout)
void FD_SET(int fd,fd_set *fdset)
void FD_CLR(int fd,fd_set
*fdset)
void FD_ZERO(fd_set *fdset)
int FD_ISSET(int fd,fd_set
*fdset)
¼ÌÐøÇ°ÃæµÄ
LinuxÍøÂç±à³Ì-¿Í»§¶ËÓë·þÎñÆ÷¶ËͨÐÅ(Echo)
£¬½Ó׎²¹ØÓÚ¿Í»§¶ËÓë·þÎñÆ÷¶ËµÄÒ첽ͨѶ
Ò»°ãµÄÀ´Ëµµ±ÎÒÃÇÔÚÏòÎļþ¶Áдʱ,½ø³ÌÓпÉÄÜÔÚ¶Áд³ö×èÈû,Ö±µ½Ò»¶¨µÄÌõ¼þÂú×ã.
±ÈÈçÎÒÃÇ´ÓÒ»¸öÌ×½Ó×Ö¶ÁÊý¾Ýʱ,
¿ÉÄÜ»º³åÇøÀïÃæÃ»ÓÐÊý¾Ý¿É¶Á (ͨÐŵĶԷ½»¹Ã»ÓÐ
·¢ËÍÊý¾Ý¹ýÀ´),Õâ¸öʱºòÎÒÃǵĶÁµ÷ÓþͻáµÈ´ý(×èÈû)Ö±µ½ÓÐÊý¾Ý¿É¶Á.
Èç¹ûÎÒÃDz» Ï£Íû×èÈû,ÎÒÃǵÄÒ»¸öÑ¡ÔñÊÇÓÃselectϵͳµ÷ÓÃ.
Ö»ÒªÎÒÃÇÉèÖúÃselectµÄ¸÷¸ö²ÎÊý,
ÄÇôµ±Îļþ¿ÉÒÔ¶ÁдµÄʱºòselect»Ø"֪ͨ"ÎÒÃÇ Ëµ¿ÉÒÔ¶ÁдÁË.
readfdsËùÓÐÒª¶ÁµÄÎļþÎļþÃèÊö·ûµÄ¼¯ºÏ
writefdsËùÓÐÒªµÄдÎļþÎļþÃèÊö·ûµÄ¼¯ºÏ
exceptfdsÆäËûµÄ·þÒªÏòÎÒÃÇ֪ͨµÄÎļþÃèÊö·û
timeout³¬Ê±ÉèÖÃ.
nfdsËùÓÐÎÒÃÇ¼à¿ØµÄÎļþÃèÊö·ûÖÐ×î´óµÄÄÇÒ»¸ö¼Ó1
ÔÚÎÒÃǵ÷ÓÃselectʱ½ø³Ì»áÒ»Ö±×èÈûÖ±µ½ÒÔϵÄÒ»ÖÖÇé¿ö·¢Éú.
1)ÓÐÎļþ¿ÉÒÔ¶Á.
2)ÓÐÎļþ¿ÉÒÔд.
3)³¬Ê±ËùÉèÖõÄʱ¼äµ½.
ΪÁËÉèÖÃÎļþÃèÊö·ûÎÒÃÇҪʹÓü¸¸öºê.
FD_SET½«fd¼ÓÈëµ½fdset
FD_CLR½«fd´ÓfdsetÀïÃæÇå³ý
FD_ZERO´ÓfdsetÖÐÇå³ýËùÓеÄÎļþÃèÊö·û
FD_ISSETÅжÏfdÊÇ·ñÔÚfdset¼¯ºÏÖÐ
ʹÓÃselectµÄÒ»¸öÀý×Ó
#
include
<
stdio.
h>
#
include
<
sys/
time
.
h>
#
include
<
sys/
types.
h>
#
include
<
unistd.
h>
int
main(
void
)
{
 
Ïà¹ØÎĵµ£º
ת×Ô£º http://blog.csdn.net/kongqz/archive/2009/05/15/4184415.aspx
¾ÍÊÇÔÚÒÑÓеÄÊý¾Ý¿âʵÀýÉÏ´´½¨Ò»¸öеÄÕʺţ¬·ÃÎÊһЩеıí
²Ù×÷²½ÖèÈçÏ£º
1¡¢µÇ¼linux£¬ÒÔoracleÓû§µÇ¼£¨Èç¹ûÊÇrootÓû§µÇ¼µÄ£¬µÇ¼ºóÓà su - oracleÃüÁîÇл»³ÉoracleÓû§£©
2¡¢ÒÔsysdba·½Ê½À´´ò¿ªsqlplus£¬ÃüÁîÈçÏ£º s ......
¾ÍÊÇÔÚÒÑÓеÄÊý¾Ý¿âʵÀýÉÏ´´½¨Ò»¸öеÄÕʺţ¬·ÃÎÊһЩеıí
²Ù×÷²½ÖèÈçÏ£º
1¡¢µÇ¼linux£¬ÒÔoracleÓû§µÇ¼£¨Èç¹ûÊÇrootÓû§µÇ¼µÄ£¬µÇ¼ºóÓà su - oracleÃüÁîÇл»³ÉoracleÓû§£©
2¡¢ÒÔsysdba·½Ê½À´´ò¿ªsqlplus£¬ÃüÁîÈçÏ£º sqlplus "/as sysdba"
3¡¢²é¿´ÎÒÃdz£¹æ½«Óû§±í¿Õ¼ä·ÅÖÃλÖà ......
Linux»ñÈ¡ºÁÃ뼶ʱ¼ä
Moakap
ÔÚÈí¼þÉè¼ÆÖо³£»áÓõ½¹ØÓÚʱ¼äµÄ´¦Àí£¬ÓÃÀ´¼ÆËãÓï¾ä¡¢º¯ÊýµÄÖ´ÐÐʱ¼ä£¬Õâʱ¾ÍÐèÒª¾«È·µ½ºÁÃëÉõÖÁÊÇ΢ÃîµÄʱ¼ä¡£
int gettimeofday(struct
timeval *tv, struct timezone *tz);
int settimeofday(const
struct timeval *tv , const struct timezone *tz);
struc ......
linux´®¿Ú±à³Ì£¨Òªµã×ܽᣩ ÊÕ²Ø
´®¿Ú±à³Ì
²éѯӲ¼þµÄ·½Ê½£º²éѯ·½Ê½¡¢ÖжϷ½Ê½¡¢DMA·½Ê½¡£´®¿ÚºÜ¶àÊÇʹÓÃÖжϷ½Ê½£¬ÕâÖÖ·½Ê½Ò»°ãÀ´½²¶ÔCPU±È½ÏÓÐЧ¡£
UARTµÄ²Ù×÷Ö÷Òª°üÀ¨ÒÔϼ¸¸ö²¿·Ö£º
Êý¾Ý·¢ËÍ£»Êý¾Ý½ÓÊÜ£»²úÉúÖжϣ»²úÉú²¨ÌØÂÊ£»Loopbackģʽ£»ºìÍâģʽ£»×Ô¶¯Á÷¿ØÄ£Ê½£»
&n ......
Linux¶àÏ̱߳à³Ì¼¼Êõ×ܽá
1
¡¢Ï̵߳Ĵ´½¨¡¢ÖÕÖ¹¼°¿ØÖÆ£º
Èκνø³ÌÔÚÆô¶¯Ê±¾ÍÒÑÓÐÁËÒ»¸öÖ÷Ị̈߳¬Èç¹ûÐèÒªÔÙÉú³ÉÏß³ÌÔòʹÓÃ
pthread_create
º¯Êý£¬Ôڸú¯ÊýÖпÉÒÔÖ¸¶¨Ï̵߳ÄÊôÐÔ¡¢Ïß³ÌÀý³Ì¡¢´«¸øÏß³ÌÀý³ÌµÄ²ÎÊý¡£Ïß³ÌÀý³ÌÊÇÒ»¸öÓû§×Ô¶¨ÒåµÄº¯Êý£¬¼°Ïß³ÌÖ´ÐеĴúÂë¡£µ±Ïß³ÌÀý³Ì· ......