Mr. ProcessµÄÒ»Éú£LinuxÄں˵ÄÉç»áÊÓ½Ç (1)µ÷¶È
Written by manio (http://blog.csdn.net/manio)
LinuxÄÚºËÊÇÒ»¸öÎޱȸ´ÔÓµÄϵͳ£¬ÒªÏë¿´Çå´óÖµÄÂöÂçÒ²·ÇÒ×Ê¡£Æäʵ£¬¿ÉÒÔ°ÑÔËÐÐÖеÄLinuxÏëÏñ³ÉÒ»¸öÈËÀàµÄÉç»á£¬µ±ÖеĽø³Ì¾ÍÊÇÉç»áÖеÄÈË¡£ÈËÓÐÉúÀϲ¡ËÀ£¬½ø³ÌÓд´½¨¡¢Òì³£¡¢ÖÕÖ¹¡£ÈËÓи÷ÖÖ¸÷ÑùµÄ²Æ²ú£¬½ø³ÌÓжÔÓ¦µÄµØÖ·¿Õ¼ä¡¢É豸µÈµÈ¡£È˱»¸÷ÖÖ¸÷ÑùµÄ¶«Î÷ÏÞÖÆ×Å£¬±»È˹Ü×Å£¬½ø³ÌÒ²ÊÇ¡£ÄÚºËÎޱȾ޴󣬴ÓÄÄ×ÅÊÖ£¿ÎÒÏ룬´Ó½ø³ÌµÄÊÓ½ÇÀ´¿´ÊǸöºÃ°ì·¨¡£²¢ÇÒ£¬ÔÚѧϰLinuxÄں˵Äͬʱ£¬Àà±ÈÈËÀàÉç»áÀ´¿´£¬»áÓиüÉî¿ÌµÄÓ¡Ïó£¬Àí½âµÃ¸ü͸³¹¡£
±¾À´Ò²Ó¦¸Ã´Ó½ø³ÌµÄ´´½¨¿ªÊ¼Ð´µÄ£¬µ«ÊÇ×î½üÔÚ¿´µ÷¶ÈµÄÏà¹ØÂÛÎÄ£¬¾ÍÓÖ°ÑLinuxµ÷¶ÈµÄ¶«Î÷¿´ÁËһϡ£ËùÒÔ£¬¾ÍÏÈдµ÷¶ÈÏà¹ØµÄ¶«Î÷°É¡£
Ê×ÏȽéÉÜÓë½ø³ÌËùÔÚ»·¾³¶ÔÓ¦µÄÈËÀೡ¾°£º
ÕâÊÇÒ»¸ö¹«Ë¾£¬¹«Ë¾ÀïÓкܶàÈË£¨½ø³Ì£©£¬Ã¿¸öÈ˶¼ÓÐÆä¶ÔÓ¦µÄÖ°³Æ£¨ÓÅÏȼ¶£©¡£Õâ¸ö¹«Ë¾ºÜÆæ¹Ö£¬Ö»ÓÐÒ»ÕŰ칫×À£¨CPU£©£¬ÔÚÈÎÒâʱ¿Ì£¬Ö»ÄÜÓÐÒ»¸öÈËÔÚ¹¤×÷(TASK_RUNNINGÕýÔÚÔËÐÐ״̬)¡£ÆäËûÈËÄØ£¬ÒªÃ´ÔÚÐÝÏ¢ÊÒʱ¶ÌÔݵØÐÝÏ¢£¨¶ÔÓ¦TASK_RUNNING¾ÍÐ÷״̬£©£¬ÒªÃ´¾ÍÔÚÇÞÊÒSleep(¶ÔÓ¦TASK_INTERRUPTABLE»òTASK_UNINTERRUPTABLE)£¬ÒªÃ´¾ÍÊÇËÀÈËÁË£¬ÔÚͣʬ¼ä£¨TASK_ZOMBIE£©¡£Êǵģ¬ÕâÊÇÕæµÄ£¬Õâ¸ö¹«Ë¾¾ÍÊǸöѪº¹¹¤³§£¬¸É»îÀÛËÀÁË£¬¾ÍÖ±½Ó¶ª½øÍ£Ê¬¼ä£¬²Ò¾øÈËå¾£¡
ÒÔÏÂÊǴ˹«Ë¾µÄÆ½ÃæÍ¼£º
ͼ½â£º“ÍÆÃÅ”Êǵ¥ÏòµÄ£º±ÈÈçÁ¬½Ó¹¤×÷ÊÒºÍ̫ƽ¼äµÄÊÇÍÆÃÅ£¬Ö°Ô±Ö»ÄÜ´Ó¹¤×÷ÊÒ×ßµ½Ì«Æ½¼ä£¬²»ÄÜ´Ó̫ƽ¼ä×ßµ½¹¤×÷ÊÒ£¨ÕâÌ«ÏÅÈËÁË£©¡£“°¼²ÛÃÅ”ÊÇË«ÏòµÄ£º±ÈÈçÁ¬½Ó¹¤×÷ÊÒºÍÐÝÏ¢ÊÒµÄÃÅÊǰ¼²ÛÃÅ£¬Ö°Ô±¿ÉÒÔ×ßÀ´×ßÈ¥¡£
ʱ¼äƬ(time slice)£ºÕâ¸ö¹«Ë¾µÄ¹¤×ÊÌØ±ð¸ß£¬°´¹¤×÷µÄСʱÊý¼ÆËã¡£¹¤×÷ÕßµÃÇ®£¬²»¹¤×÷Õß²»µÃÇ®¡£ËùÒÔ£¬ËùÓеÄÈ˶¼ÌØÏëÈ¥°ì¹«×ÀÄÇÀ﹤×÷£¬Õù×ÅÇÀ×ÅҪȥ¡£ÎªÁËÈôó¼Ò¶¼Óлú»áÈ¥¹¤×÷£¨±ÜÃâÓеÄÈËûǮÄ㬶öËÀ£¬i.e. starve to death£©£¬ËùÒÔ¹«Ë¾³öÁËÌõ¹æ¶¨£¬Ã¿¸öÈËÿ´Î¹¤×÷µÄʱ¼ä²»Äܳ¬¹ý¹«Ë¾·Ö¸ø×Ô¼ºµÄʱ¼äƬ£¨time slice£©¡£Ê±¼äƬµÄ´óСÓÉ´ËÈ˵ÄÖ°³Æ¾ö¶¨¡£
Ö°³Æ£¨Ò²¾ÍÊÇÄÚºËÖеÄpriority£©£ºÖ°³ÆÓÐÁ½ÖÖ£¬Ò»ÖÖÊǾ²Ì¬Ö°³Æ£¨static priority£©£¬Ò»ÖÖÊǶ¯Ì¬Ö°³Æ£¨dynamic priority£©¡£¾²Ì¬Ö°³ÆÊÇÏÈÌìµÄ£¬ÓÉ´ËÈ˵ÄÀϰ־ö¶¨£¨¸»¶þ´úÓÐÏÈÌìÓÅÊÆ£¡£©¡£¶¯Ì¬ÓÅÏȼ¶ÊÇ¿´ÔÚ¹«Ë¾ÀïµÄ¹¤×÷±íÏֵġ£Ö°³ÆÊǺÜÖØÒªµÄ¶«Î÷£¬Ö°³ÆÔ½¸ß£¬Äãµ½°ì¹«×ÀÉÏ׬ǮµÄ»ú»áÔ½´ó¡£
ĬÈÏʱ¼äƬ³¤µãºÃ»¹ÊǶ̵ãºÃ£¿
×ÔÈ»ÊDz»³¤²»¶ÌºÃ£¨ÊÀ½çÉϵÄÊÂÇé¶¼ÊÇÕâÑù£©¡£Èç¹ûÌ«¶ÌÁË£¬±ÈÈç˵ijְԱʱ¼äƬÊÇ1·ÖÖÓ£¨¶ÔÓ¦µÄLi
Ïà¹ØÎĵµ£º
1. HCI²ãÐÒé¸ÅÊö£º
HCIÌṩһÌ×ͳһµÄ·½·¨À´·ÃÎÊBluetoothµ×²ã¡£ÈçͼËùʾ£º
´ÓͼÉÏ¿ÉÒÔ¿´³ö£¬Host Controller Interface(HCI) ¾ÍÊÇÓÃÀ´¹µÍ¨HostºÍModule¡£Hostͨ³£¾ÍÊÇPC£¬ ModuleÔòÊÇÒÔ¸÷ÖÖÎïÀíÁ¬½ÓÐÎʽ£¨USB,serial,pc-cardµÈ£©Á¬½Óµ½PCÉϵÄbluetooth Dongle¡£
ÔÚHostÕâÒ»¶Ë£ºapplication,SDP,L2capµÈÐÒé ......
ÏÂÃæÊÇÔÚÐéÄâ»úÖеÄlinuxµÄftpµÄ»ù±¾ÅäÖã¨redhat AS 4.0ΪÀý£©£º
Ê×ÏÈÒª°²×°linuxϵÄvsftpÈí¼þ°ü¡£
rpm -qa|gerp vsftpd //²éÕÒvsftpdÓÐûÓа²×°
[root@RAC01 ~]# rpm -qa|grep vsftpd
vsftpd-2.0.1-5.EL4.7
[root@RAC01 ~]#
Èç¹ûûÓа²×°¾Í vsftpd-2.0.1-5.i386.rpm
ÔÚli ......
LINUX³£ÓÃÃüÁ»ù´¡£©
1. man ¶ÔÄãÊìϤ»ò²»ÊìϤµÄÃüÁîÌṩ°ïÖú½âÊÍ
eg:man ls ¾Í¿ÉÒԲ鿴lsÏà¹ØµÄÓ÷¨
×¢£º°´q¼ü»òÕßctrl+cÍ˳ö£¬ÔÚlinuxÏ¿ÉÒÔʹÓÃctrl+cÖÕÖ¹µ±Ç°³ÌÐòÔËÐС£
2. ls ²é¿´Ä¿Â¼»òÕßÎļþµÄÊô*£¬ÁоٳöÈÎһĿ¼ÏÂÃæµÄÎļþ
eg: ls /usr/man
ls -l
a.d±íʾĿ¼(directory)£¬Èç¹ûÊÇÒ»¸ö"-"±íʾÊÇÎļþ£¬Èç¹û ......
ÔÚLinuxÄں˴úÂëÖУ¬ÓÐÒ»¸öÐźŴ¦Àí°ó¶¨Æ÷º¯Êýsignal£¬Ëüµ½ÔÐͶ¨ÒåÈçÏ£¬Í¨¹ýman 2 signal¿ÉÒԲ鿴ÆäÔÐÍ¡£
#include <signal.h>
typedef void (*sighandler_t)(int); (1)
sighandler_t signal(int signum,sighandler_t handler); (2)
µÚÒ»¾äÊǰüº¬Í·Îļþ£¬µÚ¶þ¾äÊÇÀàÐͶ¨Ò ......