Chinaunix首页 | 论坛 | 博客
  • 博客访问: 665652
  • 博文数量: 237
  • 博客积分: 4285
  • 博客等级: 上校
  • 技术积分: 2701
  • 用 户 组: 普通用户
  • 注册时间: 2009-11-15 14:05
文章分类

全部博文(237)

文章存档

2014年(2)

2013年(3)

2012年(47)

2011年(15)

2010年(68)

2009年(102)

我的朋友

分类: LINUX

2012-03-30 14:07:42

storage_probe这个函数挺有意思,总长度不足100行,但是干了许多事情,这就像足球场上的后腰,比如切尔西的马克莱莱,在场上并不起眼,但是却为整个团队做出了卓越的贡献。

我们继续看storage_probe的代码:

972    mutex_init(&(us->dev_mutex));

973     init_MUTEX_LOCKED(&(us->sema));

974    init_completion(&(us->notify));

975    init_waitqueue_head(&us->delay_wait);

976

977    /*Associate the us_data structure with the USB device */

978   result = associate_dev(us, intf);

979    if(result)

980        goto BadDevice;

981

982    /*

983     * Get the unusual_devs entries and thedescriptors

984     *

985      * id_index is calculated in thedeclaration to be the index number

986      * of the match from the usb_device_idtable, so we can find the

987     * corresponding entry in the privatetable.

988      */

989    result =get_device_info(us, id);

990     if(result)

991        goto BadDevice;

992

storage_probe函数之所以短小,是因为它调用了大量的函数。所以,看起来短短一段代码,实际上却要花费读代码的人好几个小时。
阅读(414) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~