linuxÖÐÏß³ÌÏà¹Øº¯Êý
linuxÖÐÏß³ÌÏà¹Øº¯Êý
2010Äê03ÔÂ09ÈÕ ÐÇÆÚ¶þ 22:18
1. ±È½ÏÁ½¸öÏß³Ì ID ÊÇ·ñÒ»Ö¡£
Ïß³ÌID ʹÓà pthread_t Êý¾ÝÀàÐÍÀ´±íʾ¡£Linux ʹÓà unsigned long int ±íʾpthread_t Êý¾ÝÀàÐÍ¡£Solaris 9 °Ñ pthread_t Êý¾ÝÀàÐͱíʾΪ unsigned int¡£FreeBSD5.2.1 ºÍ MAC OS X 10.3 ÓÃÒ»¸öÖ¸Ïò pthread ½á¹¹µÄÖ¸ÕëÀ´±íʾpthread_t Êý¾ÝÀàÐÍ¡£ Òò´ËÈç¹ûÐèÒª¿¼ÂÇÒÆÖ²ÐÔ£¬±ØÐëʹÓú¯ÊýÀ´¶ÔÁ½¸öÏß³ÌID½øÐбȽϡ£
#include <pthread.h>
int pthread_equal(pthread_t tid1, pthread_t tid2);
·µ»ØÖµ£ºÈç¹ûÏàµÈ·µ»Ø·Ç0£¬·ñÔò·µ»Ø0
2.»ñÈ¡Ïß³Ì×ÔÉíµÄÏß³ÌID¡£
#include <pthread.h>
pthread_t pthread_self(void);
·µ»ØÖµ£ºµ÷ÓÃÏ̵߳ÄÏß³ÌID
3.´´½¨Ị̈߳º
#include <pthread.h>
int pthread_create(pthread_t *restrict tidp, const pthread_attr_t *restrict attr, void *(*start_rtn)(void), void *restrict arg);
·µ»ØÖµ£ºÈô³É¹¦·µ»Ø0£»Èç¹ûʧ°Ü£¬·µ»Ø´íÎó±àºÅ
4.Ïß³ÌÖÕÖ¹
Èç¹û½ø³ÌÖеÄÈÎÒ»Ï̵߳÷ÓÃÁË exit£¬_Exit»òÕß _exit º¯Êý£¬ÄÇôÕû¸ö½ø³Ì¾Í»áÍ˳ö¡£Óë´ËÀàËÆ£¬Èç¹ûÐźŵÄĬÈ϶¯×÷ÊÇÖÕÖ¹½ø³Ì£¬ÄÇô£¬°Ñ¸ÃÐźŷ¢Ë͵½Ï̻߳áÖÕÖ¹Õû¸ö½ø³Ì¡£
ÔÚ²»ÖÕÖ¹Õû¸ö½ø³ÌµÄÇé¿öÏ£¬µ¥¸öÏ߳̿ÉÒÔͨ¹ýÏÂÁÐÈýÖÖ·½Ê½Í˳ö£º
1£©Ïß³ÌÖ»ÊÇ´ÓÆô¶¯Àý³ÌÖзµ»Ø£¬·µ»ØÖµ×÷ΪÏ̵߳ÄÍ˳öÂë¡£
2£©Ï߳̿ÉÒÔ±»Í¬Ò»½ø³ÌÖÐµÄÆäËûÏß³ÌÈ¡Ïû¡£
3£©Ï̵߳÷Óà pthread_exit¡£
#include <pthread.h>
void pthread_exit(void *rval_ptr);
½ø³ÌÖÐµÄÆäËûÏ߳̿ÉÒÔͨ¹ýµ÷Óà pthread_join º¯Êý·ÃÎʵ½Õâ¸öÖ¸Õë¡£
#include <pthread.h>
int pthread_join(pthread_t thread, void **rval_ptr);
·µ»ØÖµ: Èô³É¹¦·µ»Ø0£¬Ê§°Ü·µ»Ø´íÎó±àºÅ
µ÷ÓÃÕâ¸öº¯Êýºó£¬µ÷ÓÃÏ߳̽«Ò»Ö±×èÈû£¬Ö±µ½Ö¸¶¨µÄÏß³ÌÒÔÇ°ÃæÌáµ½µÄ3ÖÖ·½Ê½Í˳ö£¬¼´£º
1£©Ïß³ÌÖ»ÊÇ´ÓÆô¶¯Àý³ÌÖзµ»Ø£¬·µ»ØÖµ×÷ΪÏ̵߳ÄÍ˳öÂë¡£
2£©Ï߳̿ÉÒÔ±»Í¬Ò»½ø³ÌÖÐµÄÆäËûÏß³ÌÈ¡Ïû¡£
3£©Ï̵߳÷Óà pthread_exit¡£
Èç¹ûÏß³ÌÖ»ÊÇ´ÓËüµÄÆô¶¯Àý³ÌÖзµ»Ø£¬ rval_ptr½«°üº¬·µ»ØÂë¡£Èç¹ûÏ̱߳»È¡Ïû£¬ÓÉrval_ptr Ö¸¶¨µÄÄÚ´æµ¥Ôª¾ÍÖÃΪ PTHREAD_CANCELED¡£
Èç¹ûÏß³ÌÒѾ´¦ÓÚ·ÖÀë״̬£¬ pthread_join µ÷Óþͻáʧ°Ü£¬·µ»Ø EINVAL¡£
Èç¹û rval_ptr Ϊ NULL£¬Ôòµ÷ÓÃpthread_join º¯Êý½«µÈ´ýÖ¸¶¨µÄÏß³ÌÖÕÖ¹£¬µ«ÊDz¢²»»ñÈ¡Ï̵߳ÄÖÕֹ״̬¡£
5.
Ïà¹ØÎĵµ£º
linuxÉ豸Çý¶¯µÄѧϰÊÇÒ»ÏîºÆ´óµÄ¹¤³Ì,¶ÁÕßÐèÒªÊ×ÏÈÕÆÎÕÒÔÏ»ù´¡:
1.Á¼ºÃµÄÓ²¼þ»ù´¡,¶®µÃSRAM,FLASH,SDRAM,Ó²Å̵ĶÁд·½Ê½,UART,I2C,USBµÈÉ豸½Ó ¿Ú,ÂÖѯ,ÖжÏ,DMAµÄÔÀí,PCI×ÜÏߵŤ×÷·½Ê½ÒÔ¼°CPUµÄÄÚ´æ¹ÜÀíµ¥Ôª(MMU)µÈ.
2.Á¼ºÃµÄCÓïÑÔ»ù´¡,ÄÜÁé»îµØÔ ......
×÷Õߣº¸ßÕÅÔ¶Öõ(HiLoveS)
²©¿Í£ºhttp://www.cnblogs.com/hiloves/
×ªÔØÇë±£Áô¸ÃÐÅÏ¢
XManager ÊÇÒ»¸ö¼òµ¥Ò×ÓõĸßÐÔÄܵÄÔËÐÐÔÚWindowsƽ̨ÉϵÄX-ServerÈí¼þ£¬¶øGnomeºÍKDE¾ÍÊÇX-Client£¬LinuxϵÄX- ServerÔòΪXorg¡£ËüÄܰÑÔ¶¶ËUnix/LinuxµÄ×ÀÃæÎÞ·ìµØ´øµ½ÄãµÄWindowsÉÏ£¬ÉõÖÁµ±ÄãµÄµçÄÔÊÇÔÚÄÚÍø»ò·À»ðǽºó£¬ÄãÒ²ÄÜͨ ......
LinuxϵĶàÏ̱߳à³Ì
1 ÒýÑÔ
¡¡¡¡Ị̈߳¨thread£©¼¼ÊõÔçÔÚ60Äê´ú¾Í±»Ìá³ö£¬µ«ÕæÕýÓ¦ÓöàÏ̵߳½²Ù×÷ϵͳÖÐÈ¥£¬ÊÇÔÚ80Äê´úÖÐÆÚ£¬solarisÊÇÕâ·½ÃæµÄٮٮÕß¡£´«Í³µÄUnixÒ²Ö§³ÖÏ̵߳ĸÅÄµ«ÊÇÔÚÒ»¸ö½ø³Ì£¨process£©ÖÐÖ»ÔÊÐíÓÐÒ»¸öỊ̈߳¬ÕâÑù¶àÏ߳̾ÍÒâζ×Å¶à½ø³Ì¡£ÏÖÔÚ£¬¶àÏ̼߳¼ÊõÒѾ±»Ðí¶à²Ù×÷ϵͳËùÖ§³Ö£¬°üÀ¨Windows/NT£ ......
°æÈ¨ÉùÃ÷
±¾ÎÄ×÷ÕßÊÇһλ×ÔÓÉÈí¼þ°®ºÃÕߣ¬ËùÒÔ±¾ÎÄËäÈ»²»ÊÇÈí¼þ£¬µ«ÊDZ¾×Å GPL µÄ¾«Éñ·¢²¼¡£ÈκÎÈ˶¼¿ÉÒÔ×ÔÓÉʹÓá¢×ªÔØ¡¢¸´ÖƺÍÔÙ·Ö·¢£¬µ«±ØÐë±£Áô×÷ÕßÊðÃû£¬Ò಻µÃ¶ÔÉùÃ÷ÖеÄÈκÎÌõ¿î×÷ÈκÎÐÎʽµÄÐ޸ģ¬Ò²²»µÃ¸½¼ÓÈÎºÎÆäËüÌõ¼þ¡£Äú¿ÉÒÔ×ÔÓÉÁ´½Ó¡¢ÏÂÔØ¡¢´«²¥´ËÎĵµ£¬µ«Ç°ÌáÊDZØÐ뱣֤ȫÎÄÍêÕû×ªÔØ£¬°üÀ¨ÍêÕûµÄ°æÈ¨ÐÅÏ¢ºÍ× ......