[問題] 請問有關撰寫/proc時所用的proc_read函式

看板Linux作者 ( )時間17年前 (2008/06/19 21:47), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/2 (看更多)
我使用kernel-2.6.17,撰寫kernel modules來記錄一些系統資訊, 使用與user space溝通的機制是/proc,在開完檔案之後指定read function大致如下: int procfile_read(char *buffer, char **buffer_location, off_t offset, int buffer_length, int *eof, void *data) { if (offset > 0) { ret = 0; } else { *buffer_location = my_buffer; } bufferLength = 0; return bufferLength; } 其中my_buffer以及bufferLength為全域變數, 我想在記錄完一堆東西之後使用cat /proc/myfile來看我記錄的東西 不過由於bufferLength頗大,超過10000bytes,而cat的結果被切掉了, 只能顯示部分內容,顯然應該是buffer overflow的問題, 這時候該怎麼解決才能看到全部內容呢? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.113.215.191 ※ 編輯: supermin 來自: 140.113.215.191 (06/19 22:02)
文章代碼(AID): #18McEFi2 (Linux)
文章代碼(AID): #18McEFi2 (Linux)