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

linux 2.6Ô´´úÂëÇé¾°·ÖÎö±Ê¼ÇÖ®ÖжÏÓëÒì³£5

Öжϴ¦ÀíÒÀÀµÓÚÖжÏÀàÐÍ£¬ÓÐÈýÖÖÖ÷ÒªµÄÖжÏÀàÐÍ£º
i/oÖжϣºÄ³Ð©i/É豸ÐèÒª¹Ø×¢£»ÏàÓ¦µÄÖжϴ¦Àí³ÌÐò±ØÐë²éѯÉ豸ÒÔÈ·¶¨Êʵ±µÄ²Ù×÷¹ý³Ì¡£
ʱÖÓÖжϣºÄ³ÖÖʱÖÓ£¨»òÕßÊÇÒ»¸ö±¾µØapicʱÖÓ£¬»òÕßÊÇÒ»¸öÍⲿʱÖÓ£©²úÉúÒ»¸öÖжϣ»ÕâÖÖÖжϸæËßÄÚºËÒ»¸ö¹Ì¶¨µÄʱ¼ä¼ä¸ôÒѾ­¹ýÈ¥¡£ÕâЩÖжϴ󲿷ÖÊÇ×÷Ϊi/oÖжÏÀ´´¦ÀíµÄ¡£
´¦ÀíÆ÷¼äÖжϣº¶à´¦ÀíÆ÷ϵͳÖÐÒ»¸öcpu¶ÔÁíÒ»¸öcpu·¢³öµÄÒ»¸öÖжϡ£
I/OÖжϴ¦Àí
i/oÖжϴ¦Àí³ÌÐò±ØÐë×ã¹»Áé»îÒÔ¸ø¶à¸öÉ豸ͬʱÌṩ·þÎñ¡£ÈçÔÚpci×ÜÏßµÄÌåϵ½á¹¹ÖУ¬¼¸¸öÉ豸¿ÉÒÔ¹²Ïíͬһ¸öirqÏß¡£Õâ¾ÍÒâζ׎ö½öÖжÏÏòÁ¿²»ÄÜ˵Ã÷ËùÓÐÎÊÌâ¡£
Öжϴ¦Àí³ÌÐòµÄÁé»îÐÔÒÔÁ½ÖÖ²»Í¬µÄ·½Ê½ÊµÏÖ¡£
irq¹²Ïí£ºÖжϴ¦Àí³ÌÐòÖ´Ðжà¸öÖжϷþÎñÀý³Ì£¨interrupt service routine,ISR£©.ÿ¸öISRÊÇÒ»¸öÓëµ¥¶ÀÉ豸£¨¹²ÏíirqÏߣ©Ïà¹ØµÄº¯Êý¡£ÒòΪ²»¿ÉÔ¤ÏÈÖªµÀÄĸöÌØ¶¨µÄÉ豸²úÉúirq£¬Òò´Ë£¬Ã¿¸öisr¶¼±»Ö´ÐУ¬ÒÔÑéÖ¤ËüµÄÉ豸ÊÇ·ñÐèÒª¹Ø×¢£¬Èç¹ûÊÇ£¬µ±É豸²úÉúÖжÏʱ£¬¾ÍÖ´ÐÐÐèÒªÖ´ÐеÄËùÓвÙ×÷¡£
irq¶¯Ì¬·ÖÅ䣺һÌõirqÏßÔÚ¿ÉÄܵÄ×îºóʱ¿Ì²ÅÓëÒ»¸öÉ豸Çý¶¯³ÌÐòÏà¹ØÁª£»¼´Ê±¼¸¸öÓ²¼þÉ豸²¢²»¹²ÏíirqÏߣ¬Í¬Ò»¸öirqÏòÁ¿Ò²¿ÉÒÔÓÉÕ⼸¸öÉ豸ÔÚ²»Í¬Ê±¿ÌʹÓá£
linux°Ñ½ôËæÖжÏÒªÖ´ÐеIJÙ×÷·ÖΪÈýÀࣺ
½ô¼±µÄ£¨critical£©£ºÕâÑùµÄ²Ù×÷ÖîÈçpicÓ¦´ðÖжϣ¬¶Ôpic»òÉ豸¿ØÖÆÆ÷ÖØ±à³Ì£¬»òÕßÐÞ¸ÄÓÉÉ豸ºÍ´¦ÀíÆ÷ͬʱ·ÃÎʵÄÊý¾Ý½á¹¹¡£ÕâЩ¶¼Äܱ»ºÜ¿ìµØÖ´ÐУ¬¶øÖ®ËùÒÔ˵ËüÃÇÊǽô¼±µÄÊÇÒòΪËûÃDZØÐë±»¾¡¿ìµØÖ´ÐС£½ô¼±²Ù×÷ÒªÔÚÒ»¸öÖжϴ¦Àí³ÌÐòÄÚÁ¢¼´Ö´ÐУ¬¶øÇÒÊÇÔÚ½ûÖ¹¿ÉÆÁ±ÎÖжϵÄÇé¿öÏ¡£
·Ç½ô¼±µÄ£¨noncritical£©:ÕâÑùµÄ²Ù×÷È磺ÐÞ¸ÄÄÇЩֻÓд¦ÀíÆ÷²Å»á·ÃÎʵÄÊý¾Ý½á¹¹£¨Èç°´ÏÂÒ»¸ö¼üºó¶ÁɨÃèÂ룩¡£ÕâЩ²Ù×÷Ò²ÒªºÜ¿ìµØÍê³É£¬ËüÃÇÓÉÖжϴ¦Àí³ÌÐòÁ¢¼´Ö´ÐУ¬µ«±ØÐëÊÇÔÚ¿ªÖжϵÄÇé¿öÏ¡£
·Ç½ô¼±¿ÉÑӳٵģ¨noncritical deferrable£©ÕâÑùµÄ²Ù×÷ÖîÈ磺°Ñ»º³åÇøµÄÄÚÈÝ¿½±´µ½Ä³¸ö½ø³ÌµÄµØÖ·¿Õ¼ä£¨Èç°Ñ¼üÅÌÐлº³åÇøµÄÄÚÈÝ·¢Ë͵½ÖÕ¶Ë´¦Àí³ÌÐò½ø³Ì£©¡£ÕâЩ²Ù×÷¶¼¿ÉÄܱ»Ñӳٽϳ¤µÄʱ¼ä¼ä¸ô¶ø²»Ó°ÏìÄں˲Ù×÷£¬ÓÐÐËȤµÄ½ø³Ì½«»áµÈ´ýÊý¾Ý¡£·Ç½ô¼±¿ÉÑӳٵIJÙ×÷ÓɶÀÁ¢µÄº¯ÊýÀ´Ö´ÐС£
²»¹ÜÒýÆðÖжϵĵç·ÖÖÀàÈçºÎ£¬ËùÓеÄi/oÖжϴ¦Àí³ÌÐò¶¼Ö´ÐÐËĸöÏàͬµÄ»ù±¾²Ù×÷£º
1.ÔÚÄÚºË̬¶ÑÕ»Öб£´æirqµÄÊýÖµºÍ¼Ä´æÆ÷µÄÄÚÈÝ¡£
2.ΪÕýÔÚ¸øirqÏß·þÎñµÄpic·¢ËÍÒ»¸öÓ¦´ð£¬Õ⽫ÔÊÐípic½øÒ»²½·¢³öÖжϡ£
3.Ö´Ðй²ÏíÕâ¸öirqµÄËùÓÐÉ豸µÄÖжϷþÎñÀý³Ì£¨isr£©.
4.Ìøµ½ret_from_intr£¨£©µÄµØÖ·ºóÖÕÖ¹¡£
Ö


