【发布时间】:2011-11-18 16:09:21
【问题描述】:
我需要一些关于开发定制 PCIe 驱动程序的建议。该驱动程序必须同时支持 Windows CE 6.0 和 Windows Desktop(xp、7 和 8 准备就绪)。
我们在为 Windows CE 开发驱动程序方面拥有丰富的经验,但没有为 Windows 桌面开发驱动程序的经验。我很确定我们可以开发一个好的、可靠的 Windows CE 驱动程序,但我认为如果没有一些外部帮助,我们将无法为 Windows 桌面做同样的事情。我认为我们有两个选择:
1) 使用现有的驱动框架,例如 Jungo WinDriver,它允许我们一次开发驱动并编译到多个平台。这也有一个优点,即大部分开发将在用户空间中进行,因此它应该使开发过程更简单。
2) 获得一些外部帮助来设置一个好的 Windows 桌面驱动程序,其中所有管道都已完成,我们只需要添加与我们的开发板通信的代码并公开相关的 IOControl。也许将尽可能多的代码移动到用户空间库中。
每个选项的优缺点是什么?您会推荐其他方法吗?
【问题讨论】:
-
Allan 以获得更好的机会获得答案,您应该也用“windows”标记您的问题。我认为您仅在 windows-ce 部分获得答案的机会很小。我还建议您查看 Jan Axelson 的书 USB Complete Fourth Edition - www.lvr.com,您将从那里获得很好的信息。就我个人而言,我会尝试使用 WinDriver,作为备份解决方案的外部帮助。
-
感谢有关“windows”标签的说明和您的一般建议。但是,我看不出一本关于 USB 的书将如何帮助我做出有关 PCI 驱动程序的决定?我有你推荐的书的第三版,据我所知,它主要是关于 USB 协议,而关于驱动程序的内容很少(提到了 USB 的 WinDriver,但仅此而已)。
-
对我来说这本书很有帮助。但是您的设备属于哪种 USB 类/子类?是隐藏的吗?它到底是什么?至少在一般情况下可以获得更好的想法。
-
Sorry Allan 我没有足够的关注,我专注于 USB,我过去使用 Jungo for USB。
-
您可能会尝试从使用过 WinDriver 的人那里获取 cmets(可能会问一个特定的问题)。如果它满足您的所有需求,那么致力于这样一个框架可能是一件幸事,但是如果缺少一些您需要的东西,那么所有的地狱都会崩溃。请查看 KMDF 和 WDK 中为您正在开发的驱动程序提供的示例
标签: windows windows-ce driver pci