X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=TODO;h=5bf19c1d3c94176bbc9e523b0538e12b893fa4ce;hb=11e89d796647d72cd2667a568610521f84d6cc95;hp=9d3d6c23509adc26cbb2b97ceb88e5e4c873e6de;hpb=dbce2172808cc6bff4e4dda090e9c0c909706d1c;p=pintos-anon diff --git a/TODO b/TODO index 9d3d6c2..5bf19c1 100644 --- a/TODO +++ b/TODO @@ -1,5 +1,35 @@ -*- text -*- +* Bochs is not fully reproducible. + +Godmar says: + +- In Project 2, we're missing tests that pass arguments to system calls +that span multiple pages, where some are mapped and some are not. +An implementation that only checks the first page, rather than all pages +that can be touched during a call to read()/write() passes all tests. + +- In Project 2, we're missing a test that would fail if they assumed +that contiguous user-virtual addresses are laid out contiguously +in memory. The loading code should ensure that non-contiguous +physical pages are allocated for the data segment (at least.) + +- Need some tests that test that illegal accesses lead to process +termination. I have written some, will add them. In P2, obviously, +this would require that the students break this functionality since +the page directory is initialized for them, still it would be good +to have. + +- There does not appear to be a test that checks that they close all +fd's on exit. Idea: add statistics & self-diagnostics code to palloc.c +and malloc.c. Self-diagnostics code could be used for debugging. +The statistics code would report how much kernel memory is free. +Add a system call "get_kernel_memory_information". User programs +could engage in a variety of activities and notice leaks by checking +the kernel memory statistics. + +--- + From: "Godmar Back" Subject: priority donation tests To: "Ben Pfaff" @@ -68,6 +98,12 @@ immediately, forcing the scheduler to switch to the other equal-priority thread. Both wake-up times must be the same (and match the planned wake-up time.) +PS: +I actually tested it and it's hard to pass with the current ips setting. +The bounds on how quickly a thread would need to be able to return after +sleep appear too tight. Need another idea. + +--- From: "Waqar Mohsin" Subject: 3 questions about switch_threads() in switch.S To: blp@cs.stanford.edu, joshwise@stanford.edu @@ -286,6 +322,11 @@ via Godmar Back: * lock_acquire(), lock_release() don't need additional intr_dis/enable calls, because the semaphore protects lock->holder. + [ Think this over: is this really true when priority donation is + implemented? intr_dis/enable prevents the race with thread_set_priority. + Leaving it there could help the students getting the correct synchronization + right. + ]