I have some question about physical storage of the kernel data in Linux, I know that the upper 1 GB of the VIRTUAL memory of each process points to the same PHYSICAL location, but
- this piece of the data has to be contiguous in PHYSICAL media as in VIRTUAL MEMORY?
- does kernel data will take ONLY 1 GB of the PHYSICAL memory?
- can some pages of the kernel data be swapped to the disk (for example page tables, page global directory is always in physical memory and can't be swapped to disk as I understand)
what is the point to divide 32 bit VIRTUAL address into two levels (level of page global directory - 10 bit, and second of page table - 10 bit) and offset 12 bit, if it is not pagable what are the advantages of those two levels?