18. Paging: Introduction Flashcards

1
Q

What is the role of page table? Is it a global or per-process data structure?

A

Store address translation for each of the virtual pages of the address space. It’s per-process data structure.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What does virtual address consist of in simple page table implementation?

A

Virtual Page Number (VPN) and offset

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What is simplest form of page table? How does it work?

A

Linear page table. It indexes an array by the VPN and looks up PTE at that index.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What kind of bits can be in PTE?

A

Valid bit - if translation is valid (if the page is allocated).
Protection bits (rwx).
Present bit (if page is in memory or on disk).
Dirty bit (if page was modified)
Reference bit/access bit (if page has been accessed)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What is page-table base register and how is it used?

A

It’s a memory address of the start of page table for the process. This register is used by hardware to find a PTE for each memory reference and lookup a translation there

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What are upsides and downside of paging in its first iteration?

A

It’s slow because incurs extra memory reference (to page table) and it’s big in size. Thought, it solves an issue with external fragmentation due to fixed-size pages

How well did you know this?
1
Not at all
2
3
4
5
Perfectly