The following was generated using: ./paging-linear-translate.py -P 1k -a 16k -p 32k -v -u 50 -n 8 Use ./paging-linear-translate.py -P 1k -a 16k -p 32k -v -u 50 -n 8 -c to see the answers. Arguments: -P page size -a virtual address space size -p physical address space size -v verbose mode; show page table indices -u % of page table that is in use -n number of virtual addresses to generate -c compute answers ###################################################################### ARG seed 0 ARG address space size 16k ARG phys mem size 32k ARG page size 1k ARG verbose True ARG addresses -1 The format of the page table is simple: The high-order (left-most) bit is the VALID bit. If the bit is 1, the rest of the entry is the PFN. If the bit is 0, the page is not valid. Use verbose mode (-v) if you want to print the VPN # by each entry of the page table. Page Table (from entry 0 down to the max size) [ 0] 0x80000018 [ 1] 0x00000000 [ 2] 0x00000000 [ 3] 0x8000000c [ 4] 0x80000009 [ 5] 0x00000000 [ 6] 0x8000001d [ 7] 0x80000013 [ 8] 0x00000000 [ 9] 0x8000001f [ 10] 0x8000001c [ 11] 0x00000000 [ 12] 0x8000000f [ 13] 0x00000000 [ 14] 0x00000000 [ 15] 0x80000008 Virtual Address Trace VA 0x00003385 (decimal: 13189) --> PA or invalid address? VA 0x0000231d (decimal: 8989) --> PA or invalid address? VA 0x000000e6 (decimal: 230) --> PA or invalid address? VA 0x00002e0f (decimal: 11791) --> PA or invalid address? VA 0x00001986 (decimal: 6534) --> PA or invalid address? VA 0x000034ca (decimal: 13514) --> PA or invalid address? VA 0x00002ac3 (decimal: 10947) --> PA or invalid address? VA 0x00000012 (decimal: 18) --> PA or invalid address? For each virtual address, write down the physical address it translates to OR write down that it is an out-of-bounds address (e.g., segfault).