五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

驅(qū)動學(xué)習(xí)感想

2023-02-09 17:01 作者:秋名山西  | 我要投稿

最近看到某些驅(qū)動說自己屬于linux某某子系統(tǒng)的驅(qū)動,例如I2C、USB等,但在其代碼中由混雜著注冊了
其他類型的驅(qū)動注冊函數(shù),例如USB 鼠標(biāo)驅(qū)動中,就在驅(qū)動初始化函數(shù)中注冊了調(diào)用了inpu驅(qū)動的注冊函數(shù)。

現(xiàn)在的感悟是:
對于Linux系統(tǒng)而言,真正的設(shè)備文件分類主要有:
1、字符設(shè)備
2、塊設(shè)備
3、網(wǎng)絡(luò)設(shè)備

因此Linux設(shè)備驅(qū)動框架雖然有很多種,但是提供給用戶程序進(jìn)行操作時,最終都是要?dú)w屬到上述的三種設(shè)備文件類型中去。
所以對于USB鼠標(biāo),只能認(rèn)為USB設(shè)備和主機(jī)的通信方式使用的是USB通信協(xié)議,但是這只是將數(shù)據(jù)從設(shè)備讀取到了內(nèi)核,但是內(nèi)核該如何將信息提交給應(yīng)用程序呢?
這就需要考慮設(shè)備屬于哪種類型,字符設(shè)備?塊設(shè)備?網(wǎng)絡(luò)設(shè)備?,鼠標(biāo)一般歸屬為字符設(shè)備類型,而且屬于輸入設(shè)備(輸入設(shè)備的本質(zhì)也是字符設(shè)備)。因此這里可以
使用字符設(shè)備的方式組織將信息發(fā)送給應(yīng)用程序,也可以使用linux 提供的Input驅(qū)動框架,使用事件管理機(jī)制簡化驅(qū)動的編寫。
當(dāng)然,這兩種方式都需要先按照設(shè)備與主機(jī)的通信方式選擇對應(yīng)的驅(qū)動框架,在后再在對應(yīng)框架的初始化函數(shù)中注冊字符設(shè)備驅(qū)動或者Input驅(qū)動,完成應(yīng)用程序交給驅(qū)動的任務(wù)。

其次,常常在某些驅(qū)動中會專門為設(shè)備定制一個私有數(shù)據(jù)結(jié)構(gòu)體,當(dāng)然名字不一定帶有“pdata”,這樣做的目的,是將某些設(shè)備的特殊功能通過這樣的方式,帶入內(nèi)核,
以便在設(shè)備初始化的時候調(diào)用,例如 中斷、gpio、時鐘等。



驅(qū)動學(xué)習(xí)感想的評論 (共 條)

分享到微博請遵守國家法律
齐齐哈尔市| 浠水县| 淳安县| 兴仁县| 修武县| 桓仁| 手游| 大英县| 儋州市| 河曲县| 乾安县| 淮安市| 子长县| 星座| 塘沽区| 桐梓县| 弥渡县| 西吉县| 东光县| 石渠县| 肇州县| 彝良县| 高陵县| 和政县| 德昌县| 宜春市| 漳浦县| 乌兰察布市| 名山县| 丹江口市| 鸡泽县| 微博| 鹤壁市| 永新县| 廉江市| 白玉县| 西峡县| 临沧市| 象山县| 旬邑县| 东方市|