• 1 
瀏覽模式: 普通 | 列表
03
31

kernel module memory detector-抓出有害的kernel module

之前的文章有提到想用kallsyms_lookup做出kernel module memory detector,剛好今天有空抽點時間做出來,不過在實做的過程中發現,要改動的地方還真多阿,在hack的過程中,絕大部份都是苦工,剪剪貼貼一大堆,不過講到這邊,我突然想到我去年有一次寫程式寫到睡著,因為從頭到尾都剪貼,又一堆fopen, fread,fclose,說老實話,這種程式寫久了會頭暈想吐…

[閱讀全文]

標籤: linux
03
26

kernel space coding-如履薄冰

有碰過kernel code的人大概多少都瞭解我標題的意思,kernel code很迷人,但很危險,稍不小心,就會被kernel panic拖進地獄

拿我最近review的code當例子,截取某一段code如下,這是一段相當簡單的kernel threading code,當kernel module被insert時,會開啟kernel thread執行thread_main這個function,當remove module時,會呼叫delete_thread把kernel thread砍掉,可以仔細看看thread_kill這段function,有沒有什麼問題

[閱讀全文]

標籤: linux
03
06

readahead與posix_advise-預讀取是萬能靈丹?

最近在改善程式讀檔的效能,發現這兩個函式可以好好利用,因為我都用buffered IO的API讀取資料,所以想藉由標題那兩位人兄幫我加速存取檔案的動作,根據Linux system programming和kernel的mm/readahead.c原始碼,都證明kernel會根據readahead API把目標檔擺到memory cache加速程式讀取目標檔的速度,而實際上真的這樣嗎?

[閱讀全文]

標籤: linux
  • 1