ÍøÂçÐÅÏ¢²é¿´
²é¿´ÍøÂ·½Ó¿ÚÐÅÏ¢
1£®Á˽âlinuxÖеÄÍøÂç½Ó¿ÚÉ豸
$/sbin/ifconfig ²é¿´ËùÓÐ»î¶¯ÍøÂç½Ó¿ÚÐÅÏ¢£¬ÆäÖаüÀ¨Ò»¸ölo»·»Ø¶Ë¿Ú¡£
2£®²é¿´Ö¸¶¨ÍøÂç½Ó¿ÚµÄÐÅÏ¢
$/sbin/ifconfig <ÍøÂç½Ó¿ÚÃû³Æ> ²é¿´Ö¸¶¨½Ó¿ÚÐÅÏ¢¡£
3£®²é¿´ÏµÍ³ÖÐËùÓÐÍøÂç½Ó¿ÚµÄÐÅÏ¢
$/sbin/ifconfig –a ²é¿´ËùÓнӿÚÐÅÏ¢£¬°üÀ¨·Ç»î¶¯×´Ì¬½Ó¿Ú¡£
×¢£ºÆÕͨÓû§²é¿´ÍøÂç½Ó¿ÚÐÅϢʱ£¬ÐèÒªÔÚÃüÁîǰ¼Ó“/sbin”£¬¶ø¹ÜÀíԱȴ²»Óá£ÕâÊÇÓÉÓÚÃüÁîËÑ
Ë÷·¾¶µÄÔÒò£¬¿ÉÒÔͨ¹ý“$echo $PATH”²é¿´¡£
²é¿´Íø¹ØµØÖ·ºÍ·ÓÉÐÅÏ¢
1¡¢²é¿´Ö÷»ú·ÓÉÐÅÏ¢
#/route ÏÔʾµ±Ç°linuxÖ÷»úÖеÄ·Óɱí ......
½ø³ÌÊÇϵͳÖгÌÐòÖ´ÐкÍ×ÊÔ´·ÖÅäµÄ»ù±¾µ¥Î»¡£Ã¿¸ö½ø³Ì¶¼ÓÐ×Ô¼ºµÄÊý¾Ý¶Î£¬´úÂë¶ÎºÍ¶ÑÕ»¶Î£¬Õâ¾Íµ¼ÖÂÁ˽ø³ÌÔÚ½øÐÐÇл»µÈ²Ù×÷Æðµ½ÁËÏÖ³¡±£»¤×÷Óᣵ«ÊÇΪÁ˽øÒ»²½¼õÉÙ´¦Àí»úµÄ¿Õתʱ¼äÖ§³Ö¶à´¦ÀíÆ÷ºÍ¼õÉÙÉÏÏÂÎÄÇл»¿ªÏú£¬½ø³ÌÑÝ»¯ÖгöÏÖÁËÁíÍâÒ»¸ö¸ÅÄÕâ¾ÍÊÇỊ̈߳¬Ò²±»È˳ÆÎªÇáÁ¿¼¶µÄ½ø³Ì¡£ËüÊÇÒ»¸ö½ø³ÌÄڵĻù±¾µ÷¶Èµ¥Î»¡£Ïß³ÌÊÇÔÚ¹²ÏíµÄÄÚ´æ¿Õ¼äÖв¢·¢µÄ¶àµÀÖ´Ðз¾¶£¬ËüÃǹ²ÏíÒ»¸ö½ø³ÌµÄ×ÊÔ´£¬±ÈÈçÎļþÃèÊö·ûºÍÐźŴ¦ÀíµÈ¡£Òò´Ë£¬ ´ó´ó¼õÉÙÁËÉÏÏÂÎÄÇл»µÄ¿ªÏú¡£
Ï̸߳ú½ø³ÌÒ»Ñù£¬¶¼ÓµÓÐÒ»ÕÅ¿ØÖÆ±í£¬Ï߳̽«Ïà¹ØµÄ±äÁ¿Öµ·ÅÔÚÏ߳̿ØÖƱíÖС£Ò»¸ö½ø³Ì¿ÉÒÔÓµÓÐÒ»¸ö»òÕßÒ»¸öÒÔÉϵÄỊ̈߳¬Ò²¾ÍÊÇÓжà¸öÏ߳̿ØÖƱíºÍ¶ÑÕ»¼Ä´æÆ÷¡£µ«ÊÇËüÃÇÊǹ²ÏíÒ»¸öÄÚ´æ¿Õ¼äµÄ£¬Õâ¾Íµ¼ÖÂÁËÿ¸öÏ̵߳IJÙ×÷¶¼»áÓ°Ïìµ½ÆäËûÏ̡߳£ËùÒÔÏ̵߳Äͬ²½ÊǷdz£ÖØÒªµÄ¡£
Ï߳̿ɷÖΪÓû§¼¶Ï̺߳ͺËÐļ¶Ï̡߳£
£¨1£©Óû§¼¶Ïß³ÌÖ÷ÒªÊǽâ¾öÉÏÏÂÎÊÇл»µÄÎÊÌ⣬ËüµÄµ÷¶ÈËã·¨ºÍµ÷¶È¹ý³Ì¶¼ÊÇÓû§×Ô¼ºÑ¡Ôñ¾ö¶¨µÄ£¬ÔÚÔËÐÐʱ²¢²»ÐèÒªÌØ¶¨µÄÄÚºËÖ§³Ö£¬²Ù×÷ϵͳ¶¼»áÌṩһ¸ö¿âº¯Êý£¬°üÀ¨¶ÔÏ̵߳Ĵ´½¨¡¢µ÷¶È¡¢³·ÏúµÄµÈ¹¦ÄÜ¡£¶øÄÚºËÈÔÈ»¶È½ø³Ì½øÐйÜÀí¡£Èç¹ûÒ»¸ö½ø³ÌÖеÄÒ»¸öÏ̵߳÷ÓÃÁË×èÈûµÄϵͳµ÷Óã¬ÄÇô¸Ã½ø³ÌºÍ¸Ã½ø³Ì ......
ÔÚÉÏһƪÎÄÕÂÖжÔÏ߳̽øÐÐÁ˼òµ¥µÄ¸ÅÊö£¬ËüÔÚϵͳÖкͱà³ÌµÄÓ¦ÓÃÖУ¬°çÑݵĽÇÉ«ÊDz»ÑÔ¶øÓ÷µÄ¡£Ñ§Ï°Ëü¡¢ÕÆÎÕËü¡¢³Ô͸ËüÊÇ×÷Ϊһ¸ö³ÌÐòÔ±µÄ±ØÐë×÷Ϊ¡£ÔÚ½ÓÏÂÀ´µÄ½²ÊöÖУ¬ËùÓÐÏ̵߳IJÙ×÷¶¼ÊÇÓû§¼¶µÄ²Ù×÷¡£ÔÚLINUXÖУ¬Ò»°ãpthreadÏ߳̿âÊÇÒ»Ì×ͨÓõÄÏ߳̿⣬ÊÇÓÉPOSIXÌá³öµÄ£¬Òò´ËËûµÄÒÆÖ²ÐÔÊǷdz£ºÃµÄ¡£
´´½¨Ïß³Ìʵ¼ÊÉϾÍÊÇÈ·¶¨µ÷ÓøÃÏ̺߳¯ÊýµÄÈë¿Úµã£¬ÕâÀïͨ³£Ê¹Óõĺ¯ÊýÊÇpthread_create¡£ÔÚÏ̴߳´½¨Ö®ºó£¬¾Í¿ªÊ¼ÔËÐÐÏà¹ØµÄÏ̺߳¯Êý¡£Ôڸú¯ÊýÔËÐнáÊø£¬Ïß³ÌÒ²»áËæ×ÅÍ˳ö¡£ÕâÊÇÆäÖÐÍ˳öÏ̵߳ÄÒ»ÖÖ·½·¨£¬ÁíÍâÒ»ÖÖÍ˳öÏ̵߳ķ½·¨¾ÍÊǵ÷ÓÃpthread_exit()º¯Êý½Ó¿Ú£¬ÕâÊǽáÊøº¯ÊýµÄÖ÷¶¯ÐÐΪ¡£ÔÚÕâÀïҪעÒâµÄÊÇ£¬ÔÚʹÓÃÏ̺߳¯Êýʱ£¬²»ÒªÇáÒ×µ÷ÓÃexit()º¯Êý£¬ÒòΪÕâÑù»áʹÕû¸ö½ø³ÌÍ˳ö£¬ÍùÍùÒ»¸ö½ø³Ì°üº¬×Ŷà¸öỊ̈߳¬ËùÒÔµ÷ÓÃÁËexit()Ö®ºó£¬ËùÓиýø³ÌÖеÄÏ̶߳¼»á±»½áÊøµô¡£Òò´Ë£¬ÔÚÏß³ÌÖУ¬ÀûÓÃpthread_exitÀ´Ìæ´ú½ø³ÌÖеÄexit¡£
ÓÉÓÚÒ»¸ö½ø³ÌÖеÄÊý¾Ý¶ÎÊǹ²ÏíµÄ£¬Òò´Ëͨ³£ÔÚÏß³ÌÍ˳öÖ®ºó£¬Í˳öÏß³ÌËùÕ¼µÄ×ÊÔ´²¢²»»áËæ×ÅÏ̵߳ĽáÊø¶øµÃµ½ÊÍ·Å¡£ÕýÈç½ø³ÌÖ®¼ä¿ÉÒÔµ÷ÓÃwait()º¯ÊýÀ´Í¬²½ÖÐÖ¸²¢ÊÍ·Å×ÊÔ´Ò»Ñù£¬Ï ......
ÔÚÉÏһƪÎÄÕÂÖУ¬½éÉÜÁËÏ̵߳Ĵ´½¨ºÍÍ˳ö£¬ÒÔ¼°Ïà¹Øº¯ÊýµÄʹÓá£ÆäÖÐpthread_createº¯ÊýµÄµÚ¶þ¸ö²ÎÊý£¬ÊǹØÓÚÏß³ÌÊôÐÔµÄÉèÖã¬ÕâÒ²ÊǽñÌìËùÓн²ÊöµÄ¡£ÕâЩÊôÐÔÖ÷Òª°üÀ¨°î¶¨ÊôÐÔ¡¢·ÖÀëÊôÐÔ¡¢¶ÑÕ»µØÖ·¡¢¶ÑÕ»´óС¡¢ÓÅÏȼ¶¡£ÆäÖÐϵͳĬÈϵÄÊǷǰ¡¢·Ç·ÖÀ롢ȱʡ1MµÄ¶ÑÕ»¡¢Ó븸½ø³ÌͬÑù¼¶±ðµÄÓÅÏȼ¶¡£ÔÚpthread_createÖУ¬°ÑµÚ¶þ¸ö²ÎÊýÉèÖÃΪNULLµÄ»°£¬½«²ÉÓÃĬÈϵÄÊôÐÔÅäÖá£
£¨1£©°î¶¨ÊôÐÔ¡£
ÔÚLINUXÖУ¬²ÉÓõÄÊǓһ¶ÔÒ»”µÄÏ̻߳úÖÆ¡£Ò²¾ÍÊÇÒ»¸öÓû§Ï̶߳ÔÓ¦Ò»¸öÄÚºËÏ̡߳£°î¶¨ÊôÐÔ¾ÍÊÇÖ¸Ò»¸öÓû§Ï̶̹߳¨µØ·ÖÅä¸øÒ»¸öÄÚºËỊ̈߳¬ÒòΪCPUʱ¼äƬµÄµ÷¶ÈÊÇÃæÏòÄÚºËỊ̈߳¨ÇáÁ¿¼¶½ø³Ì£©µÄ£¬Òò´Ë¾ßÓаÊôÐÔµÄÏ߳̿ÉÒÔ±£Ö¤ÔÚÐèÒªµÄʱºò×ÜÓÐÒ»¸öÄÚºËÏß³ÌÓëÖ®¶ÔÓ¦£¬¶øÓëÖ®¶ÔÓ¦µÄ·Ç°î¶¨ÊôÐÔ¾ÍÊÇÖ¸Óû§Ï̺߳ÍÄÚºËÏ̵߳ĹØÏµ²»ÊÇʼÖչ̶¨µÄ£¬¶øÊÇÓÉϵͳÀ´·ÖÅä¡£
£¨2£©·ÖÀëÊôÐÔ¡£
·ÖÀëÊôÐÔÊǾö¶¨ÒÔÒ»¸öʲôÑùµÄ·½Ê½À´ÖÕÖ¹×Ô¼º¡£ÔÚ·Ç·ÖÀëÇé¿öÏ£¬µ±Ò»¸öÏ߳̽áÊøÊ±£¬Ëü¶àÕ¼ÓõÄÏß³ÌûÓеõ½ÊÍ·Å£¬Ò²¾ÍÊÇûÓÐÕæÕýµÄÖÕÖ¹£¬ÐèҪͨ¹ýpthread_joinÀ´ÊÍ·Å×ÊÔ´¡£¶øÔÚ·ÖÀëÊôÐÔÇé¿öÏ£¬Ò»¸öÏ߳̽áÊøÊ±»áÁ¢¼´ÊÍ·ÅËüËùÕ¼ÓеÄϵͳ×ÊÔ´¡£µ«ÕâÀïÓÐÒ»µãҪעÒâµÄÊÇ£¬Èç¹ûÉèÖÃÒ»¸öÏß³Ì·Ö ......
1. Ïà¹Øº¯Êý
#include <pthread.h>
pthread_cond_t cond = PTHREAD_COND_INITIALIZER;
int pthread_cond_init(pthread_cond_t *cond, pthread_condattr_t
*cond_attr);
int pthread_cond_signal(pthread_cond_t *cond);
&nbs ......
Ïß³ÌÖл¥³âËøµÄʹÓ㬴ﵽ¶Ô¹²Ïí×ÊÔ´»¥³âʹÓᣳýÁËʹÓû¥³âËø£¬ÐźÅÁ¿£¬Ò²¾ÍÊDzÙ×÷ϵͳÖÐËùÌáµ½µÄPVÔÓÄÜ´ïµ½»¥³âºÍͬ²½µÄЧ¹û£¬Õâ¾ÍÊǽñÌìÎÒÃÇËùÒª½²ÊöµÄÐźÅÁ¿Ï߳̿ØÖÆ¡£
PVÔÓïÊǶÔÕûÊý¼ÆÊýÆ÷ÐźÅÁ¿semµÄ²Ù×÷£¬Ò»´ÎP²Ù×÷¿Éʹsem¼õÒ»£¬¶øÒ»´ÎV²Ù×÷¿ÉÊÇsem¼ÓÒ»¡£½ø³Ì£¨»òỊ̈߳©¸ù¾ÝÐźÅÁ¿µÄÖµÀ´ÅжÏÊÇ·ñ¶Ô¹«¹²×ÊÔ´¾ßÓзÃÎÊȨÏÞ¡£µ±ÐźÅÁ¿µÄÖµ´óÓÚÁã»òµÈÓÚÁãµÄʱºò£¬¸Ã½ø³Ì£¨»òỊ̈߳©¾ßÓжԹ«¹²×ÊÔ´·ÃÎʵÄȨÏÞ£¬·ñÔò£¬µ±ÐźÅÁ¿µÄֵСÓÚʱ£¬¸Ã½ø³Ì£¨»òỊ̈߳©¾Í»á±»×èÈû£¬Ö±µ½ÐźÅÁ¿µÄÖµ´óÓÚ»òµÈÓÚÒ»¡£
1¡¢ÔÚLINUXÖУ¬ÊµÏÖÁËPOSIXµÄÎÞÃûÐźÅÁ¿£¬Ö÷ÒªÓÃÓÚÏ̼߳äµÄ»¥³âͬ²½£¬ÏÂÃæ½«¼òµ¥½éÉÜһЩº¯Êý½Ó¿Ú£º
£¨1£©¡¢sem_init
¹¦ÄÜ£º ÓÃÓÚ´´½¨Ò»¸öÐźÅÁ¿£¬²¢³õʼ»¯ÐźÅÁ¿µÄÖµ¡£
Í·Îļþ£º <semaphore.h>
º¯ÊýÔÐÍ£º int sem_init (sem_t* sem, int pshared, unsigned int value);
º¯Êý´«ÈëÖµ£º sem:ÐźÅÁ¿¡£
  ......