Patent ID: 8204871
Filing Date: 2012-06-19
Classification: G06F

Abstract:
1. A computer-implemented method of operating a file server, the file server including random access memory, data storage, and a data processor coupled to the random access memory and coupled to the data storage for maintaining a file system in the data storage and for maintaining a file system cache in the random access memory, the file system including file system blocks, the file system blocks including inodes defining attributes of files in the file system, data blocks storing data of the files, and indirect blocks linking inodes to data blocks so that at least some of the files each include an inode and a hierarchy of indirect blocks linking the inode to data blocks, the hierarchy including leaf-level indirect blocks each containing pointers to data blocks, and the file system cache containing recently accessed file system blocks, the method comprising the data processor executing computer instructions stored on a non-transitory computer-readable storage medium to perform the steps of: maintaining, in the random access memory, an extent cache of pointers to recently accessed leaf-level indirect blocks, the extent cache including an index for searching the extent cache for a pointer to a recently accessed leaf-level indirect block mapping a data block of a specified file to a specified offset in a logical extent of the specified file, and responding to a request to read data from or write data to the specified offset in the logical extent of the specified file by: