- 论坛徽章:
- 0
|
![]()
1. for ext2, buffer cache is used for reading super block and inode, and page cache is used for file reading. So the user process gets the file content (through the cache) indirectly from the disk
2. each file using page cache has an object addressspace
3. each page cache belongs to one list based on its status ( clean, dirty or locked )
4. there is a global hash table for page cache and buffer cache respectively
5. once triggered, kernel thread bflush or bupdate will write the dirty pages and buffers into the disk
6. a user process can selectively use direct IO, which essentially setups the same page table for the user process address with the kernel cache
7. for the buffer head, there is a free list for 2nd buffer for slab allocator
本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u2/73015/showart_1917289.html |
|