Difference Between Page Table and Inverted Page Table
Paging is a concept for storage management in operating systems that retrieve processes from secondary storage and store them in main memory as pages. The main concept behind paging is to divide each process into pages. Frames will also be used to divide the main memory.
One page of the process is to be saved in one of the memory frames. In various locations, we can store the page throughout the memory, but our priority is always to find contiguous frames. Page Table stores the frame number where the process’s pages are stored. Page Table Entry contains a variety of page-related information.
Page Table:
For each process, the operating system keeps a page table. Every process has their own page table, we did not need to store any process identifier in the page table. A page table is a table that converts a given logical/virtual page number to an actual physical frame/page address.
A page table is a very important part used by a virtual memory system that stores the mapping between virtual addresses and physical addresses. In the virtual address translation page table is the very important part, which is required to access data in memory.
Inverted Page Table:
In an inverted page table, there is a virtual page for each occupied physical memory frame. The inverted page table is inverted which means we look at the mapping from a physical memory frame back to a virtual page, despite the fact that the actual address translation begins with a virtual page and ends with a physical memory frame, just like a normal page table.
The Inverted Page Table is a one-page table that the Operating System maintains for all processes. The number of entries in an inverted page table and the number of frames are equal in the main memory. The inverted page table is used to overcome the limitations of the page table.
Whether or not the page is present in the main memory, there is always a space reserved for it. If the page is not present, however, this is simply a wastage of memory.
Difference between Page Table and Inverted Page Table
The following are the primary distinctions between an inverted page table and a page table are as follows:
S. No | Page Table | Inverted Page Table |
---|---|---|
1 | Page Tables is an important part that is used by virtual memory systems, it is used to store the mapping between the logical and the physical addresses. | In an inverted page table, there is a virtual page for each occupied physical memory frame. It can be used to overcome the limitations of the page table. |
2 | For each process, the operating system keeps a page table. | The Operating System maintains an inverted page table for all processes. |
3 |
A memory reference’s logical address is of the form: Logical Address: <virtual page number (p), offset (d)> |
A memory reference’s logical address is of the form: Logical Address:<pid (id), virtual page number (p)> = page-table[f] |
4 | Page Table is one type of data structure that is used by virtual memory systems. | For faster lookup, inverted page tables can be implemented using a hash table data structure. |
5 | There is a wastage of memory in the page table if the page is not present. | We can minimise the wastage of memory by just inverting the page table. |
Please Login to comment...