论文部分内容阅读
Windows CE嵌入式系统软件与通用操作系统(如Windows2000/XP)软件兼容性非常好,可以稍加改动就能将通用操作系统下的软件移植到Windows CE下,方便了Windows CE系统下的软件开发。但是在Windows CE下,由于微软没有为其提供底层驱动与应用程序交互的接口函数。接口函数成为了通用操作系统软件移植到Windows CE下应用程序开发的瓶颈之一,解决这些接口问题,可以使这些移植到Windows CE下的应用程序性能得到充分发挥。
由于微软没有为Windows CE下的中间层驱动程序提供与应用程序交互的专门的接口函数,如NdisMregisterDevice、IoCreatDevice和IoCreateDeviceSecure等,使得一些通用操作系统下的网络软件移植到Windows CE下后,性能的充分发挥受到影响。
本文根据Windows CE下底层驱动与上层应用程序交互的特点,即利用流接口驱动程序可以实现底层驱动与上层应用程序的交互,以及Windows CE下中间层驱动程序的原理,通过流接口驱动程序实现了中间层驱动程序与上层应用程序的交互,解决了Windows CE下中间层驱动程序与上层应用程序交互的接口难题。论文首先介绍了Windows CE体系结构:深入分析和研究了两种驱动程序:流接口驱动程序和NDIS驱动模型,以及流接口函数、流驱动程序的加载方式和NDIS下的中间层驱动程序。然后给出了一种在Windows CE下实现中间层驱动程序动态加载的方法,使得开发人员在具体应用开发时大幅提高效率。同时给出了利用中间层驱动程序进行底层数据包截获的设计与实现方法,最后给出了系统总体设计,实现了中间层驱动程序与应用程序的交互,使应用程序可以获取中间层驱动程序从底层截获的完整数据包。
本文给出了Windows CE下利用流接口驱动实现中间层驱动程序的动态加载方法,利用中间驱动截获底层数据包,然后解决了中间层与上层应用程序数据交互的接口难题。