您好,登錄后才能下訂單哦!
首先需要明白的一點是:一個硬件對應(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。
免責(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)容。