路径: linux-2.6.30/include/linux/fs.h

struct file_operations {

struct module   *owner;

loff_t                  (*llseek)                                       (struct file *, loff_t, int);

ssize_t              (*read)                                         (struct file *, char __user *, size_t, loff_t *);

ssize_t              (*write)                                         (struct file *, const char __user *, size_t, loff_t *);

ssize_t              (*aio_read)                                 (struct kiocb *, const struct iovec *, unsigned long, loff_t);

ssize_t              (*aio_write)                                  (struct kiocb *, const struct iovec *, unsigned long, loff_t);

int                       (*readdir)                                      (struct file *, void *, filldir_t);

unsigned int     (*poll)                                           (struct file *, struct poll_table_struct *);

int                        (*ioctl)                                          (struct inode *, struct file *, unsigned int, unsigned long);

long                    (*unlocked_ioctl)                       (                          struct file *, unsigned int, unsigned long);  // 新版 ioctl 去掉了inode 参数

long                    (*compat_ioctl)                          (struct file *, unsigned int, unsigned long);

int                        (*mmap)                                     (struct file *, struct vm_area_struct *);

int                        (*open)                                        (struct inode *, struct file *);

int                        (*flush)                                        (struct file *, fl_owner_t id);

int                        (*release)                                   (struct inode *, struct file *);

int                        (*fsync)                                        (struct file *, struct dentry *, int datasync);

int                        (*aio_fsync)                                (struct kiocb *, int datasync);

int                        (*fasync)                                      (int, struct file *, int);

int                        (*lock)                                          (struct file *, int, struct file_lock *);

ssize_t                (*sendpage)                              (struct file *, struct page *, int, size_t, loff_t *, int);

unsigned long  (*get_unmapped_area)          (struct file *, unsigned long, unsigned long, unsigned long, unsigned long);

int                        (*check_flags)                           (int);

int                        (*flock)                                         (struct file *, int, struct file_lock *);

ssize_t               (*splice_write)                            (struct pipe_inode_info *, struct file *, loff_t *, size_t, unsigned int);

ssize_t               (*splice_read)                            (struct file *, loff_t *, struct pipe_inode_info *, size_t, unsigned int);

int                        (*setlease)                                 (struct file *, long, struct file_lock **);

};

最新文章

  1. Windows下使用scapy+python2.7实现对pcap文件的读写操作
  2. 给NSString增加Java风格的方法
  3. iOS 给UILabel文字加下划线
  4. matlab演奏《卡农》
  5. discuz之搭建
  6. hdu1052(田忌赛马 贪心)
  7. centos 7 没有ifconfig 命令
  8. 怎样改动Myeclipse10.7的Servlet模板
  9. spring杂记
  10. ZOJ3944People Counting<暴力/枚举>
  11. habase单机版安装及基本功能演示
  12. 实现GridControl行动态改变行字体和背景色
  13. JAVA取数两个数组交集,考虑重复和不重复元素
  14. Java_并发工具包 java.util.concurrent 用户指南(转)
  15. font awesome 页面小图标
  16. vmware-vcsa6.5 基本管理
  17. Django框架详细介绍---视图系统
  18. 深度学习中 Batch Normalization
  19. nrf24l01 IRQ一直为高电平
  20. import 和 from … import 模块的变量、方法引用差异

热门文章

  1. 双摆模拟 python(转)
  2. .net环境下程序一些未知错误的调试
  3. Android ListView绑定数据
  4. Visual Studio TFS
  5. 处理sql锁死问题
  6. android studio使用中碰到Failure [INSTALL_FAILED_OLDER_SDK] 问题
  7. <东方梦符祭> N1无尽30波终于通了
  8. 在添加新内容时,creatat没有数据
  9. Bullet:关于ORACLE中的HASH JOIN的参数变化
  10. UVA-227 Puzzle(模拟)