In a system using a combined segmentation and paging: the max segment size is 4 MB, the page size is 4 KB, the process virtual memory size is 4 GB and the physical memory (RAM) size is 4 GB. It’s desired to limit the page table size to one page. The free frame list is (10, 20, 30, 40, 50, 60, 70, 80). Frames allocation is done from the list head (left most). Process A with 2 segments of size 3 KB and 6 KB, respectively, will be completely loaded into RAM.
For process A: what’s the start address of its segment table? Construct its segment table and page tables showing the following: (Assume the 1st segment is completely loaded before the 2nd one) a.segment table fields: segment number, base and limit. b.Page table fields: page number and frame number). What’s the process A virtual address that corresponds to physical address (0003C000)16? How the virtual address will be calculated
How the virtual address will be calculated I tried to solve it but the answer is different
Segment table for process A:
Page tables for process A:
How to calculate the virtual address that corresponds to physical address (0003C000)16:
Therefore, the virtual address that corresponds to physical address (0003C000)16 is 7096.
Explanation:
In a combined segmentation and paging system, the virtual address is translated to a physical address in two steps:
The following diagram shows how the virtual address is translated to a physical address in a combined segmentation and paging system:
The virtual address is split into three parts:
The physical address is calculated as follows:
In the case of process A, the virtual address 7096 is translated to the physical address (0003C000)16 as follows: