zoukankan      html  css  js  c++  java
  • [国嵌攻略][146][块设备驱动实例分析]

    块设备驱动实例分析

    初始化

    1.注册块设备驱动程序,使用register_blkdev。填写主设备号时,设置为零,系统自动分配主设备号,并返回。

    2.初始化请求队列,使用blk_init_queue。

    3.指明扇区大小,使用blk_queue_logical_block_size

    4.为块设备分配gendisk结构,使用alloc_disk

    5.初始化gendisk结构

    5.1.初始化主设备号,major

    5.2.起始次设备号,first_minor

    5.3.操作函数集,fops

    5.4.请求队列,queue

    5.5.私有成员,private_data

    5.6.设备名称,disk_name

    5.7.设置扇区数,使用set_capacity

    6.添加块设备,使用add_disk

    实现读写请求处理函数

    1.取出要处理的一个请求,使用blk_fetch_request

    2.根据请求里的信息访问硬件,获取数据

    3.利用__blk_end_request_cur判断请求队列里是否还有剩余的请求要处理。如果有则按照上面两边处理。

  • 相关阅读:
    ubuntu18.04 扩展根目录 亲测有效
    mysql数据恢复
    java多线程
    jenkins安装搭建及使用
    springboot web开发
    git版本管理
    docker安装部署项目
    vue nuxt项目部署
    IntelliJ IDEA常用快捷键
    IntelliJ IDEA常用设置
  • 原文地址:https://www.cnblogs.com/d442130165/p/5278124.html
Copyright © 2011-2022 走看看