Ïà¹ØÎĵµ£º

ʵսLinux Bluetooth±à³Ì£¨ËÄ£© L2CAP²ã±à³Ì

£¨L2CAPЭÒé¼ò½é£¬L2CAPÔÚBlueZÖеÄʵÏÖÒÔ¼°L2CAP±à³Ì½Ó¿Ú£©
Ò»£ºL2CAPЭÒé¼ò½é£º
Logical Link Control and Adaptation Protocol(L2CAP)
Âß¼­Á¬½Ó¿ØÖƺÍÊÊÅäЭÒé (L2CAP) ΪÉϲãЭÒéÌá¹©ÃæÏòÁ¬½ÓºÍÎÞÁ¬½ÓµÄÊý¾Ý·þÎñ£¬²¢Ìṩ¶àЭÒ鹦ÄܺͷָîÖØ×é²Ù×÷¡£L2CAP ³äÐíÉϲãЭÒéºÍÓ¦ÓÃÈí¼þ´«ÊäºÍ½ÓÊÕ×î´ó³¤¶ÈΪ 64K µÄ L2CAP Ê ......

ʵսLinux Bluetooth±à³Ì (Æß) SDPЭÒé

Service Discovery Protocol(SDP)ÌṩһÖÖÄÜÁ¦£¬ÈÃÓ¦ÓóÌÐòÓз½·¨·¢ÏÖÄÄÖÖ·þÎñ¿ÉÓÃÒÔ¼°ÕâÖÖ·þÎñµÄÌØÐÔ¡£
·þÎñ·¢ÏÖЭÒé(SDP»òBluetooth SDP)ÔÚÀ¶ÑÀЭÒéÕ»ÖжÔÀ¶ÑÀ»·¾³ÖеÄÓ¦ÓóÌÐòÓÐÌØÊâµÄº¬Ò⣬·¢ÏÖÄĸö·þÎñÊÇ¿ÉÓõĺÍÈ·¶¨ÕâЩ¿ÉÓ÷þÎñµÄÌØÕ÷¡£SDP¶¨ÒåÁËbluetooth client·¢ÏÖ¿ÉÓÃbluetooth server·þÎñºÍËüÃǵÄÌØÕ÷µÄ·½·¨¡£ ......

Ô¬ÀÏ̸linuxµÄ10Äê·¢Õ¹

 ±¾ÊÀ¼ÍµÚÒ»¸öÊ®Ä꣬¼´½«¹ýÈ¥¡£»Ø¹ËÒÔÍù£¬²ÅÄÜ¿´ÇåÏÖÔÚ£¬ÎÒÓм¸¾ä»°ÒªËµ¡£
      ¼ÇµÃ£¬ÔÚÊ®Äê֮ǰ£¬ÈËÃÇÖ»ÄÜÍæÍæÃÀ¹úºìñµÄ Linux ×ÀÃæ£¨ÌرðÊÇ 6.2 °æ±¾£©£¬ÕûÌì sudo £¨¼´ Super User do £©£¬ÈÎÆ¾¼¤Çé·ºÀÄ¡£µ½ÁË 2001 Äê 1 Ô£¬ Linux 2.4 Õýʽ·¢²¼£¬Ê×´ÎÖ§³Ö USB ºÍÀ¶ÑÀ¼¼Êõ£¬ÒÔ¼° ext ......

linux c mkdir´´½¨µÝ¹éĿ¼

#include <unistd.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#define err(msg) perror(msg)
static void mkdirs(const char *dir)
{
        char tmp[1024];
        char *p;
 &nbs ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