struct block_device_operations {
int (*open) (struct inode *, struct file *);
int (*release) (struct inode *, struct file *);
int (*ioctl) (struct inode *, struct file *, unsigned, unsigned long);
int (*check_media_change) (kdev_t);
int (*revalidate) (kdev_t);
};
Struktura używana do opisu operacji dostępu do urządzeń blokowych. Jest ona po części redundantna w stosunku do struktury file_operations ponieważ w poprzednich wersjach jądra Linux'a do tego celu używana była po prostu struktura file_operations.