我試圖讓用戶級程序通過/ proc與內核進行通信。從內核代碼的其他部分訪問/ proc fs變量
我也跟着上tldp的說明,是能夠成功地創建自定義的proc文件,與insmod的動態加載和讀取(貓)和write(回聲)從用戶空間的proc文件。
現在我的問題是如何從內核的另一部分(比如系統調用基礎結構)訪問/ proc變量(它是一個字節緩衝區)?由於自定義proc文件是動態加載和鏈接的,我如何從靜態編譯的內核代碼中引用它?
系統規格:Ubuntu的10.10運行在VMware Fusion上的MacBook Pro 13" (2009年)
編輯:相關代碼(按要求) -
procfile.c
//This function is called when the module is loaded
int init_module()
{
/* create the /proc file */
EXPORT_SYMBOL(procfs_buffer);
EXPORT_SYMBOL(procfs_buffer_size);
...
...
}
get_procvariable.c(在內核的另一部分)
//The buffer used to store character for this module
extern char * procfs_buffer;
//The size of the buffer
extern unsigned long procfs_buffer_size;
int get_procvariable(void)
{
.. do something
return procfs_buffer; // LD Error: Undefined reference
}
請讓我知道在c省略,如果你需要更多的細節。提前致謝。
回答我自己的問題,從下面幾個提示: – Warr1ck 2011-02-22 08:24:06