1、字元驅動:操作從核心分配的記憶體
2、/dev目錄ls -l 可以檢視 其中「c」開頭為字元裝置 ,「b」開頭為塊裝置
3、裝置主編號標識驅動 次編號標識具體裝置
4、dev_t裝置主次編號結構 前12位主編號 後20位次編號
5、獲取裝置主次編號函式 :
major(dev_t dev);minor(dev_t dev);
6、設定裝置主次編號函式:
mkdev(int major,int minor);
7、cat /proc/devices可以檢視系統所有裝置以及編號
8、動態分配裝置號:
int alloc_chrdev_region(dev_t *dev,unsigned
int firstminor,unsigned
int count, char *name);
9、**裝置號:
void unregister_chrdev_region(dev_t form,unsigned int
count);
10、重要的結構體file_operations,用來存放核心模組對裝置的提供的操作的函式指標,通俗說就是把所有要用的函式集合起來。
struct file_operations scull_fops = ;
11、struct file結構體和flip結構體指標
12、struct cdev指向裝置的結構體指標,步驟:
定義乙個結構體指向自己的裝置;
struct cdev *mydev;
初始化:
cdev_init(mydev, &my_fops);
告訴核心「你擁有了乙個字元裝置」
cdev_add(mydev, devno, 1);
《linux裝置驅動程式》讀書筆記
這也算是一本神書了,12年買了,13年看完了,後來一直嫌棄著,今天當好有空,整理一下筆記,也算是溫故知新了。這個做linux驅動開發必看的書記,我這個是第三版本,核心版本是2.6版本的。這章不重要,過 講如何獲取原始碼,如何編譯一核心,過 核心開發的特點,這個還是比較好的 第3章 程序管理 第4章 ...
讀書筆記 Linux裝置驅動程式(一) 0 02
驅動程式的引數值可由in od或者modprobe在裝載模組時設定,後者還可以從配置檔案 etc modules.conf 中獲得引數賦值。這些命令能夠在命令列中接受整型和字串型賦值。如 模組需要獲得乙個叫做skull ival的整型引數和乙個叫做skull sval的字串型引數 in od sku...
讀書筆記(二)
使用數學函式的時候,大多數需要包含標頭檔案,但是也有特例,例如處理整型數的函式abs函式被包含在標頭檔案中 三角函式和反三角函式,都以弧度為引數,而不是以角度為引數。更加詳細的數學函式可以參考c mathematical functions。維基百科 strcpy strcat函式會改變傳入的字串的...