[Armadillo:01558] Re: <Kingsoft AntiSpam> Re: Armadillo-240のファイルの読み出しスピードについて

Yasushi SHOJI email@hidden
2007年 3月 22日 (木) 16:15:48 JST


At Thu, 22 Mar 2007 15:14:43 +0900,
ITF-Ishihara wrote:
> 
> 石原です。
>  ありがとう御座います。
>  気になるところといえば、待ち時間の設定くらいでしょうか。
>  FlashのR(ready)/B(busy)端子で待てればと思ってハードウェアをみてみたら
>  使えるようにはなってないようでした。
>  
>  そこで、ドライバー内の待ちは、多分、ソフトウェアループの udelay()を使われてる
>  のではと思って、 現在のドライバーの設定値の25μの確認のため
>  
>  		gettimeofday( &time[5] ,NULL ) ;
> 		for( i = 0 ; i <100 ; i++ ) {
> 			udelay(25) ;
> 		}
> 		gettimeofday( &time[6] ,NULL ) ;
> 
>  の確認ソフトを作ってみてみようとしましたが、コンパイルエラーで試験できませんでした。
>  makefile か include が不足していると思うのですが、判りません。
>  
>  udelay( ) の時間が設定値と乖離が有るようであれば、対処もやり様があると考えて
>  います。
>  (検討ちがいで、はずしていたらすみません)

全然検討違いではないのですが、kernel codeと userland codeを混ぜること
は基本的にできません。もし、kernelの udelayを試験するのであれば、
device driverを作成する必要があります。

また linux kernelは、ある固定時間ビジーループするために必要なループ回
数を起動時に計算します。

    Calibrating delay loop... 99.73 BogoMIPS (lpj=498688)

などと、起動ログに出ます (debugだと)

*delay()関数は lpj (loop per jiffy)を使って loopsするので、includeする
だけでは実装できません。逆に lpjの値さえわかれば、copy & pastして、
codeを持ってくることはできます。
-- 
            yashi



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