When I learn how the read file work , I know kernel first copy disk data to page cache , then copy from page cache to user space .

I don't understand where's the page cache store ? Is it a mapping physical memory address to disk address by page table ?

closed as too broad by user88036, Jeff Schaller, Isaac, Romeo Ninov, Anthony Geoghegan Oct 14 '18 at 20:19

Please edit the question to limit it to a specific problem with enough detail to identify an adequate answer. Avoid asking multiple distinct questions at once. See the How to Ask page for help clarifying this question. If this question can be reworded to fit the rules in the help center, please edit the question.

  • Hello @shaoyihe This is very broad subject. I encourage you to review this link manybutfinite.com/post/… they had illustrated all what you need to know about page cache. For simplicity purposes page cache is stored in "unused areas of memory". more valuable links are below in my answer. – user88036 Oct 14 '18 at 14:26

Under Linux, the page cache accelerates many accesses to files on non volatile storage. This happens because, when it first reads from or writes to data media like hard drives, Linux also stores data in unused areas of memory, which acts as a cache. If this data is read again later, it can be quickly read from this cache in memory.

More 1 2 3

Not the answer you're looking for? Browse other questions tagged or ask your own question.