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

LinuxÉ豸Çý¶¯Ö®USB hubÇý¶¯


------------------------------------------
±¾ÎÄϵ±¾Õ¾Ô­´´,»¶Ó­×ªÔØ!
×ªÔØÇë×¢Ã÷³ö´¦:http://ericxiao.cublog.cn/
------------------------------------------
Ò»:ǰÑÔ
¼ÌUHCIµÄÇý¶¯Ö®ºó,ÎÒÃǶÔUSB ControlµÄÔË×÷ÓÐÁËÒ»¶¨µÄÁ˽â.ÔÚ½ÓÏÂÀ´µÄ·ÖÎöÖÐ,ÎÒÃǶÔUSBÉ豸µÄÇý¶¯×öÒ»¸öÈ«ÃæµÄ·ÖÎö,ÎÒÃÇÏÈ´ÓHUBµÄÇý¶¯ËµÆð.¹ØÓÚHUB,usb2.0 specÉÏÓÐÏêϸµÄ¶¨Òå,»ùÓÚÕⲿ·ÝµÄ´úÂëλÓÚlinux-2.6.25/drivers/usb/coreÏÂ,Ò²¾ÍÊÇ˵,Õⲿ·Ý´úÂëÊÇλÓÚcoreÏÂ,ºÍ¾ßÌåÉ豸ÊÇÎ޹صÄ,ÒòΪ¸÷³§É̵Ähub¶¼Êǰ´ÕÕspecµÄÒªÇóÀ´Éè¼ÆµÄ.
¶þ:UHCIÇý¶¯ÖеÄroot hub
¼ÇµÃÔÚ·ÖÎöUHCIÇý¶¯µÄʱºò,ÔøÏêϸ·ÖÎö¹ýroot hubµÄ³õʼ»¯²Ù×÷.ΪÁË·ÖÎö·½±ã,½«´úÂëÆ¬¶ÎÁгöÈçÏÂ:
usb_add_hcd() à usb_alloc_dev():
struct usb_device *usb_alloc_dev(struct usb_device *parent,
               struct usb_bus *bus, unsigned port1)
{
    ……
    ……
    //usb_device,ÄÚǶÓÐstruct device½á¹¹,¶ÔÕâ¸ö½á¹¹½øÐгõʼ»¯
    device_initialize(&dev->dev);
    dev->dev.bus = &usb_bus_type;
    dev->dev.type = &usb_device_type;
    ……
    ……
}
Ò»¿´µ½Ç°Ãæ¶ÔdevµÄ¸³Öµ,¸ù¾ÝÎÒÃǶÔÉ豸ģÐ͵ÄÀí½â,Ò»µ©Õâ¸ödevice½øÐÐ×¢²á,¾Í»á·¢ÉúdriverºÍdeviceµÄÆ¥Åä¹ý³ÌÁË.
²»¹ý,ÏÖÔÚ»¹²»ÊÇ·ÖÎöÕâ¸ö¹ý³ÌµÄʱºò,ÎÒÃÇÏÈÀ´¿´Ò»ÏÂ,USB×ÓϵͳÖеÄÁ½ÖÖÇý¶¯.
 
Èý:USB×ÓϵͳÖеÄÁ½ÖÖÇý¶¯
linux-2.6.25/drivers/usb/core/driver.cÖÐ,ÎÒÃÇ¿ÉÒÔÕÒµ½Á½ÖÖregister driverµÄ·½Ê½,·Ö±ðΪusb_register_driver()ºÍusb_register_device_driver().·Ö±ðÀ´·ÖÎöÒ»ÏÂÕâÁ½¸ö½Ó¿Ú.
 
usb_register_device_driver()½Ó¿ÚµÄ´úÂëÈçÏÂ:
int usb_register_device_driver(struct usb_device_driver *new_udriver,
        struct module *owner)
{
    int retval = 0;
 
    if (usb_disabled())
        return -ENODEV;
 
