溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

驅(qū)動學(xué)習(xí)之驅(qū)動的設(shè)備文件

發(fā)布時間:2020-06-16 16:30:05 來源:網(wǎng)絡(luò) 閱讀:316 作者:菜鳥養(yǎng)成記 欄目:開發(fā)技術(shù)

  首先需要明白的一點是:一個硬件對應(yīng)一個驅(qū)動,對應(yīng)一個設(shè)備文件(/dev/),用來描述這個設(shè)備,將來應(yīng)用程序就是通過這個設(shè)備文件來找到這個驅(qū)動。

  1:設(shè)備號 = 主設(shè)備號+次設(shè)備號

主設(shè)備號標識的是設(shè)備的驅(qū)動告訴Linux內(nèi)核使用哪一個驅(qū)動程序為該設(shè)備(也就是/dev下的設(shè)備文件)服務(wù),次設(shè)備號則是具體唯一標識是哪個設(shè)備。

在linux中,通過mknod創(chuàng)建設(shè)備文件:mknod /dev/xxx  c  主設(shè)備號 次設(shè)備號  ,可以通過ls -l來查看xxx設(shè)備文件的信息。其中/dev/xxx:設(shè)備文件的全路徑;  c:表示是設(shè)備文件

mknod /dev/test c 250 0

這樣就創(chuàng)建了一個設(shè)備文件,其主設(shè)備號是250(insmod時系統(tǒng)自動分配的,系統(tǒng)自動分配的主設(shè)備號是從大到小分配的(這個查看register_chrdev的實現(xiàn)代碼可以知道)這個主設(shè)備號就是register_chrdev時返回的設(shè)備那個主設(shè)備號,也可以自己指定),次設(shè)備號是0。



向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI