Linux0.12-文件系统-文件中数据的访问操作

block_write() ----- 块设备文件数据的读操作

1.把参数中文件指针pos位置映射成数据块号和块中偏移量

2.将pos所在位置的数据读入到缓冲区的一个缓冲块bread()

3.计算要写的长度

4.从用户数据缓冲区将数据复制到当前缓冲块的位移位开始处(从第2次开始,偏移量都是0)

5.如果还有数据,go to step 2

图:见笔记


用户读写操作过程,以读为例:

Linux0.12-文件系统-文件中数据的访问操作

再以块设备读函数为例:

block_read() ---> bread() ---> ll_rw_block()


转载于:https://www.cnblogs.com/windmissing/archive/2012/04/23/2559835.html