Re: [問題] 請問 kernel thread ..
※ 引述《nfsnfs (Busy)》之銘言:
: 請問可以去哪裡找 kernel thread 怎麼寫呀 orz
: 我找不到太多資料 :Q
: 我想要自己新增一個 kernel thread 來處理我在其他 system call 新增的訊息
: http://www.linux-mag.com/id/2195/
: http://www.linuxquestions.org/linux/articles/Technical/Linux_Kernel_Thread
: 目前小弟找到的是這兩個網頁感覺比較有參考價值..
: 先感謝大家了 :)
依我個人的經驗
主要的那個 thread function 裡面會有一個迴圈
這個迴圈通常是無限迴圈(或是可控制終止的迴圈)
上面的網頁提到的一些動作
像是:
設定 current->comm, daemonize, reparent_to_init 照著做應該就可以了。
通常 set_current_state(TASK_INTERRUPTIBLE) 會跟 schedule_timeout
放在一起,如果 kernel thread 會用到其它的可能會消失的資源,請記得要
先停掉 thread 再把這些資源移掉(例:rmmod)不然就是吃 oops 了。
至於控制 thread 迴圈的動作,有的是定期的(schedule_timeout),有的是用
event 的方式做。各有巧妙不同,看到沒看過的做法總是令人興奮。
我通常都是做定期的居多,用 schedult_timeout,其他的方式沒有用過。大家
交流討論一下。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 60.250.246.16
→
10/25 14:03, , 1F
10/25 14:03, 1F
討論串 (同標題文章)
LinuxDev 近期熱門文章
PTT數位生活區 即時熱門文章
21
65