    new_udriver->drvwrap.for_d


Ïà¹ØÎĵµ£º

Linux°²×°oracle


Linux°²×°oracle
Ê×ÏÈ,×¼±¸°²×°ÐèÒªµÄÈí¼þ°üºÍ²¹¶¡°ü:  
´ÓÍøÉÏÏÂÔØÉý¼¶²¹¶¡°ü,ÓÃÓÚ½«Oracle9.2.0Éý¼¶µ½9.2.0.4:  
p3006854_9204_LINUX.zip  
ËùÓеIJ¹¶¡ËµÃ÷ÈçÏ£º  
p3095277_9204_LINUX.zip 9.2.0.4.0µÄÉý¼¶²¹¶¡°ü.  
p3006854_9204_LINUX.zip ÔÚÔËÐÐ ......

Linux ±Ê¼Ç2

1¡£LinuxÁ´½Ó
LinuxĿ¼ÖÐÿ¸öÃû×ÖÖÁinodeµÄÓ³Éä±»³ÆÎªÁ´½Ó£¬¼´Ä¿Â¼ÖÐÒ»¸öÖ¸ÏòinodeµÄÃû×Ö¡£LinuxµÄÎļþÁ´½Ó·ÖΪӲÁ´½ÓºÍÈíÁ´½Ó¡£
Ó²Á´½Ó±ØÐëλÓÚͬһ¸öÎļþϵͳ¡£Ê¹ÓÃlink()º¯ÊýʵÏÖ¡£
ÈíÁ´½Ó¼´·ûºÅÁ´½Ó£¬Ëü²»Ôö¼Ó¶îÍâµÄĿ¼Ï¶øÊÇÒ»ÖÖÌØÊâµÄÎļþÀàÐÍ¡£Ëü¿ÉÒÔ¿çÔ½Îļþϵͳ¡£
2¡£É豸½Úµã¡£
 É豸½ÚµãÊÇÓ¦Ó ......

Linux RMPÃüÁî

RPM ÓÐÎåÖÖ»ù±¾µÄ²Ù×÷·½Ê½(²»°üÀ¨´´½¨Èí¼þ°ü): °²×°, Ð¶ÔØ, Éý¼¶, ²éѯ,ºÍÑéÖ¤¡£ ÏÂÃæÎÒÃǾÍÀ´ÖðÒ»µÄ½²½â°É¡£
Ò»¡¢ °²×°RPM°ü
RPM Èí¼þ°üͨ³£¾ßÓÐÀàËÆfoo-1.0-1.i386.rpm µÄÎļþÃû¡£ÆäÖаüÀ¨ Èí¼þ°üµÄÃû³Æ(foo)£¬°æ±¾ºÅ(1.0)£¬·¢ÐкÅ(1)£¬ ºÍ Ó²¼þƽ̨(i386)¡£°²×°Ò»¸öÈí¼þ°üÖ»Ðè¼òµ¥µÄ¼üÈëÒÔÏÂÃüÁ
$ rpm -ivh foo-1. ......

linuxÈÎÎñ¹ÜÀíÆ÷topµÄʹÓÃ

µÚÒ»ÐУ¬ºÜÈÝÒ׿´³öÀ´Á˰ÉeZpLinuxÁªÃË
¼òµ¥ËµÒ»ÏÂload average: * * *eZpLinuxÁªÃË
µÚÒ»¸öÊýÊÇ£ºÆ½¾ù£µ·ÖÖÓÒÔÄÚÓжàÉÙ½ø³ÌÔÚ¾ºÕù£Ã£Ð£ÕeZpLinuxÁªÃË
µÚ¶þ¸öÊýÊÇ£ºÆ½¾ù£±£°·ÖÖÓÒÔÄÚÓжàÉÙ½ø³ÌÔÚ¾ºÕù£Ã£Ð£ÕeZpLinuxÁªÃË
µÚÈý¸öÊýÊÇ£ºÆ½¾ù£±£µ·ÖÖÓÒÔÄÚÓжàÉÙ½ø³ÌÔÚ¾ºÕù£Ã£Ð£ÕeZpLinuxÁªÃË
eZpLinuxÁªÃË
µÚ¶þÐУºeZpLinu ......

linuxÈÎÎñ¹ÜÀíÆ÷

ÔÚredhat2.4.20-8ϱàÒëͨ¹ý£º
ÓÉÓÚ±¾³ÌÐò´°¿Ú²¿·ÖÓÉglad¹¤¾ß±àÖÆ£¬Ô´´úÂë²»Ò×Ìù³ö£¬ÏÖÖ»¸ø³ö²¿·Ö»Øµ÷º¯ÊýµÄ´úÂ룺
1£¬“Í˳ö”°´Å¥»Øµ÷º¯Êý£º
void
on_button9_clicked                      (G ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