对关于字符驱动的一些重要数据结构(file_operations, file, inode, cdev)的理解

cdev是设备与内核的接口,内核通过cdev来使用设备的驱动;file_operations相当于是一个索引,它把处理一个文件所需要的所有操作名称和对应的函数连接起来;而所有的这些操作函数应构成驱动程序很重要的一部分。而file结构表示一个文件,因为在linux中把设备也看成一个文件,所以这里这个数据结构也表示一个设备。cdev和file数据结构中都有指向file_operations的指针fops。对inode则不太清楚。

以上只是自己的初步总结,还请大侠指出其中的错误!

ps:关于inode

inode是文件系统的索引节点,按其存在位置(内存/硬盘)分为VFS inode 和一般的结点(如Ext2文件系统的Ext2 inode);
更详细的内容可以参考:http://baike.baidu.com/view/1097021.htm

你可能感兴趣的:(Linux内核编程学习笔记)