Update
[pintos-anon] / TODO
diff --git a/TODO b/TODO
index 85d2dd3db9506996f5f5e78eee57676bdd73ce78..da3937dec3f973f08b71e378cecd332bf9ae4266 100644 (file)
--- a/TODO
+++ b/TODO
@@ -1,19 +1,21 @@
 -*- text -*-
 
 -*- text -*-
 
-* The tests in tests/ don't apply the grading patches.
+* Remove names from synchronization primitives?  They don't seem
+  useful in practice.
+
+* debug_backtrace() in kernel should only dereference valid pointers.
+
+* Mention how to use add-symbol-file in gdb.
 
 * We need better and more example programs.
 
   - Need an mmap example program as a replacement for the crappy mmap FAQ
     question.
 
 
 * We need better and more example programs.
 
   - Need an mmap example program as a replacement for the crappy mmap FAQ
     question.
 
-* Make it clear that the students own their code, because there was some
-  confusion on that point.
+  - How about `diff' and `cmp' programs?
 
 * Threads:
 
 
 * Threads:
 
-  - join-invalid doesn't compile if tid_t is not scalar type.
-
   - mlfqs tests suck.  They aren't even correct, e.g. the amarv
     submission from win0405 is graded incorrectly.
 
   - mlfqs tests suck.  They aren't even correct, e.g. the amarv
     submission from win0405 is graded incorrectly.
 
     project 3 and in real OSes.  Also revise the grading criteria to
     match.
 
     project 3 and in real OSes.  Also revise the grading criteria to
     match.
 
-  - Move `join' implementation here, from `threads' project, to help
-    normalize the project difficulties.
-
-  - The semantics of the join system call should change so that it
-    only returns the exit code once.
-
   - Mark read-only pages as actually read-only in the page table.  Or,
     since this was consistently rated as the easiest project by the
     students, require them to do it.
   - Mark read-only pages as actually read-only in the page table.  Or,
     since this was consistently rated as the easiest project by the
     students, require them to do it.
 
     Alternatively, shrink the inode size.
 
 
     Alternatively, shrink the inode size.
 
-  - Add mkdir and ls example user programs.
-
   - Add option to disable buffer cache.
 
   - Add option to disable buffer cache.
 
-  - Get rid of "dump" commands--they're not really useful.
-
   - Sample solution.
 
   - Sample solution.
 
+  - Need a better way to measure performance improvement of buffer
+    cache.  Some students reported that their system was slower with
+    cache--likely, Bochs doesn't simulate a disk with a realistic
+    speed.
+
+  - Clarify effect of remove(cwd).
+
 * Documentation:
 
   - Finish writing tour.
 * Documentation:
 
   - Finish writing tour.
@@ -77,6 +76,8 @@
   - Add explanations of what "real" OSes do to give students some
     perspective.
 
   - Add explanations of what "real" OSes do to give students some
     perspective.
 
+  - GNU make 3.80 or later is required.
+
 * Assignments:
 
   - Add extra credit:
 * Assignments:
 
   - Add extra credit:
@@ -89,8 +90,7 @@
 
     . opendir/readdir/closedir
 
 
     . opendir/readdir/closedir
 
-  - Add src/testcases/vm, src/testcases/filesys and make it clear to use
-    them?
+    . everything needed for getcwd()
 
 * Tests:
 
 
 * Tests:
 
     too long (especially when SHOW_PROGRESS is turned on) and doesn't
     show significant improvement.
 
     too long (especially when SHOW_PROGRESS is turned on) and doesn't
     show significant improvement.
 
+* Code:
+
+  - Need an optimization barrier and an explanation of it in the
+    documentation.
+
+  - Need to check the wait system call more thoroughly.