no_cache.cc并未实现真正的cache,只是直接调用磁盘读写。
fileInfoPath_[FILE_MAX][PATH_MAX],用以存储已打开文件的路径:id表示文件描述符,path为路径名。
CreateFileInfo 将打开的文件描述符作为id,讲文件路径名作为path。path为fullpath,即rootdir下的路径。
readDisk,writeDiks 直接调用storageLayer->DiskRead/DiskWrite,将数据内容写入或读出磁盘
readFileInfo/writeFileInfo 调用pread pwrite读写rootdir下的文件信息(文件大小,block信息)
readFileCache:功能是读文件数据。需要将size转换为block个数,offset转换为block的偏移量,然后根据block信息依次从磁盘中读出文件数据。需要注意的是,中间部分的block为完整的block,但开始和结尾处,并不一定是完整的block,所以需要单独处理。