1.檢視主裝置號,次裝置號
進入/dev目錄執行ls -l,第四,五列分別為主次裝置號,10,180,1,5,這些是主裝置號,而60,63這些就是次裝置號
130|shell@android:/dev # ls -l
crw-rw-r-- system radio 10, 60 1969-12-31 21:00 alarm
crw-rw-rw- root root 10, 63 1969-12-31 21:00 ashmem
crw-rw-rw- root root 10, 59 1969-12-31 21:00 binder
crw-rw-rw- root root 180, 194 1969-12-31 21:00 btusb0
2.儲存裝置編號
在linux/types.h中定義了dev_t來儲存裝置編號:
typedef __u32 __kernel_dev_t;
typedef __kernel_dev_t dev_t;
這是個32位的數,前12位儲存主裝置號,後20位儲存次裝置號
major(dev_t dev)獲取主裝置號
minor(dev_t dev)獲取次裝置號
mkdev(int major,int minor)將主次裝置號轉換成dev_t型別
3.建立乙個字元裝置
首先要獲得裝置編號
//liunux/fs.h
extern int register_chrdev_region(dev_t, unsigned, const char *);
linux裝置驅動程式 字元裝置驅動程式
先留個 有一起學習驅動程式的加qq295699450 字元裝置驅動 這篇比較惱火。載入成功,但是讀不出來資料,有知道怎麼回事的,留個言,一起討論下 資料結構 struct scull mem struct scull dev dev 整個驅動程式 如下 include include include...
裝置驅動 字元裝置驅動程式
linux下的應用程式在訪問字元裝置時,一般都是通過裝置檔案訪問的。裝置檔案一般都存放在 dev目錄下。字元裝置檔案的第乙個標誌是c,如下所示 總結 每乙個檔案代表乙個裝置,在時間前面有兩個用逗號隔開的數字,第乙個數字是主裝置號,第二個數字是次裝置號。一般認為乙個主裝置號對應乙個驅動程式,這裡列出的...
Linux裝置驅動程式 字元裝置驅動程式設計
linux對裝置的操作與對檔案的操作是一樣的,可以看到乙個裝置所對應的檔案。我們平時用的read write等函式也可以用於裝置檔案。字元裝置 以字元為單位 按照順利操作 沒有快取區,故不支援隨機讀寫 例外 幀快取裝置,如顯示卡,是可以隨機訪問的 裝置號由主裝置號與次裝置號組成。主裝置號標識裝置對應...