要开发一个windows驱动程序,需要先掌握C语言相关知识,并理解一些操作系统知识,然后搭建windows driver开发环境,以及准备一些必要的工具。
创新互联公司主打移动网站、网站设计制作、成都做网站、网站改版、网络推广、网站维护、申请域名、等互联网信息服务,为各行业提供服务。在技术实力的保障下,我们为客户承诺稳定,放心的服务,根据网站的内容与功能再决定采用什么样的设计。最后,要实现符合网站需求的内容、功能与设计,我们还会规划稳定安全的技术方案做保障。
驱动程序与普通应用程序的区别
我们知道,windows系统程序分为四个运行级别:R0,R1,R2,R3,其中,R3运行应用程序,权限最低;R0运行内核代码,管理硬件设备及运行驱动程序,权限最高,也就是说,一旦我们的驱动代码被OS内核加载,那么我们的驱动程序就具备了最高权限,这是一件很开心的事情,也是一件很可怕的事情,开心在于我们可以实现更高级的功能,可怕的是,一旦产生错误,系统就会蓝屏。R1,R2两个级别被Windows系统弃用,我们不必理会。
NT、WDM、WDF的区别
对于一个驱动程序开发新手,包括我自己,其实很纠结。首先我们分不清三者之间的关系和区别,其次,不知道到底该学哪个。其实三者并无本质区别,学哪个都行,当你遇到问题,需要解决问题的时候,就自然掌握和理解了。
NT:没有电源管理和即插即用到处模块
WDM:有电源管理和即插即用,可实现inf文件安装
WDF:WDF框架是为了减少开发者因为自身水平的限制而出现的不必要蓝屏错误,WDF框架将操作准化,相当于把简答题变成了填空题,降低了出错概率。
常用工具
Visual Studio 20xx:开发工具
Windows SDK:开发库
WDK:驱动开发库
DebugViewer:调试内核,查看内核打印输出
DriverMonitor:驱动加载工具,省去了手动安装过程,非常方便
PcHunter:windows信息查看软件,比OS自带的任务管理器显示内容更多
DeviceTree:查看设备列表
WinObj:windows对象查看
IDA Pro:反编译工具(暂时用不到)
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
标题名称:Windows驱动程序开发前期准备-创新互联
本文地址:http://lswzjz.com/article/djiosj.html