Assume a 48 bit virtual address space (typical for a 64 bit Xeon achitecture). A
ID: 3849671 • Letter: A
Question
Assume a 48 bit virtual address space (typical for a 64 bit Xeon achitecture). Assume 16KB pages, and real memory of 32GB How many entries in the page table? How many bits required to find a page in real memory? Do we need a dirty bit? A valid bit? How many bits to find a byte in the page? Assume 1 (8 byte) word for each page table entry, how many bytes does the page table need? If the page table is considered too big, we can use hierarchical or split page tables to allow parts of the page table to sit on disk or only be allocated when needed. These strategies add complexity and delay page lookup. Do we need to do this here?Explanation / Answer
64-bit xeon architecture means each word is of size 64 bits
Virtual address space= 48 bits
page size= 16KB
main memory=32 GB
<-------- 48 bits ------------------->
#entries in the page table:
total virtual address space= 2^48*2^6 bits
page size = 2^4*2^10*8 bits
= virtual address space/page size = (2^48*2^6)/(2^4*2^10*8)=2^(54-17)=2^37
#bits required to find a page in main memory:
main memory size =2^30*2^5*2^3 bits
frame size = page size = 2^4*2^10*8 bits
No of frames in main memory =2^38/2^17 =2^21
so bits requiewd to identify the page is log(#frames)= 21
do we need a dirty bit or valid bits??
A dirty bit or modified bit is a bit that is associated with a block of computer memory and indicates whether or not the corresponding block of memory has been modified. The dirty bit is set when the processor writes to (modifies) this memory.
#bits to find byte in page??
page size is 16KB= 2^14 bytes
so 14 bits are required to find a byte in a page
Assume 1 word (8 bytes)for each page table entries , how many bytes does the page table needs??
# entries in page table is 2^37
each entry is 1 word means 8 byte
so total size of a page is 2^37*8 bytes=2^40bytes
Part2:
if the page size is too high then the there will be more than one page needed to store the page table.
So it can either be present in the main memory or it can be bought from the disk.so there will be an overhead
involved in this strategy in the page lookup.
The alternative to that method is to use hierarchial strategy for storing the page table.
Here in this case the page table size is bigger then the page size so we should use hierarchial page tables .
page no offsetRelated Questions
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.