linux中如何創(chuàng)建/dev/xxx名字

小編給大家分享一下linux中如何創(chuàng)建/dev/xxx 名字,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

網(wǎng)站建設(shè)哪家好,找創(chuàng)新互聯(lián)建站!專注于網(wǎng)頁設(shè)計、網(wǎng)站建設(shè)、微信開發(fā)、小程序開發(fā)、集團(tuán)企業(yè)網(wǎng)站建設(shè)等服務(wù)項目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了扶溝免費(fèi)建站歡迎大家使用!

在剛開始寫Linux設(shè)備驅(qū)動程序的時候,很多時候都是利用mknod命令手動創(chuàng)建設(shè)備節(jié)點(diǎn),實(shí)際上Linux內(nèi)核為我們提供了一組函數(shù),可以用來在模塊加載的時候自動在/dev目錄下創(chuàng)建相應(yīng)設(shè)備節(jié)點(diǎn),并在卸載模塊時刪除該節(jié)點(diǎn),當(dāng)然前提條件是用戶空間移植了udev。

內(nèi)核中定義了struct class結(jié)構(gòu)體,顧名思義,一個struct class結(jié)構(gòu)體類型變量對應(yīng)一個類,內(nèi)核同時提供了class_create(…)函數(shù),可以用它來創(chuàng)建一個類,這個類存放于sysfs下面,一旦創(chuàng)建好了這個類,再調(diào)用device_create(…)函數(shù)來在/dev目錄下創(chuàng)建相應(yīng)的設(shè)備節(jié)點(diǎn)。這樣,加載模塊的時候,用戶空間中的udev會自動響應(yīng)device_create(…)函數(shù),去/sysfs下尋找對應(yīng)的類從而創(chuàng)建設(shè)備節(jié)點(diǎn)。

注意,在2.6較早的內(nèi)核版本中,device_create(…)函數(shù)名稱不同,是class_device_create(…),所以在新的內(nèi)核中編譯以前的模塊程序有時會報錯,就是因?yàn)楹瘮?shù)名稱不同,而且里面的參數(shù)設(shè)置也有一些變化。

struct class和device_create(…) 以及device_create(…)都定義在/include/linux/device.h中,使用的時候一定要包含這個頭文件,否則編譯器會報錯。

以上是“l(fā)inux中如何創(chuàng)建/dev/xxx 名字”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!

當(dāng)前名稱:linux中如何創(chuàng)建/dev/xxx名字
網(wǎng)站地址:http://www.muchs.cn/article12/ihejdc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制網(wǎng)站、網(wǎng)站內(nèi)鏈、響應(yīng)式網(wǎng)站、小程序開發(fā)、面包屑導(dǎo)航、App設(shè)計

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

手機(jī)網(wǎng)站建設(shè)