最簡單的塊驅動

2021-05-22 02:01:29 字數 1038 閱讀 7760

#include

#include

#include /*printk*/

#include /*__init __exit*/

#include /* file_operation*/

#include /*block dev*/

#include /* copy_to_user, copy_from_user*/

#include

#include

static void simp_blkdev_do_request(struct request_queue *q);

#define simp_block_major compaq_smart2_major     //占用系統已經分配的major號

#define simp_blkdev_bytes (16*1024*1024)

struct gendisk *simp_blkdev_disk;   

struct request_queue *simp_blkdev_queue; 

static int simp_blkdev_data[simp_blkdev_bytes];

struct block_device_operations blkops = ;

static int __init simp_blkdev_init(void)

static void __exit simp_blkdev_exit(void)

module_init(simp_blkdev_init);

module_exit(simp_blkdev_exit);

static void simp_blkdev_do_request(struct request_queue *q)

switch(rq_data_dir(req)) }}

生成檔案系統: mkfs.ext3 /dev/mydev

掛載: mount /dev/mydev /mnt

解除安裝: umount  /mnt

檢視檔案系統資訊: fdisk -l /dev/mydev

最簡單的字元裝置驅動程式

首先,先理清一下簡單字元裝置驅動程式的思路 1 申請裝置號 動態申請 int alloc chrdev region dev t dev,unsignedbaseminor,unsignedcount,const char name 靜態申請 int register chrdev region d...

Linux 最簡單的驅動程式hello world

最近開始學linux驅動,就從最簡單的開始練起,就從ldd 3裡的第乙個驅動程式hello world練起。the following code is a complete hello world module include include module license dual bsd gpl ...

塊裝置驅動

若塊裝置驅動程式也按以下字元裝置驅動程式的簡單思想來寫 1.硬碟 磁碟的讀寫其實非常快,慢在機械結構讀寫裝置的定位上面,從乙個 磁頭 的某 柱面 某 扇區 讀到資料後 步驟 r0 跳到另乙個 磁頭 的某 柱面 的某 扇區 去寫 步驟 w 接著再跳回原 磁頭 相同柱面的下乙個 扇區 去讀 步驟r1 慢...