假設對flash:1.寫扇區0,2.寫扇區1
1.
讀出整塊到buffer,
修改buffer裏扇區0
擦除整塊
燒寫整塊
2.讀出整塊到buffer
修改buffer裏扇區1
擦除整塊
燒寫整塊
框架:
app:open,read,write “1.txt”
——————————————文件的讀寫
文件系統:vfat,ext2,ext3,yaffs(把文件的讀寫轉換成扇區的讀寫)
———————ll_rw_block———————扇區的讀寫
1.把“讀寫”放入隊列
2.調用隊列的處理函數(優化/調順序/合併)
塊設備驅動程序
硬件:硬盤,flash
分析扇區讀寫函數ll_rw_block
怎麼寫塊設備的驅動程序?
1.分配gendisk
2.設置
2.1分配、設置隊列:request_queue_t //它提供讀寫能力
blk_init_queue
2.2設置gendisk其他信息 //它提供屬性,比如容量
3.註冊:add_disk