WIN2K Mirror DriverDeveloping.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
WIN2K Mirror DriverDeveloping.ppt

WIN2K Mirror Driver Developing 目前状况 熟悉编译环境和调试工具SoftICE的使用; 对内核驱动程序加深了理解; 对联想、QUARTICS、VNC的驱动反编译 内核编程的内存申请和使用未明确; 内存共享及映射问题未明确; VNC的驱动程序层次实现方法未明确; DDK与DDI的联合工作 在编译中,分开编译避免头文件互相包含 解决了内核内存申请、MDL申请、绑定、映射等内核态函数的调用; 在DDI环境中调用VIDEO函数,可以得到PCI基地址,这样可以完成内存映射问题; 由于在内核态下要对传入的参数以及视频的存储分别申请内存,所以非分页内存申请的大小问题需要解决; 调试中发现,如果不申请内核空间情况下进行METHOD_BUFFERED通信,造成缺页故障。 softICE的使用 可以实现对用户态、核心态的程序进行源码级跟踪; 调试前需要编译为CHECK模式,打开、转换、加载后设置断点; 对miniport驱动的调试,则在安装时以及与用户通信时可以捕获到对应的断点; 可以观察CPU寄存器以及某符号变量的值; 具有最高的优先级,调试期间对CPU绝对独占; 内核驱动程序的认识 内核态下存储空间的操作要谨慎,使用完要释放; 内核驱动程序与用户程序的通信的方式,我们选择使用符号连接和I/O控制的方法; 使用method_buffered的模式进行I/O控制操作的一系列问题,如参数空间申请和释放 对内核态下的函数缺乏系统的掌握; DriverEntry例程的参数,Display与WDM的区别 对联想镜像驱动反编译 并没有使用内存映射直接操作的方法,而是使用的Bitblt以及分块检测; 镜像驱动基本和微软功能一致,并不高效; 对小运动区域捕捉快速,对大幅图像则效率很低 对QUARTICS驱动的反编译 未使用DeviceIoControl以及符号连接来打开驱动程序; 使用了镜像驱动的直接内存映射和操作; 如何在用户态程序中读取该内存镜像不明确; 使用了虚拟DISPLAY,将镜像内存搬移到虚拟内存中进行显示; 虚拟驱动下全屏视频为何流畅的方法未知; 对VNC驱动的反编译 其使用符号连接及I/O控制方法进行通信; 在miniport驱动上层覆盖一个过滤驱动,负责与用户态程序的通信; 在miniport中如何得到基址未知; 该过滤驱动程序的如何设计未知; 当前亟需解决问题 过滤驱动程序的原理及与主驱动通信方法 或其他的用户与视频miniport驱动通信方法 * *

文档评论(0)

zhaoxq + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档