From: Godmar Back Date: Wed, 22 Mar 2006 21:52:13 +0000 (+0000) Subject: added some thoughts on TODO items X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b0989f883c16aeee2cb9278340601f15bcc15dd4;p=pintos-anon added some thoughts on TODO items --- diff --git a/TODO b/TODO index 9d3d6c2..017db82 100644 --- a/TODO +++ b/TODO @@ -1,5 +1,34 @@ -*- text -*- +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 +97,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 +321,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. + ]