FONT: 14px/25px 宋體, arial; TEXT-TRANSFORM: none; COLOR: rgb(0,0,0); TEXT-INDENT: 0px; PADDING-TOP: 0px; WHITE-SPACE: normal; LETTER-SPACING: normal; BACKGROUND-COLOR: rgb(255,255,255); orphans: 2; widows: 2; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px"> 此函數向內核注冊中斷,包括中斷號和中斷處理函數handler。 對于HPI設備的注冊,為HPI設備分配系統未使用的254作為主設備號,0為次設備號。通過register_chrdev_region函數向內核注冊。函數cdev_init是初始化設備,其實就是建立設備與file_operations結構的對應關系。最后將設備加入內核。代碼如下:

上述的代碼都是在驅動模塊的hpi_init函數中實現。在HPI驅動被加載到內核時就完成了一系列初始化。
4.1.3 file_operations結構中函數的實現
設計驅動的大部分工作就是實現file_operations結構中的函數。代碼如下:

評論