Linux ¶¨Ê±Æ÷
ʱ¼ä¼ä¸ô¶¨Ê±Æ÷
interval timer(ʱ¼ä¼ä¸ô¶¨Ê±Æ÷)ϵͳµ÷ÓÃ×Ô´Ó±»POSIX±ê×¼»¯ºó£¬Ê״γöÏÖÓÚ4.2BSD£¬Äܹ»Ìṩ±Èalarm()»¹¶àµÄ¿ØÖÆ£º
#include <sys/time.h>
int getitimer(int which, struct itimerval *value);
int setitimer(int which, const struct itimerval *value, struct itimerval *ovalue);
interval timerµÄÔË×÷Èçͬalarm()£¬µ«ÊÇ¿ÉÒÔÑ¡Ôñ×Ô¶¯ÖØÐÂÆô¶¯ËüÃÇ£¬¶øÇÒ¿ÉÔË×÷ÔÚÏÂÃæÆäÖÐÒ»ÖÖģʽ֮ÖУº
ITIMER_REAL
²âÁ¿ÕæÊÇʼþ ¡£µ±ËùÖ¸¶¨µÄÕæÊµÊ±¼äÖµÒѹýÈ¥£¬Äں˻áËͳöÒ»¸öSIGALARMÐźŸø½ø³Ì
ITIMER_VIRTUAL
Ö»»áÔÚ½ø³ÌµÄÓû§¿Õ¼ä³ÌÐò´úÂëÖ´ÐÐʱµÝ¼õÆäÖµ¡£µ±ËùÑ¡¶¨µÄ½ø³Ìʱ¼ä¹ýÈ¥ºó£¬Äں˻áËͳöÒ»¸öSIGVTALRMÐźŸø½ø³Ç¡£
ITIMER_PROF
»áÔÚ½ø³ÇÖ´ÐÐʱÒÔ¼°ÄÚºËÌæ½ø³Ì·þÎñʱ(ÀýÈç½øÐÐϵͳµ÷ÓÃ)µÝ¼õÆäÖµ¡£µ±ËùÖ¸¶¨µÄʱ¼äÁ¿¹ýÈ¥ºó£¬Äں˻áËͳöÒ»¸öSIGPROFÐźŸø½ø³Ç¡£´Ëģʽ³£»áÓëITIMER_VIRTUAL½áºÏ£¬ÈóÌÐò¿ÉÒÔ²âÁ¿½ø³ÌËùºÄÓõÄÓû§Ê±¼äÓëÄÚºËʱ¼ä¡£
ITIMER_REALËù²âÁ¿µÄʱ¼äÈçͬalarm()£¬ÁíÁ½ÖÖģʽÔò¿ÉÓÃÓÚ¸ÅÒª·ÖÎö¡£
itimerval½á¹¹ÔÊÐíÓû§Ö¸¶¨Ê±¼äÁ¿Ö±µ½¶¨Ê±Æ÷µ½ÆÚΪֹÒÔ¼°Ö¸¶¨µ½µ×ʱ¼ä£¬ÕâÈÃÄãÄܹ»ÒÔÖ¸¶¨µÄµ½ÆÚʱ¼äÖØÐÂÆô¶¯¶¨Ê±Æ÷:
struct itimerval{
struct timeval it_interval; /*next value*/
struct timeval it_value; /*current value*/
};
ÈçÉÔÔçËùÊö£¬timeval½á¹¹¿ÉÒÔÌṩ΢Ãë¼¶·Ö±æÂÊ£º
struct timeval{
long tv_sec; /*seconds*/
long tv_usec; /*microseconds*/
};
setitimer()»áʹÓÃit_valueËùÖ¸¶¨µÄµ½ÆÚʱ¼äÀ´Æô¶¯Ò»¸öwhichÀàÐ͵Ķ¨Ê±Æ÷¡£Ò»µ©it_valueËùÖ¸¶¨µÄʱ¼ä¹ýÈ¥ºó£¬Äں˻áʹÓÃit_intervalËùÌṩµÄʱ¼äÖØÐÂÆô¶¯¸Ã¶¨Ê±Æ÷¡£Òò´Ë£¬it_valueÊǵ±Ç°¶¨Ê±Æ÷ʣϵÄʱ¼ä¡£Ò»µ©it_valueµÄֵΪ0ʱ£¬Ëü»á±»É趨Ϊit_interval¡£Èç¹û¶¨Ê±Æ÷µ½ÆÚ£¬¶øÇÒit_intervalµÄֵΪ0£¬Ôò²»»áÖØÐÂÆô¶¯¸Ã¶¨Ê±Æ÷¡£Í¬ÑùµØ£¬Èç¹ûÒ»¸ö»î¶¯ÖеĶ¨Ê±Æ÷µÄit_value±»ÉèΪ0£¬Ôò¶¨Ê±Æ÷»áÍ£Ö¹ÔËÐУ¬¶øÇÒ²»»á±»ÖØÐÂÆô¶¯¡£
Èç¹ûovalueµÄÖµ²»ÊÇNULL£¬ÔòwhichÀàÐ͵Äʱ¼ä¼ä¸ô¶¨Ê±Æ÷ÏÈǰµÄÖµ»á±»·µ»Ø¡£
getitimer()»á·µ»ØwhichÀàÐ͵Äʱ¼ä¼ä¸ô¶¨Ê±Æ÷µ±Ç°µÄÖµ¡£
Ö´Ðгɹ¦Ê±£¬ÕâÁ½¸öµ÷Óö¼»á·µ»Ø0£»·¢Éú´íÎóʱ£¬Ôò»á·µ»Ø-1£¬ÔÚ´ËÇé¿öÏÂerrno»á±»É趨»áÏÂÃæÆäÖÐÒ»¸öÖµ £º
EFAULT
&
Ïà¹ØÎĵµ£º
In my embedded platform, I want to use tftp command,
run tftp, it will output:
Usage: tftp [OPTION]... HOST [PORT]
Transfer a file from/to tftp server
Options:
-l FILE Local FILE
-r FILE Remote FILE
&n ......
ÒÔ i2c-mpc.c Çý¶¯Ä£¿éΪÀý
fsl_i2c_init -> of_register_platform_driver -> of_register_driver -> driver_register -> bus_add_driver -> driver_attach
-> bus_for_each_dev -> __driver_attach -> driver_probe_device -> really_probe -> drv->probe(dev); ......
Tab Tab Tab
±ÈÈ磺ÓÐÒ»¸öÎļþµÄÃû×Ö½Ð×÷alsa-divers-0.39.tar.gz£¬Õ⻹²»ËãºÜ³¤°É¡£ µ±ÄãÐèҪƵ·±µÄÊäÈëÕâ¸öÎļþµÄÃû×ÖµÄʱºò£¬ÄѵÀÄã²»¾õµÃÕâÊÇÒ»ÖÖÎÞÒÔÃû×´µÄÍ´¿àÂð£¿ÄÇôÎÒÏë¶ÔÄã˵һ¾ä£º²»ÒªÐÄ·³£¬Äã¿ÉÒÔÊÔÒ»ÊÔÔÚÊäÈëalsaºó°´Ò»Ï£ÃapsLock¼üÉÏ·½µÄ£Ôab¼ü¡£ÔõôÑùʹÄãÑÛǰһÁÁ°É£¬linuxÒÑ¾Ææ¼£°ãµÄ×Ô¶¯²¹È«ÁËÎļþÃû¡ ......
1¡¢Èí¼þ°²×°
Ð¶ÔØ£¬·Ö¼¸ÖÖÇé¿ö£º
A£º
RPM°ü£¬ÕâÖÖÈí¼þ°ü¾ÍÏñwindowsµÄEXE°²×°
ÎļþÒ»Ñù£¬¸÷ÖÖÎļþÒѾ±àÒëºÃ£¬²¢´òÁ˰ü£¬ÄĸöÎļþ¸Ã·Åµ½ÄĸöÎļþ¼Ð£¬¶¼Ö¸¶¨ºÃÁË£¬°²×°
·Ç³£·½±ã£¬ÔÚͼÐνçÃæÀïÄãÖ»ÐèҪ˫»÷¾ÍÄÜ×Ô¶¯°²×°
¡£
==ÈçºÎÐ¶ÔØ:
1¡¢´ò¿ªÒ»¸öSHELLÖÕ¶Ë
2¡¢ÒòΪLinux
ϵÄÈí¼þÃû¶¼°üÀ¨°æ±¾ºÅ£¬ËùÒÔÐ¶ÔØÇ°×îºÃ ......