看板 LinuxDev 關於我們 聯絡資訊
請教各位一個問題,在LDD3中的scull中,有一個地方不甚瞭解 在write的operation,*f_pos需要平移count個資料量,這個我明白 但是為什麼在read的operation中,*f_pos也要平移count個資料量呢? 下面我提一下我的問題段程式algo(另一開始*f_pos = 0,count = 10): write: copy_from_user(dest + *f_pos, source, count); *f_pos += count; //此時*f_pos由0->10 read: copy_to_user(source, dest + *f_pos, count); *f_pos += count; 我的問題在於,我在write shift 了 *f_pos 這樣read時,卻是從加了平移量的位址開始讀取 然後明明沒有新增資料,卻又增加了平移量 請問這應該作何解釋?還請各位指點一下,謝謝 -- -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.118.6.66