2012-06-28 35 views
1

其實我是一個初學者,我正試圖學習低級驅動程序和高級驅動程序的概念。我想知道模塊如何依賴其他模塊進行操作。Linux模塊文件丟失

我已經完成了lsmod命令。我在輸出中找到了這些行。

parport_pc    25962 1 
lp      7028 0 
parport    32635 3 ppdev,parport_pc,lp 

從上面的行,我理解的是,存在模塊等,

  • parport_pc
  • LP
  • parport

我發現源代碼parport_pc.clp.c,在目錄/usr/src/drivers/parport中。但我無法在整個文件系統中找到parport的源代碼。儘管我在/lib/modules/linux2.6.32-37-generic/kernel/parport內發現了parpot.ko。 另外在目錄/usr/src/drivers/parport,我已經看到了在Makefile中像一條線,

obj-$(CONFIG_PARPORT)  += parport.o 

所以我在哪裏可以找到parport.c文件?我用命令搜索整個文件系統

find/-name parport.c 

但沒有結果。爲什麼文件parport.c丟失?

+2

'.c'文件通常是未編譯的文件。您的計算機上可能沒有針對您的操作系統的未編譯源代碼。 – nickgroenke

回答

2

parport.o文件從多個編譯.c文件,包括share.cieee1284.cieee1284_ops.cprocfs.c,並可能包括daisy.cprobe.c,所有drivers/parport/目錄的Linux的源下。 (這些信息來自Linux 3.5-rc3-00203-g8874e81,比您正在查看的內核稍微更新一些,但並行端口驅動程序沒有多大變化)。

爲了找到這個信息,我看着同Makefile並指出parport-objs變量最初設定在share.o ieee1284.o ieee1284_ops.o procfs.o,並加入daisy.o probe.o如果CONFIG_PARPORT_1284設置爲y