PCI输入/输出控制程序设计

PCI输入/输出控制程序设计,c,io,pci,C,Io,Pci,我的工作是开发一个可以使用pci(非express或mini)i/o进行操作的程序。我需要一些参考资料来开始这项工作。 我用C语言编程,在Linux和Windows平台上都这么做。我想Linux机器不允许用户空间程序访问pci。 您可能需要创建设备驱动程序,O'Reilly book将在此处提供帮助: 无论如何,如果你想创建一个驱动程序,有一章仍然可以帮助你: 可能有一些设备连接到pci,您希望操纵该设备。 在linux上,内核应该可以找到这个设备,您可能可以在/dev中的文件上使用mmap/

我的工作是开发一个可以使用pci(非express或mini)i/o进行操作的程序。我需要一些参考资料来开始这项工作。
我用C语言编程,在Linux和Windows平台上都这么做。

我想Linux机器不允许用户空间程序访问pci。 您可能需要创建设备驱动程序,O'Reilly book将在此处提供帮助:

无论如何,如果你想创建一个驱动程序,有一章仍然可以帮助你:

可能有一些设备连接到pci,您希望操纵该设备。 在linux上,内核应该可以找到这个设备,您可能可以在/dev中的文件上使用mmap/


在windows而不是mmap上,有一个PCIInitInfo,因此如果想要在windows和linux上都有相同的代码,您需要制作一些宏。

大多数复杂性不在PCI总线本身,而是挂在另一端的特性。我看不出一个如此宽泛的问题怎么能在这里得到合理的回答。无论如何,我必须这样做)另外,不要认为Unix和Linux驱动程序之间有足够的相似性,可以称之为“同一个”。问一个具体的问题,我(可能)会给出一个详细的答案。让我教一个答案可以轻松填满一学期的内容,我不太愿意帮忙。但是,叫我不耐烦,不看FAQ也无济于事。这里有一个提示:阅读文档。开始寻找PCI规范,这样你就知道你在处理什么了。因此,相应的Linux/Windows界面至少应该有一点意义。没有阅读文档,你就在黑暗中徘徊。