63.5k views
2 votes
what is the translation of each of the following virtual addresses? write your answer in hexadecimal with or without a leading 0x. if the access causes a page fault, answer with 'pf'. to answer this question, you must find the number of bits used to index pages in physical memory.

User Afrim
by
8.0k points

1 Answer

1 vote

The translations of the provided virtual addresses are:

  • 0x3A7
  • 0x9BC
  • 0xE0F1

How to solve

The number of bits used to index pages in physical memory is determined by the page size. Let's assume the page size is 4KB, which implies a 12-bit page offset.

For the virtual address 0x3A72F9:

Page Number = 0x3A72F9 >> 12 = 0x3A7 (truncating the offset)

The access does not cause a page fault.

For the virtual address 0x9BCD23:

Page Number = 0x9BCD23 >> 12 = 0x9BC (truncating the offset)

The access does not cause a page fault.

For the virtual address 0xE0F156:

Page Number = 0xE0F156 >> 12 = 0xE0F1 (truncating the offset)

The access does not cause a page fault.

The number of bits used to index pages in physical memory, given a 4KB page size, is 12 bits.

The Complete Question

Given a virtual memory system, translate the provided virtual addresses into their corresponding hexadecimal representations. Identify if the access to each virtual address causes a page fault. Additionally, determine the number of bits utilized to index pages in physical memory.

Virtual addresses:

0x3A72F9

0x9BCD23

0xE0F156

User Fullstackduck
by
7.9k points