I had a question regarding the page initialization. On a page fault to a page that has never been touched before the kernel under some conditions maps the page to a zero page maintained by the kernel, the empty_zero_page.

Is this frame always used to initialize a page, or is there any other way, like setting a new page to all zeros, that is used by the kernel to do a page initialization?

Thanks,
-SC