[Suzaku:00648] Re: timerのmakeエラー

Yasushi SHOJI email@hidden
2006年 9月 24日 (日) 23:18:48 JST


At Sun, 24 Sep 2006 17:28:38 +0900,
高橋 秀雄 wrote:
> 
> Suzaku-V用のアプリに、カーネルタイマー(add_timer,del_timer,init_timer)
> を使用してポーリング処理を追加し、makeすると以下のエラーが生じます。
> 
> cv_read.o(.text+0x158): In function `rtdsend_timer_register':
> : undefined reference to `del_timer'
> cv_read.o(.text+0x1b8): In function `rtdsend_timer_register':
> : undefined reference to `add_timer'
> collect2: ld returned 1 exit status
> make: *** [cv_read] エラー 1

ごめんなさい。linuxの場合、アプリケーションから直接カーネルの関数を使
うことはできません。組み込み系OSだと kernelをアプリからリンクするよう
な感じで使えて便利なんですが、Linuxだとできないんです。

アプリケーションからLinuxのサービスを使用する場合は、かならずシステム
コールのインターフェースを使う必要があります。また、多くの場合はCライ
ブラリがラッパーの役目をしてくれるので、煩雑なsystem callインターフェ
イスを使う必要はありません。

アプリケーションでタイマーを使うのであれば

- gettimeofday
- time
- sleep/usleep
- setitimer/alarm

などが常套手段でしょうか? もうすこしポーリング処理について教えてもら
えますか?
-- 
        yashi



suzaku メーリングリストの案内