<P> A virtual address in this schema could be split into two, the first half being a virtual page number and the second half being the offset in that page . </P> <P> A major problem with this design is poor cache locality caused by the hash function . Tree - based designs avoid this by placing the page table entries for adjacent pages in adjacent locations, but an inverted page table destroys spatial locality of reference by scattering entries all over . An operating system may minimize the size of the hash table to reduce this problem, with the trade - off being an increased miss rate . </P> <P> There is normally one hash table, contiguous in physical memory, shared by all processes . A per - process identifier is used to disambiguate the pages of different processes from each other . It is somewhat slow to remove the page table entries of a given process; the OS may avoid reusing per - process identifier values to delay facing this . Alternatively, per - process hash tables may be used, but they are impractical because of memory fragmentation, which requires the tables to be pre-allocated . </P> <P> Inverted page tables are used for example on the PowerPC, the UltraSPARC and the IA - 64 architecture . </P>

Purpose of paging the page tables in os
find me the text answering this question