一、linux中断注册 1、request_irq函数 函数就是驱动开发者向内核注册一个中断的接口。它有五个参数,分别是响:中断号,应中断时的中断处理函数,中断的触发方式,中断的名字,传给中断处理的参数。代码块如下: 2、setup_irq函数 代码块如下: 和 这些指针都是在 的 函数初始化,在 ...
分类:
系统相关 时间:
2019-11-24 00:05:55
阅读次数:
86
一,什么是BDD BDD全称Behavior Driven Development,译作"行为驱动开发",是基于TDD (Test Driven Development 测试驱动开发)的软件开发过程和方法。 BDD可以让项目成员(甚至是不懂编程的)使用自然语言来描述系统功能和场景,从而根据这些描述步 ...
分类:
编程语言 时间:
2019-11-23 09:37:03
阅读次数:
492
在Linux 驱动程序中,可以使用等待队列来实现阻塞进程的唤醒。等待队列的头部定义如下,是一个双向列表。 struct list_head { struct list_head *next, *prev; }; struct __wait_queue_head { spinlock_t lock; ...
分类:
系统相关 时间:
2019-11-18 20:34:56
阅读次数:
111
数据结构是计算机程序的核心,I/O管理器定义了一些数据结构,这些数据结构是编写驱动程序时所必须掌握的。驱动程序经常要创建和维护这些数据结构的实例。 一、驱动对象(DRIVER_OBJECT) 每个驱动程序会有唯一的驱动对象与之对应,并且这个驱动对象是在驱动加载的时候,被内核中的对象管理程序所创建的。 ...
分类:
编程语言 时间:
2019-11-02 17:31:28
阅读次数:
106
基于Windows驱动开发技术详解这本书 一、简单的INF文件剖析 INF文件是一个文本文件,由若干个节(Section)组成。每个节的名称用一个方括号指示,紧接着方括号后面的就是节内容。每一行就是一项内容,其形式都是类似SomeEntry=SomwValue。每个项的顺序是可以颠倒的,但系统分析I ...
分类:
编程语言 时间:
2019-11-02 15:38:34
阅读次数:
89
VS2017+WDK+VMware12+Win10环境配置完毕,接下来写第一个驱动程序。 1、新建一个KMDF的程序。 2、配置项目属性。 3、编译项目。一般这里应该成功,我一台电脑成功了,另一台电脑失败了。两台电脑OS的版本不同,一个1803(失败),一个1809(成功)。失败的信息如下: 做法: ...
分类:
编程语言 时间:
2019-11-01 16:48:11
阅读次数:
120
云原生是一种应用开发风格,鼓励在持续交付和价值驱动开发领域轻松采用最佳实践。相关的学科是建立12-factor Apps,其中开发实践与交付和运营目标相一致,例如通过使用声明式编程和管理和监控。Spring Cloud以多种具体方式促进这些开发风格,起点是一组功能,分布式系统中的所有组件都需要或需要 ...
分类:
其他好文 时间:
2019-10-30 09:22:45
阅读次数:
105
1使用npm安装 chai验证方法 前两种BDD,行为驱动开发是一种敏捷软件开发的技术,引导和关注行为和规范BDD(灰盒测试、黑盒测试) 后面一种TDD,测试驱动开发 https://www.chaijs.com/ Selenium用于Web应用程序测试的工具。Selenium测试直接运行在浏览器中 ...
分类:
其他好文 时间:
2019-10-29 15:20:44
阅读次数:
126
1.首先是VS2017 我之前一直都是下载的VS2017专业版,百度:“VS2017异次元”,然后下载就可了 2.然后是WDK的安装,找了很久,发现一个: 这个是针对1803版本的WIN10,但是经过我的测试,1703,也可以用!!! 安装WDK(version 1803):摘自网友描述: WDK ...
驱动开发的学习方法:框架 >流程 >编程 IIC硬件设备(低速总线) 两根信号线:SCL、SDA总线速度:标准100kbps、快速模式400kbps、高速模式3.4Mbps特点:半双工通信方式;仅需两根线(所以又被成为2-wire总线);一次传输8位;高位在前,低位在后;总线空闲状态:数据线SDA拉 ...
分类:
其他好文 时间:
2019-10-17 13:46:07
阅读次数:
97