TESTCASES [[/10]] ------------------ -3 Not explaining random vs. LRU algorithm -3 Not testing/explaining heavily paging program -3 Not testing/explaining mmap -1 No other test cases DESIGN [[/40]] -------------- DESIGNDOC: -10 Doesn't discuss page table design -10 Doesn't discuss swap design -5 Doesn't discuss page replacement algorithm -5 Doesn't explain how memory mapping works Overall: -1 Gratuitous use of malloc() (e.g. for allocating a list or a lock) -1 Inappropriate use of ASSERT (e.g. to verify that malloc() succeeded) Swap File Design -10 Doesn't allow out of order pages within swap disk -2 Does not synchronize data structure (give name of data structure here) Page Table / Page Replacement -10 Doesn't use an inverted, hashed, or other efficient page table design -5 Uses random/sequential page replacement +2 Unusually clever page replacement +5 Sharing code pages -2 Does not synchronize data structure (give name of data structure here) Demand Paging / Memory Mapping -10 Loading is not at all lazy -5 Loading is not entirely lazy -5 Stack does not grow downward from top of address space -5 Stack does not grow automatically -2 Does not synchronize data structure (give name of data structure here) STYLE [[/10]] ------------- -5...-10 Fixing code after submission -5 Doesn't compile as submitted +1...+5 Cool test programs etc. COMMENTS --------