Describe how an operating system that uses paging could make stacks grow dynamically if the original size proves too small. What would the page table data structures look like? Explain what would happen when a thread's stack grows past the area that has been allocated for it (e.g., how would the OS notice this fact, and what would happen inside the OS when it notices this fact). Could a similar effect be achieved with multi-level page tables? Segments? Paged segmentation? Inverted page tables?

The answer to this question would utilise about 1/3 of the content of a course.

The best strategy is to revise your class notes, or your textbook, and come up with a draft answer.

We will be pleased to critique your proposed response.