Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

Interrupt in Linux£¨Ó²¼þƪ£©—— APIC

1.2ÏÖ´úµÄAPIC
APICËäºÅ³ÆÏÖ´ú£¬µ«Ò²³öÏÖ10¼¸ÄêÁË£¬PC»úÊг¡×ÜÊǺÜÍí²ÅÄܽӴ¥µ½Ðµļ¼Êõ£¬Ç°ÃæËµÁË£¬ÎÒµÄT42ÓõϹÊÇPICÄØ¡£APICÏà½ÏÓÚPICÀ´Ëµ£¬×î´óµÄÓŵãÊÇÄÜÊÊÓÃÓÚMPƽ̨£¬µ±È»£¬¹Ü½Å¶àÊÇËüÁíÒ»¸öÓŵ㡣APICÓÉÁ½²¿·Ö×é³É£¬Ò»¸ö³ÆÎªLAPIC£¨Local APIC£¬±¾µØ¸ß¼¶ÖжϿØÖÆÆ÷£©£¬Ò»¸ö³ÆÎªIOAPIC£¨I/O APCI£¬I/O¸ß¼¶ÖжϿØÖÆÆ÷£©¡£Ç°ÕßλÓÚCPUÖУ¬ÔÚMPƽ̨£¬Ã¿¸öCPU¶¼ÓÐÒ»¸ö×Ô¼ºµÄLAPIC¡£ºóÕßͨ³£Î»ÓÚÄÏÇÅÉÏ£¬ÏñPICÒ»Ñù£¬Á¬½Ó¸÷¸ö²úÉúÖжϵÄÉ豸¡£ÔÚÒ»¸öµäÐ͵ľßÓжà¸ö´¦ÀíÆ÷µÄPCƽ̨£¬Í¨³£ÓÐÒ»¸öIOAPICºÍ¶à¸öLAPIC£¬ËüÃÇÏ໥ÅäºÏ£¬ÐγÉÒ»¸öÖжϵķַ¢ÍøÂ磬ͼ1-3ÏÔʾÁËÕâ¸öµäÐ͵ÄÇé¿ö£º
ͼ1-3 APICģʽ£¨Õª×Ô¡¶ÉîÈëÀí½âLinuxÄںˡ·£©
ͼÖеÄÖжϿØÖÆÆ÷ͨÐÅ×ÜÏߣ¬ÊÇIOAPICºÍLAPICͨÐŵÄÇÅÁº£¬ÔÚIntelµÄP6¼Ü¹¹ºÍPentiumϵÁÐCPUÖУ¬ËüÊÇÒ»Ìõµ¥¶ÀµÄAPIC×ÜÏß¡£Ê±´úÔÚ½ø²½£¬Pentium4ºÍXeonϵÁÐCPU³öÏÖºó£¬APIC BusÒѾ­²»´æÔÚ£¬ÏµÍ³µÄǰ¶Ë×ÜÏß´úÌæÁËËü¡£
1.2.1 IOAPIC
»°·ÖÁ½Í·£¬ÈÃÎÒÃÇÏÈÀ´¿´¿´IOAPIC¡£ºÍPIC¶Ô±È£¬IOAPIC×î´óµÄ×÷ÓÃÔÚÓÚÖжϷַ¢¡£¸ù¾ÝÆäÄÚ²¿µÄPRT£¨Programmable Redirection Table£©±í£¬IOAPIC¿ÉÒÔ¸ñʽ»¯³öÒ»ÌõÖжÏÏûÏ¢£¬·¢Ë͸øÄ³¸öCPUµÄLAPIC£¬ÓÉLAPIC֪ͨCPU½øÐд¦Àí¡£Ä¿Ç°µäÐ͵ÄIOAPIC¾ßÓÐ24¸öÖжϹܽţ¬Ã¿¸ö¹Ü½Å¶ÔÓ¦Ò»¸öRTE£¨Redirection Table Entry£¬PRT±íÏ¡£ÓëPIC²»Í¬µÄÊÇ£¬IOAPICµÄ¹Ü½ÅûÓÐÓÅÏȼ¶£¬Ò²¾ÍÊÇ˵£¬Á¬½ÓÔڹܽÅÉϵÄÉ豸ÊÇÆ½µÈµÄ¡£µ«Õâ²¢²»Òâζ×ÅAPICϵͳÖÐûÓÐÓ²¼þÓÅÏȼ¶¡£É豸µÄÖжÏÓÅÏȼ¶ÓÉËü¶ÔÓ¦µÄvector¾ö¶¨£¬APIC½«ÓÅÏȼ¶¿ØÖƵŦÄܷŵ½ÁËLAPICÖУ¬ÎÒÃÇÔÚºóÃæ»á¿´µ½¡£
Òª¸ãÇå³þIOAPICÊÇÔõô¹¤×÷µÄ£¬PRT±íÊǹؼü£¬Ï±íÁгöÁËRTEµÄ¸ñʽ£º
Bit
ÃèÊö
63:56
Destination Field£¬Ä¿µÄ×ֶΣ¬R/W£¨¿É¶Áд£©¡£¸ù¾ÝDestination Filed£¨¼ûÏ£©ÖµµÄ²»Í¬£¬¸Ã×Ö¶ÎÖµµÄÒâÒ岻ͬ£¬ËüÓÐÁ½¸öÒâÒ壺
Physical Mode£¨Destination ModeΪ0ʱ£©£º ÆäֵΪAPIC ID£¬ÓÃÓÚ±êʶһ¸öΨһµÄAPIC¡£
Logical Mode£¨Destination ModeΪ1ʱ£©£ºÆäÖµ¸ù¾ÝLAPICµÄ²»Í¬ÅäÖ㬴ú±íÒ»×éCPU£¨¾ßÌå¼ûLAPICÏà¹ØÄÚÈÝ£©
55:17
Reserved£¬Ô¤ÁôδÓá£
16
Interrupt Mask£¬ÖÐ¶ÏÆÁ±Î룬R/W¡£ÖÃһʱ£¬¶ÔÓ¦µÄÖжϹܽű»ÆÁ±Î£¬Õâʱ²úÉúµÄÖжϽ«±»ºöÂÔ¡£ÇåÁãʱ£¬¶ÔÓ¦¹Ü½Å²úÉúµÄÖжϱ»·¢ËÍÖÁLAPIC¡£
15
Trigger Mode£¬´¥·¢Ä£Ê½£¬R/W¡£Ö¸Ã÷¸Ã¹Ü½ÅµÄµÄÖжÏÓÉʲô·½Ê½´¥·¢¡£
1£ºLevel£¬µçƽ´¥·¢
2£ºEdge£¬±ßÑØ´¥·¢
14
Remote IRR£¬Ô¶³ÌIRR£¬RO£¨Ö»¶Á£©


