一.檔案操作,檔案結構
清單1 sys_open 函式**
asmlinkage long sys_open(const char __user * filename, int flags, int mode)…… return fd;
……}
asmlinkage:asmlinkage大都用在系統呼叫中。
有一些情況下是需要明確的告訴編譯器,我們是使用stack來傳遞引數的,比如x86中的系統呼叫,是先將引數壓入stack以後呼叫sys_*函式的,所以所有的sys_*函式都有asmlinkage來告訴編譯器不要使用暫存器來編譯。
__user:__user
巨集簡單告訴編譯器(通過noderef
)不應該解除這個指標的引用(因為在當前位址空間中它是沒有意義的)。
(void __user *)arg 指的是arg值是乙個使用者空間的位址,不能直接進行拷貝等,要使用例如copy_from_user,copy_to_user等函式。
預設是核心空間,因為這是驅動,是在核心空間執行的,
直接拷貝不了,因為乙個是在使用者空間,乙個是在核心空間
aio非同步寫檔案:
open引數o_direct:
二.非同步poll讀檔案
三.mount原理
四.讀寫錯誤
由列印乘法表引入format的用法
最初列印的乘法表字元未對齊 for i in range 1,10 for j in range 1,10 if i j print str j str i str i j end print print 30 效果如下 1 1 1 1 2 2 2 2 4 1 3 3 2 3 6 3 3 9 1 4...
繼委內瑞拉,秘魯計畫引入由國家支援的加密貨幣
今日塊訊 www.cppcns.程式設計客棧com 11 月 1 日訊息據coingeek訊息,南美國家秘魯已經決定決定進軍加密貨幣領域,該國計畫推出自己的數字貨幣perucoiwww.cppcns.comn,作為該國官方支援的加密貨幣。此前,南美委內瑞拉已經推出了國家支援的加密貨幣石油幣。據悉,目...
由Huffman編碼以及相關的資料結構
貪心選擇演算法 huffman 實現huaffman編碼的資料結構有優先佇列,二叉樹 滿足這種性質的我們叫它huffmantree,或者最優二叉樹 例子 abcde f 頻率 45 13121695 然後構造節點,節點結構 class binarytree 優先佇列 即權值最大的先出,這就可以用最大...