我最近从另一个人那里接手了设备驱动程序的维护工作。
该驱动程序与 pci-e 板配合使用。系统启动时,驱动会分配一块128Mb的内存,然后在板上设置一些寄存器来传递分配内存的信息。稍后当板子工作时,它会将一些数据写入内存,其他一些应用程序将通过驱动程序访问这些数据。
该板由独立适配器供电(不是由 pci-e 插槽供电,它是演示板或开发板)。所以有时候板子里的fpga程序出错时,我们会重新给板子上电(这很快)并重新启动电脑(这很慢,否则板子将不知道驱动程序分配的内存)。
我的问题来了:驱动程序是否可能知道电路板已重新上电?如果它能够检测到事件并做一些类似于系统启动时所做的事情,它将为我们节省很多时间。
我以前对驱动程序开发没有太多了解,如果有任何不太复杂的教程/文章来解决这类工作,那将会很有帮助。或者也许我必须找一些厚书从头开始学习?
希望我已经让自己理解,任何建议将不胜感激:-)