裝置類struct class是乙個裝置的高階檢視,它抽象出低階的實現細節。例如,驅動可以見到乙個scsi磁碟或者乙個ata磁碟,在類的級別,他們都是磁碟,類允許使用者空間基於它們作什麼來使用裝置,而不是它們如何被連線或者它們如何工作。
struct class
呼叫函式:
int class_register(struct class *cls);
用於註冊
void class_unregister(struct class *cls);
用於登出
class可以看成是乙個容器,容器總包含了很多的class_device,每個都對應著乙個具體的邏輯裝置,並通過成員變數dev關聯乙個物理裝置。定義為:
struct class_device
呼叫函式:
int class_device_register(struct class_device *class_dev);
用於註冊
void class_device_unregister(struct class_device *class_dev);
用於登出
相關結構體
struct class_inte***ce
呼叫函式:
int class_inte***ce_register(struct class_inte***ce *class_intf);
用於註冊
void class_inte***ce_unregister(struct class_inte***ce *class_intf);
用於登出
linux驅動結構之class及相關結構體
裝置類struct class是乙個裝置的高階檢視,它抽象出低階的實現細節。例如,驅動可以見到乙個scsi磁碟或者乙個ata磁碟,在類的級別,他們都是磁碟,類允許使用者空間基於它們作什麼來使用裝置,而不是它們如何被連線或者它們如何工作。struct class 呼叫函式 int class regi...
linux驅動結構pci之resource
linux設計了乙個通用的資料結構resource來描述各種i o資源 如 i o埠 外設記憶體 dma和irq等 該結構定義在include linux ioport.h標頭檔案中 struct resource linux是以一種倒置的樹形結構來管理每一類i o資源 如 i o埠 外設記憶體 d...
JVM之Class檔案結構
但是乙個類或者介面不一定生成class檔案,classloader直接生成。各個資料項按照嚴格的順序排列在class檔案中,沒有任何分隔符,當遇到需要占用8位位元組以上的資料項時,則會按照高位在前 或低位在前 方式分割為若干個8位位元組儲存。big endian little endian。clas...