Operating System code suffers more cache misses than user code
There's cache misses when you access a page for the first time, then you get hits. Since the kernel initialises the page, it gets all the cache misses. Then it passes the page to the user code, which gets cache hits. 

The same misses would happen in user code if the kernel didn't initialise the page.