Windows 7驱动开发系列(五)--WDM驱动设计原则

   在上一篇说过了WDM模型的介绍之后,我们来继续说一下内核模式驱动程序的设计原则

     1.一般来说内核模式的驱动要用C编写,因为这样才有利于针对各个不同的平台进行编译和链接.
     2.可配置,不要假定你的驱动程序能申请到某个特定的IO或者某些RESOURCE,在这方面永远等待系统的分派而不要写任何硬代码.
     3.做好你的程序可能随时被打断也随时有可能被调度起来.
      4.要考虑多核系统的安全性:
       这部分比较关键,一定要记得不能让一个CPU在更改的数据,另外一个CPU不要碰.所以当你需要更改一部分关键数据的时候,根据上一条你的程序随时可能被打断,那么这时候就需要加上锁(SPIN LOCK)
    5.虽然是用C来编写程序但是也要记得面向对象编程的原则.在WINDOWS 驱动中对象分为三种,文件对象,设备对象和驱动对象.比如利用我们后面会说到的IOMANAGER就可以创建出DEIVCE OBJECT(设备对象),后面的操作都是针对这个设备对象来进行的.这其实是面向对象设备当中比较重要的原则封装.
   6最后比较重要的一点就是要能够支持异步的IO.
      
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值