I have a little problem in understanding the working of the page-cache in linux. If I understood it right the page cache gets filled with pages the kernel recently allocated. Is it correct that, if these pages (inside the cache) are filled with data, there isn't an adress translation through the MMU required as the data is already here in the cache? So the kernel can directly access them with the virtual adress and does only have to use the MMU but only the page-table to find the data inside the cache.
I hope you can correct me. Thanks.