windows驱动开发学习进展----四

 这一周师兄又给了我新的任务:现在进行的项目中网络访问控制上层操作不太方便,比如要禁止访问IP段2——9,11——15,19——46,上层就要设置访问策略三次(IP段只能设置连续的),现在要我修改底层网络驱动以便上层能这样方便操作:先设置IP10,16——18能够被访问,然后设置2——46段不可访问,越先加的访问策略优先级越高,这样后面加的策略就不能覆盖前面的。由于这次的任务当前项目要用,而以前师兄给的任务都是实验性的,因此我兴致比较高,马上就动工了。经师兄指点,我打算这样实现,底层驱动维护的IP控制段结构体加了一个字段,IsAccess,控制本IP段是否访问(以前的实现是只要该IP段插入链表就不可访问),然后访问控制函数里加一个判断条件,如果IsAccess为TRUE,该IP放行,马上退出循环,不再向后寻找链表的其余部分,这样就实现了后加的IP段不能覆盖以前的IP段,当然,中间层DLL和上层控制界面也要做一些修改,添加IP段的时候加一个Checkbox以指示该IP段是可访问还是不可访问,不过这都是简单的事情。本来打算两个小时搞定的,看代码和写程序的确只用了两个小时,可是调试花了我大半下午,修改了驱动要重启加载才能生效看效果,其中还蓝屏了四五次(幸好我用的虚拟机),终于在今天晚上7点大功告成。 这次驱动调试主要是用DbgView(感谢师兄教我用这个有用的工具),不断地跟踪上层和驱动,并打印我特意在代码中插入的字串,让我找到了错误。 由于WinDbg的高级命令还不熟,再加上驱动源码级调试技巧还没完全掌握,所以只能用这种笨办法了。呵呵,虽然一个小程序,但还是很有成就感的。                                                                                                                                                         写于2007-09-19晚
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Linux Wi-Fi驱动开发是一项高级技能,需要深入了解 Linux 内核和网络协议栈,以及具体的 Wi-Fi硬件设备和驱动程序。以下是一些步骤和技能,可以帮助你开始学习开发 Linux Wi-Fi驱动程序: 1. 了解 Wi-Fi硬件和协议。Wi-Fi技术涉及到许多不同的标准和协议,包括 IEEE 802.11,WPA2加密等。了解这些协议和标准是必要的,以便理解 Wi-Fi驱动程序的工作原理。 2. 学习 Linux 内核网络协议栈。Wi-Fi驱动程序是内核的一个模块,它需要与网络协议栈紧密集成。因此,了解和熟悉 Linux 的网络协议栈是必要的。 3. 学习 Linux 内核编程。Wi-Fi驱动程序是内核的一个模块,因此需要掌握 Linux 内核编程的技能,包括模块编程、内存管理、进程管理等。 4. 学习 Wi-Fi驱动程序的开发技术。Wi-Fi驱动程序需要与具体的硬件设备紧密集成。因此,需要掌握如何编写和调试设备驱动程序、掌握硬件设备的 I/O 端口、中断处理和 DMA 等技术。 5. 学习 Wi-Fi驱动程序的调试技术。Wi-Fi驱动程序是一个非常复杂的系统,因此需要掌握如何使用调试工具(例如 GDB、SystemTap、LTTng 等)来调试和分析驱动程序的运行时错误。 总之,Linux Wi-Fi驱动开发需要掌握多个领域的知识和技能,包括网络协议、内核编程、硬件驱动程序等。如果你有相关的背景和经验,可以尝试学习开发 Linux Wi-Fi驱动程序。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值