Ïà¹ØÎĵµ£º

ÈÃSolarisºÍLinuxÒ»Ñù¶à²Ê


ÔÚSolarisÉÏÃæ¹¤×÷Óм¸¸ö²»·½±ãµØ·½:
Ò»¸öÊÇls²»Äܰ´ÕÕÎļþÀàÐÍÏÔʾÑÕÉ«;
ÁíÒ»¸öÊÇVIÒ²²»ÄÜÏÔÏÖÓ﷨ɫ²Ê;
ÕâÀï¾ÍÀ´ËµÃ÷ÈçºÎ½â¾öÕâÁ½¸öÎÊÌâ:
ÆäʵÕâÁ½¸öÎÊÌâ¶¼ÊÇSolaris×ÔÉíËù´øµÄlsºÍvi°æ±¾µÄÎÊÌâ;
ËùÒÔ½â¾ö°ì·¨¾ÍÊÇÏÂÔØ×îеÄlsºÍvimÔ´Îļþ°üÖØÐ±àÒë½øÐа²×°,¿´ÉÏÈ¥ºÃÏñͦÂé·³,Æäʵ¾Í¼¸²½,ºÜ¼òµ¥µÄ:
×îеÄlsÊÇÔÚ ......

LinuxÉ豸Çý¶¯Ñ§Ï°£­Davinci¿ª·¢°åÉÏÔËÐеÄhelloÄ£¿é


LinuxÉ豸Çý¶¯Ñ§Ï°£­Davinci¿ª·¢°åÉÏÔËÐеÄhelloÄ£¿é
 
¿´Á˺ܶà¸öhello worldÁË£¬×Ô¼ºÀ´Ð´Ò»¸öÔÚdavinci°å¿éÉÏÅܵİɡ£
Ö÷ÌåºÜ¼òµ¥£¬¾ÍÊÇÒ»¸öCÎļþhello_davinci.c¡£
/*================hello_davinci.c==============*/
#include <linux/module.h>  /*ËùÓÐÄ£¿é¶¼ÐèÒªµÄÍ·Îļþ*/
#include <lin ......

linux find ÃüÁîʵÀý

·find  path  -option  [  -print ]  [ -exec  -ok  command ]  {} \;
#-print ½«²éÕÒµ½µÄÎļþÊä³öµ½±ê×¼Êä³ö
#-exec  command  {} \;     -----½«²éµ½µÄÎļþÖ´ÐÐcommand²Ù×÷,{} ºÍ \;Ö®¼äÓпոñ
#-ok ºÍ-execÏàͬ£¬Ö»²»¹ýÔÚ²Ù×÷ǰҪѯ ......

Linux²é¿´È«²¿½ø³ÌµÄÃüÁî

ÔÚ³¬¼¶Óû§ÏÂÏÔʾLinuxϵͳÖÐÕýÔÚÔËÐеÄÈ«²¿½ø³Ì£¬Ó¦Ê¹ÓõÄÃüÁî¼°²ÎÊýÊÇ ps -aux ¡£
Linux psÃüÁîÏê½â£º
    1)ps a ÏÔʾÏÖÐÐÖÕ¶Ë»úϵÄËùÓгÌÐò,°üÀ¨ÆäËûÓû§µÄ³ÌÐò.
    2)ps -A ÏÔʾËùÓгÌÐò.
    3)ps c Áгö³ÌÐòʱ,ÏÔʾÿ¸ö³ÌÐòÕæÕýµÄÖ¸ÁîÃû³Æ,¶ø²»°üº¬Â·¾¶,²ÎÊý»ò³ ......

linuxÉèÖû·¾³±äÁ¿

1¡¢ÒýÑÔ
    ÔÚlinuxϵͳÏ£¬Èç¹ûÄãÏÂÔØ²¢°²×°ÁËÓ¦ÓóÌÐò£¬ºÜÓпÉÄÜÔÚ¼üÈëËüµÄÃû³ÆÊ±³öÏÖ“command not found”µÄÌáʾÄÚÈÝ¡£Èç¹ûÿ´Î¶¼µ½°²×°Ä¿±êÎļþ¼ÐÄÚ£¬ÕÒµ½¿ÉÖ´ÐÐÎļþÀ´½øÐвÙ×÷¾ÍÌ«·±ËöÁË¡£ÕâÉæ¼°µ½»·¾³±äÁ¿PATHµÄÉèÖÃÎÊÌ⣬¶øPATHµÄÉèÖÃÒ²ÊÇÔÚlinux϶¨ÖÆ»·¾³±äÁ¿µÄÒ»¸ö×é³É²¿·Ö¡£±¾ÎÄ»ùÓ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