Use First in, First out

Main() { # 1. Show virtual page table # The getmem will cause each of these arrays to # be in a physical frame while being created (getmem-ed). getmem num1[100]; # 2. Show virtual page table getmem num2[100]; # 3. Show virtual page table getmem total[100]; # 4. Show virtual page table # At the location specified, show the virtual page table # for the 1st 2 passes through the loop. for i = 0 to 99 do total[i] += num1[i]; # 5. & 7. Show virtual page table total[i] += num2[i]; # 6. * 8. Show virtual page table done }

Show 1
DataVM Page
3K Total  
2K Num2  
1K Num1  
0K Main  
Frame Data
2K 
1K 
0K 
Frame Data
2K 
1K 
0K 
Frame Data
2K 
1K 
0K 
Frame Data
2K 
1K 
0K 

Show 2
DataVM Page
3K Total  
2K Num2  
1K Num1  
0K Main  
Frame Data
2K 
1K 
0K 
Frame Data
2K 
1K 
0K 
Frame Data
2K 
1K 
0K 
Frame Data
2K 
1K 
0K 

Show 3
DataVM Page
3K Total  
2K Num2  
1K Num1  
0K Main  
Frame Data
2K 
1K 
0K 
Frame Data
2K 
1K 
0K 
Frame Data
2K 
1K 
0K 
Frame Data
2K 
1K 
0K 

Show 4
DataVM Page
3K Total  
2K Num2  
1K Num1  
0K Main  
Frame Data
2K 
1K 
0K 
Frame Data
2K 
1K 
0K 
Frame Data
2K 
1K 
0K 
Frame Data
2K 
1K 
0K 

Show 5
DataVM Page
3K Total  
2K Num2  
1K Num1  
0K Main  
Frame Data
2K 
1K 
0K 
Frame Data
2K 
1K 
0K 
Frame Data
2K 
1K 
0K 
Frame Data
2K 
1K 
0K 

Show 6
DataVM Page
3K Total  
2K Num2  
1K Num1  
0K Main  
Frame Data
2K 
1K 
0K 
Frame Data
2K 
1K 
0K 
Frame Data
2K 
1K 
0K 
Frame Data
2K 
1K 
0K 

Show 7
DataVM Page
3K Total  
2K Num2  
1K Num1  
0K Main  
Frame Data
2K 
1K 
0K 
Frame Data
2K 
1K 
0K 
Frame Data
2K 
1K 
0K 
Frame Data
2K 
1K 
0K 

Show 8
DataVM Page
3K Total  
2K Num2  
1K Num1  
0K Main  
Frame Data
2K 
1K 
0K 
Frame Data
2K 
1K 
0K 
Frame Data
2K 
1K 
0K 
Frame Data
2K 
1K 
0K