Linux驱动的层次关系与分类
2页1、Linux软件系统的层次关系软件系统可分为:应用程序、库、操作系统(内核)、驱动程序以点亮LED为例,分析各层间的写作关系1)应用程序调用库提供的open函数打开代表LED的设备文件;2)库根据open函数传入的参数执行“swi”指令,这条指令会引起CPU异常,进而进入内核;3)内核的异常处理函数根据这些参数找到相应的驱动程序,返回一个文件句柄给库,进而返回给应用程序;4)应用程序得到文件句柄后,使用库提供的write或ioctl函数发出控制指令。5)库根据write或ioctl函数传入的参数执行“swi”指令,引起CPU异常,进入内核;6)内核的异常处理函数根据这些参数调用驱动程序的相关函数,点亮LED库给应用程序通过的接口函数:open、read、write、ioctl、mmap等(系统调用),都是设置好相应寄存器后,执行某条指令引发异常进入内核,对于ARM架构CPU,指令为swi,软中断实际上,内核和驱动并没有界线,因为驱动最终是要通过静态链接和动态加载编进内核中去的;从上分析可知,驱动一般是被动的,根据应用程序的需求来执行。2、驱动程序分类字符设备、块设备、网络设备
《Linux驱动的层次关系与分类》由会员安****分享,可在线阅读,更多相关《Linux驱动的层次关系与分类》请在金锄头文库上搜索。
Linux驱动的层次关系与分类
Linux驱动的层次关系与分类
字符设备驱动 —— 字符设备驱动框架
字符设备驱动——申请、创建、应用
输入子系统的作用与框架
字符设备驱动——申请、创建、应用
字符设备驱动 —— 字符设备驱动框架
驱动开发之开发步骤
输入子系统的作用与框架
驱动开发之开发步骤
创建 Visual C++ 源文件并在命令行上对其进行编译
Windows驱动开发需要注意的细节
在命令行上编译本机 C++ 程序的先决条件
C++如何打开“开发人员命令提示”
Windows 11 WHQL认证的重要性
Windows10旧版本驱动数字签名更新的必要性
通过WHQL认证的产品可以微软官网查询了
怎样判断一个驱动程序是否通过微软WHQL认证
微软发布Windows 10 21H1 硬件兼容计划(WHCP)(1)
申请USB VENDOR ID 的意义
2024-03-07 87页
2023-12-26 16页
2023-12-26 28页
2023-07-21 7页
2023-07-21 3页
2023-07-21 14页
2023-07-21 3页
2023-07-21 30页
2023-07-21 34页
2023-07-21 15页