一:read,write
應用層呼叫 read —>>> 應用層想讀取資料 —>>> 這件事情是核心中驅動完成
—>>> copy_to_user
應用層呼叫 write —>>> 應用層想寫取資料 —>>> 這件事情是核心中驅動完成
//驅動中的read、write介面實現
ssize_t demo_read
(struct file *filp,
char __user *buf, size_t size, loff_t *off)if(
copy_to_user
(buf, k_buf, size))
kbufcount =0;
printk
(kern_debug "---%s---%s---%d---\n"
,__file__
,__func__
,__line__);
return size;
}ssize_t demo_write
(struct file *filp,
const
char __user *buf, size_t size, loff_t *off)if(
copy_from_user
(k_buf,buf, size)
)kbufcount = size;
printk
(kern_info "demo_write->copy_from_user:%s\n"
,k_buf)
;printk
(kern_debug "---%s---%s---%d---\n"
,__file__
,__func__
,__line__);
return size;
}//應用層測試**char buf = "aaaaaaaaaaaaa";
char r_buf[32]
;int
main
(int argc,
const
char
*ar**)
write
(fd,buf,
strlen
(buf));
close
(fd)
;return0;
}
linux中斷底層硬體操作方法
linux中斷底層硬體操作方法 joee33 每一條中斷線都有乙個底層硬體操作函式集struct irq chip 大多數控制方法都是重複的 基本上只要有 中斷響應 中斷遮蔽 中斷開啟 中斷觸發型別設定等方法就可以滿足要求了。其他各種方法基本上和這些相同。這些操作方法的實現在檔案linux arch...
python3 集合 操作方法
今天都是課,就學這麼點 不多說 睡覺睡覺!usr bin env python coding utf 8 author xiaofeng list 1,2,4,6 set1 set 1,2,3 set2 set3 set asdf set4 set list set5 set print set1 ...
XML操作方法
4 寫xml標記及資料,儲存為xml檔案.建立檔案流,建立xmltextwriter並設定formatting屬性 string filename textbox1.text system.io.filestream myfilestream new system.io.filestream fil...