首页
QT
零碎记录
QUC
QtThread
QtChart
数据库
QML
文件系统
绘图
虚拟化
DPDK
Linux内核
网络协议栈
设备驱动
音视频开发
爬虫
逆向实战
基础
JavaScript
Scrapy
逆向前置知识
源码阅读
Nginx
零碎速记
软考复习
瞬间
友链
小工具
Excalidraw
Charles破解
自建图床
1
毕业设计客户端开发总结
2
1.MemPool
3
Charles安装使用
4
软考复习-计算机组成原理
5
Git 提交规范
Lenn
累计撰写
136
篇文章
累计创建
28
个分类
导航
首页
QT
零碎记录
QUC
QtThread
QtChart
数据库
QML
文件系统
绘图
虚拟化
DPDK
Linux内核
网络协议栈
设备驱动
音视频开发
爬虫
逆向实战
基础
JavaScript
Scrapy
逆向前置知识
源码阅读
Nginx
零碎速记
软考复习
瞬间
友链
小工具
Excalidraw
Charles破解
自建图床
目录
Lenn's Site
分类
设备驱动
13.USB3.0设备控制器驱动分析
2025-03-19 14:18
5
0
0
24.5℃
设备驱动
Linux内核
USB 驱动框架分析 USB 控制器作为 Host (USB 主机控制器)时,使用 USB 主机控制器驱动。 USB 控制器作为 device (USB 设备控制器)的时候驱动框架分别为:Gadget Function 驱动、Gadget Function API、Composite 及 UDC (
1.IO体系结构与访问设备
2025-03-19 14:18
3
0
0
24.3℃
设备驱动
Linux内核
IO体系结构 与外设通信通常称为输入输出,一般缩写为I/O。在实现外设IO的时候,内核必须处理三个可能出现的问题: 必须根据具体的设备类型和模型,使用各种方法对硬件寻址。 内核必须向用户应用程序和系统工具提供访问各种设备的方法。但凡有可能,都应当采用统一的方案,确保程序设计的工作量不会过多,同时保证
11.USB驱动分析
2025-03-19 14:18
4
0
0
24.4℃
Linux内核
设备驱动
基础层次详解 通用串行总线(USB)主要用于连接主机和外部设备(协调主机和设备之间的通讯),USB 设备不能主动向主机发送数据。USB 总线采用拓扑(树形),主机侧和设备侧的 USB 控制器(Host 和 UDC),每个总线只要一个主机控制器。 主机侧的 USB 节点为根节点,所有子节点都连接在根节
10.USB设备驱动代码分析(鼠标)
2025-03-19 14:18
4
0
0
24.4℃
设备驱动
Linux内核
定义鼠标ID表 static struct usb_device_id usbmouse_as_key_id_table [] = { {USB_INTERFACE_INFO(USB_INTERFACE_CLASS_HID, USB_INTERFACE_SUBCLASS_BOOT,
12.以太网驱动分析
2025-03-19 14:18
3
0
0
24.3℃
设备驱动
Linux内核
网络驱动架构 Linux 内核网络设备驱动框架分为四个模块:网络协议接口模块、网络设备接口模块、设备驱动模块和网络设备与媒介模块。 网络协议常用数据结构 套接字缓冲区 sk_buff 结构体类型,具体核心成员如下: 存储 IP 数据 skb_shared_info 结构体类型(保存 IP 分片数据)
2.块设备详解
2025-03-19 14:18
3
0
0
24.3℃
设备驱动
Linux内核
基本概念 磁盘(disk)是指利用磁记录技术存储数据的存储器。磁盘是计算机主要的存储介质,可以存储大量二进制数据,并且断电后也能保持数据不丢失。早期计算机使用的磁盘是软磁盘(Floppy Disk,简称软盘);如今常用的磁盘是硬磁盘(Hard Disk,简称硬盘)。 块设备(Block Device
3.文件系统关联及字符设备操作
2025-03-19 14:18
3
0
0
24.3℃
Linux内核
设备驱动
文件系统关联 设备文件都是由标准函数处理,类似普通文件。设备文件也是通过虚拟文件系统来管理的,和普通文件都是通过完全相同的接口访问的。 inode中设备文件的成员数据 虚拟文件系统每个文件都关联到一个inode,用于管理文件的属性。源码如下:
5.插入模块及删除模块操作
2025-03-19 14:18
4
0
0
24.4℃
Linux内核
设备驱动
基础知识 模块是一种向Linux内核添加设备驱动程序、文件系统及其他组件的有效方法,不需要编译新内核 优点 通过使用模块,内核发布者能够预先编译大量驱动程序,而不会致使内核映像的尺寸发生膨胀。 内核开发者可以将实验性的代码打包到模块中,模块可以卸载,修改代码或重新打包后可以重新装载。 添加和删除 从
4.资源分配及总线系统
2025-03-19 14:18
4
0
0
24.4℃
设备驱动
Linux内核
资源分配 掌握用于管理资源的数据结构和函数 资源管理 数据结构分析 Linux提供通用框架,用于在内存中构建数据结构。这些结构描述了系统中可用的资源,使得内核代码能够管理和分配资源。其中关键的数据结构resource源码如下:
6.插入删除模块实战
2025-03-19 14:18
3
0
0
24.3℃
Linux内核
设备驱动
前面已经讲了Linux模块的基本知识,现在我们来熟悉一下模块相关的基本操作。 模块的编写 #include <linux/init.h> #include <linux/kernel.h> #include <linux/module.h> // 插入内核时的函数 static int __ini
上一页
下一页
1
2
弹