2012-03-06 16 views
0

私はこのような構造を書くことに疑問を抱いています。我々はいくつかの他の事(.owner = THIS_MODULE)にいくつかのことを同一視する必要がなぜここ 内部構造と同じである

const struct file_operations nvram_fops = { 
     .owner   = THIS_MODULE, 
     .llseek   = nvram_llseek, 
     .read   = read_nvram, 
     .write   = write_nvram, 
     .ioctl   = nvram_ioctl, 
}; 

これを助けてください。

+1

申し訳ありませんが、私はあなたの質問が分かりません。 –

+0

C++には指定された初期化子がないので、C++タグを削除します。 –

+0

Dupilcate of http://stackoverflow.com/questions/3016107/what-is-tagged-structure-initialization-syntax –

答えて

3

これは初期設定の構文です。

ここで、nvram_fopsは、タイプfile_operationsの構造体です。そのownerフィールドはTHIS_MODULE,llseeknvram_llseekなどに設定されています。

コードをより高いレベルで理解しようと考えている場合は、"The Linux Kernel Module Programming Guide"をご覧ください。 Itは

file_operations structureがlinux/fs.hにdefinedさthat explains、及びdevice上various operationsをperform driverによってdefined functionsへpointersをholds。構造体の各フィールドは、要求された操作を処理するためにドライバによって定義された関数のアドレスに対応します。

関連する問題