University of Helsinki Department of Computer Science
 

Department of Computer Science

Department information

 
Operating Systems S2006 / PART 2 (5.10.-3.11)
Suomeksi In English
Memory Management

DEADLINE: Friday, November 3.

o GOALS

Key words: logical address, physical address, MMU and address translation, paging and page tables, segmentation and segment tables, translation lookaside buffer (TLB)

oMATERIAL

Other materials: A.S. Tanenbaum: Modern Operating Systems. 2nd ed. 2001. Section 4, pages 189-262. Also in Kumpula Library, 2nd floor.

The submitted report can be hand written (but clear enough). It does not have to be essay, but it needs to form a continuous 'story'. Do not forget to explain the details: who is doing (OS / HW), why and when, etc ...

The report must contain:

 

o A - TEAM TASK

Please describe in your report, using the detail level of the course book, how a paging virtual memory works. Give the description by 'simulating' the systems behavior when one prosess makes several memory references.

You will need to make several assumptions about the system state and the used mechanisms. Please state clearly in your report the assumptions you made.

The simulation of the process execution starts when the operating system is just switched a newly arrived process to execution for the first time. During its execution the process accesses virtual addresses (not page numbers, but memory addresses) 0, 1 .. 200, 3001, 3002, 180 .. 190, 5000, 5001, 150..170, 6300, 6302, 10, 11 in this sequence.

In the 'simulation' assume that initially the operating system has already loaded all virtual pages except the page, where the addresses 5000 and 6300 are, from the disk to the memory. Additionally, the page, where the address 6300 is, does not immediately fit to memory. You will need to clear at least one page frame for it. Describe the mechanism you are using and the causes for the decisions. (Make all necessary assumptions).

You may assume that the virtual memory mechanism is using just one page table for one process and that Translation Lookaside Buffer (TLR) in the Memory Management Unit (MMU) contains 16 places. The size of one page is 1024 Bytes.

For the memory address translations you will need to 'guess' the actual page frame numbers. Please do not assume that the page number and the corresponding page frame number are identical. If you wish, you can pick some of the page frame numbers from the book's problem 8.1. Please notice that all the information in the problem may not be relevant to this simulation.

Please discuss also other issues considering a virtual memory mechanism. These issues should cover also the disadvantages of using virtual memory. You can use the following list as ideas to your discussion:

  • Compare paging and segmentation as the base for virtual memory mechanism.
  • What benefits or disadvantages would you get when you combine these two approaches?
  • What is the inverted page table and why has it been developed?
  • What are the benefits and disadvantes of inverted page table compared with normal page table?

o B - EVALUATION

Each team: Please evaluate your teams work as well as your own work using the following questions:

  • Did your team work well? How can you improve your working methods?
  • Which parts of the team's common knowledge needed improvents and how did you achieve that?
  • What details are still unclear? How do you see the situation could be corrected?
  • Brief description of you team process: how many times did you meet, how, what methods did you use, were all member participating actively?

The evaluation has two goals: (1) to collect information about the exercises and study groups, and (2) to help study groups to make their work even better. We appriciate short answers that give the essentials in a compact form. Please try to be open minded. Answer to each question and give also your reasonings.


Part 1 o o Part 3

Failing prepares for success.

Page created 26.09.2006, Tiina Niklander