LInux¶àÏ̱߳à³Ì¼¼Êõ×ܽá
Linux¶àÏ̱߳à³Ì¼¼Êõ×ܽá
1
¡¢Ï̵߳Ĵ´½¨¡¢ÖÕÖ¹¼°¿ØÖÆ£º
Èκνø³ÌÔÚÆô¶¯Ê±¾ÍÒÑÓÐÁËÒ»¸öÖ÷Ị̈߳¬Èç¹ûÐèÒªÔÙÉú³ÉÏß³ÌÔòʹÓÃ
pthread_create
º¯Êý£¬Ôڸú¯ÊýÖпÉÒÔÖ¸¶¨Ï̵߳ÄÊôÐÔ¡¢Ïß³ÌÀý³Ì¡¢´«¸øÏß³ÌÀý³ÌµÄ²ÎÊý¡£Ïß³ÌÀý³ÌÊÇÒ»¸öÓû§×Ô¶¨ÒåµÄº¯Êý£¬¼°Ïß³ÌÖ´ÐеĴúÂë¡£µ±Ïß³ÌÀý³Ì·µ»ØÊ±£¬Ïß³ÌÔò½áÊøÔËÐУ¬Ò²¿ÉÒÔÏÔʾµ÷ÓÃ
pthread_exit
À´Í˳ö¡£Ïß³ÌÔÚ´´½¨ºó¿ÉÒÔÓÃ
pthread_self
º¯Êý»ñÈ¡Ïß³Ì
ID
¡£º¯Êý
pthread_join
ʹµÃ½ø³ÌµÈ´ýÏ̵߳ÄÖÕÖ¹£¬µ÷ÓÃ
pthread_join
ºó½ø³Ì½«±»¹ÒÆð£¬Ö±µ½Ö¸¶¨µÄij¸öỊ̈߳¨ÔÚ
pthread_join
µÄ²ÎÊý
thread
ÖÐÖ¸¶¨£©ÖÕÖ¹¡£¶ø
pthread_detach
º¯ÊýÕýºÃÏà·´£¬ËüʹµÃ½ø³Ì²»±ØµÈ´ýÏ̵߳ĽáÊø£¬´Ó¶øÔÊÐí½ø³Ì¼ÌÐøÖ´ÐбðµÄ²Ù×÷£¬±»
detach
µÄÏß³ÌÔÚÖ´ÐнáÊøºóÆäÕ¼ÓõÄ×ÊÔ´ÓÉϵͳ×Ô¶¯Êջء£
2
¡¢Ï̼߳äµÄ»¥³â£º
»¥³â²Ù×÷
£¬¾ÍÊǶÔij¶Î´úÂë»òij¸ö±äÁ¿Ð޸ĵÄʱºòÖ»ÄÜÓÐÒ»¸öÏß³ÌÔÚÖ´ÐÐÕâ¶Î´úÂ룬ÆäËûÏ̲߳»ÄÜͬʱ½øÈëÕâ¶Î´úÂë»òͬʱÐ޸ıäÁ¿¡£
pthread
³£ÓÃ
pthread_mutex
»¥³âÌåÀ´ÊµÏÖÏ̻߳¥³â²Ù×÷¡£
pthread_mutex_init
º¯ÊýÓÃÓÚ³õʼ»¯Ò»¸ö»¥³âÌå±äÁ¿¡£
pthread_mutex_lock
º¯ÊýÓÃÓÚ¸ø»¥³âÌå±äÁ¿ÉÏËø£¬Èç¹ûÉÏËøÊ±»¥³âÌåÒѾ±»±»µÄÏß³ÌËø×¡ÁË£¬ÄÇôµ÷Óøú¯ÊýµÄÏ߳̽«±»×èÈûÖ±µ½»¥³âÌå±»½âËøÎªÖ¹¡£¶ø
pthread_mutex_trylock
ÔòÊÇÊÔÍ¼Ëø×¡»¥³âÌ壬µ«ÔÚ»¥³âÌåÒѾ±»¼ÓËøÊ±²»»áÔì³É×èÈû£¬¶øÊÇѸËÙ·µ»Ø¡£
pthread_mutex_unlock
º¯Êý¶Ô»¥³âÌå½âËø¡£
pthread_mutex_destroy
ÔòÓÃÀ´ÊÍ·Å»¥³âÌåËùÕ¼×ÊÔ´¡£
3
¡¢Ï̵߳Äͬ²½£º
ͬ²½¾ÍÊÇÈô¸É¸öÏ̵߳ȴýij¸öʼþµÄ·¢Éú£¬µ±¸Ãʼþ·¢Éúʱ£¬Ò»Æð¿ªÊ¼¼ÌÐøÖ´ÐС£ÔÚ
Linux
Ïß³ÌÖÐÓÃÌõ¼þ±äÁ¿À´ÊµÏÖͬ²½¡£º¯Êý
pthread_cond_init
ÓÃÀ´´´½¨Ò»¸öÌõ¼þ±äÁ¿¡£
pthread_cond_wait
ºÍ
pthread_cond_timewait
ÓÃÀ´µÈ´ýÌõ¼þ±äÁ¿±»ÉèÖã¬ÖµµÃ×¢ÒâµÄÊÇÕâÁ½¸öµÈ´ýµ÷ÓÃÐèÒªÒ»¸öÒѾÉÏËøµÄ»¥³âÌå
mutex
£¬ÕâÊÇΪÁË·ÀÖ¹ÔÚÕæÕý½øÈëµÈ´ý״̬֮ǰ±ðµÄÏß³ÌÓпÉÄÜÉèÖøÃÌõ¼þ±äÁ¿¶ø²úÉú¾ºÕù¡£
pthread_cond_broadcast
ÓÃÓÚÉèÖÃÌõ¼þ±äÁ¿£¬¼´Ê¹Ê¼þ·¢Éú£¬²¢Ê¹µÃËùÓеȴý¸ÃʼþµÄÏ̲߳»ÔÙ×èÈû¡£¶ø
pthread_cond_signal
ÔòÊÇÓýâ³ýijһ¸öµÈ´ýÏ̵߳Ä×èÈû״̬¡£
pthread_cond_destroy
ÓÃÀ´ÊÍ·ÅÒ»¸öÌõ¼þ±äÁ¿µÄ×ÊÔ´¡£
4
¡¢Éú²úÕß——Ïû·ÑÕ
Ïà¹ØÎĵµ£º
linuxÖУ¬ÔÚÖ§³Ö¶àÏ̵߳Ļ·¾³ÖУ¬Í¨³£Ã¿¸öÏ̶߳¼ÓÐÊôÓÚ×Ô¼ºµÄerrno±äÁ¿£¬ÊÇÓÃÀ´±íÊ¾ÌØ¶¨´íÎóµÄ³£Á¿¡£
ÒÔÏÂÊÇ<errno.h>Öж¨ÒåµÄËùÓгö´íerrno³£Á¿
#define EPERM 1 /* Operation not permitted */
#define ENOEN ......
·½·¨Ò»£º Expect ʵÏÖ½»»¥
UNIX ´°¿ÚÖÐ ÊäÈëÒÔÏÂÃüÁ
expect ftplinux.txt 10.0.15.22 ftplinux.txt
ftplinux.txt ÖÐÄÚÈÝÈçÏ£º
--¿ªÊ¼-----
spawn ftp [lindex $argv 0]
expect "Name(*):"
send "ftp\r"
expect "Password:*"
send "hell05a\r"
expect "ftp> ......
µ±´ÅÅÌ´óС³¬¹ý±ê׼ʱ»áÓб¨¾¯Ìáʾ£¬ÕâʱÈç¹ûÕÆÎÕdfºÍduÃüÁîÊǷdz£Ã÷ÖǵÄÑ¡Ôñ¡£
df¿ÉÒԲ鿴һ¼¶Îļþ¼Ð´óС¡¢Ê¹ÓñÈÀý¡¢µµ°¸ÏµÍ³¼°Æä¹ÒÈëµã£¬µ«¶ÔÎļþÈ´ÎÞÄÜΪÁ¦¡£
du¿ÉÒԲ鿴Îļþ¼°Îļþ¼ÐµÄ´óС¡£
Á½ÕßÅäºÏʹÓ㬷dz£ÓÐЧ¡£±ÈÈçÓÃdf²é¿´ÄĸöÒ»¼¶Ä¿Â¼¹ý´ó£¬È»º ......
³ö´¦£ºhttp://bbs.java.ccidnet.com
¹Ò½ÓÃüÁî(mount)
¡¡¡¡Ê×ÏÈ£¬½éÉÜһϹҽÓ(mount)ÃüÁîµÄʹÓ÷½·¨£¬mountÃüÁî²ÎÊý·Ç³£¶à£¬ÕâÀïÖ÷Òª½²Ò»Ï½ñÌìÎÒÃÇÒªÓõ½µÄ¡£
¡¡¡¡ÃüÁî¸ñʽ£º
¡¡¡¡mount [-t vfstype] [-o options] device dir
¡¡¡¡ÆäÖУº
¡¡¡¡1.-t vfstype Ö¸¶¨ÎļþϵͳµÄÀàÐÍ£¬Í¨³£²»±ØÖ¸¶¨¡£mount »á×Ô¶¯Ñ¡ÔñÕýÈ· ......
linux´®¿Ú±à³Ì£¨Òªµã×ܽᣩ ÊÕ²Ø
´®¿Ú±à³Ì
²éѯӲ¼þµÄ·½Ê½£º²éѯ·½Ê½¡¢ÖжϷ½Ê½¡¢DMA·½Ê½¡£´®¿ÚºÜ¶àÊÇʹÓÃÖжϷ½Ê½£¬ÕâÖÖ·½Ê½Ò»°ãÀ´½²¶ÔCPU±È½ÏÓÐЧ¡£
UARTµÄ²Ù×÷Ö÷Òª°üÀ¨ÒÔϼ¸¸ö²¿·Ö£º
Êý¾Ý·¢ËÍ£»Êý¾Ý½ÓÊÜ£»²úÉúÖжϣ»²úÉú²¨ÌØÂÊ£»Loopbackģʽ£»ºìÍâģʽ£»×Ô¶¯Á÷¿ØÄ£Ê½£»
&n ......