Switch the base file system from direct-indexed inodes to extents.
[pintos-anon] / TODO
diff --git a/TODO b/TODO
index 27c6254779543e2171a417168aab385931394e0b..9e332a36a320dc0d4fc6b927d2e35a0e0737e3e7 100644 (file)
--- a/TODO
+++ b/TODO
@@ -1,20 +1,57 @@
 -*- text -*-
 
-* The p1-4.c testcase needs significant tuning.  Currently it takes
-  too long (especially when SHOW_PROGRESS is turned on) and doesn't
-  show significant improvement.
+* Code:
 
-* The semantics of the join system call should change so that it only
-  returns the exit code once.
+  - Speed up disk routines: filling an 8 MB disk takes a long time.
+    (They're only slow because timer_sleep always waits for at least
+    one timer tick.)
 
-* mmap/munmap should use segment IDs like Nachos.  Too hard otherwise.
+  - userprog project should 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.
 
-* Some confusion--do we really get overlapping ro/rw segment in normal
-  link?  Student example seemed to show that we don't.
+  - For userprog project, don't provide per-process pagedir
+    implementation but only single-process implementation and require
+    students to implement the separation?  This project was rated as
+    the easiest after all.  Alternately we could just remove the
+    synchronization on pid selection and check that students fix it.
 
-* Finish writing the tour.
+* Documentation:
 
-* Come up with a way for us to release some of the tests.
+  - Finish writing tour.
+
+  - Add "Digging Deeper" sections that describe the nitty-gritty x86
+    details for the benefit of those interested.
+
+  - Add explanations of what "real" OSes do to give students some
+    perspective.
+
+* Assignments:
+
+  - Add extra credit:
+
+    . Low-level x86 stuff, like paged page tables.
+
+    . Other good ideas.
+
+  - The semantics of the join system call should change so that it
+    only returns the exit code once.
+
+  - mmap/munmap should use segment IDs like Nachos.  Too hard
+    otherwise.
+
+  - Add src/testcases/vm, src/testcases/filesys and make it clear to use
+    them?
+
+* Tests:
+
+  - Release some of them.
+
+  - The threads, userprog, vm test source files could use
+    factorization and cleanup along the lines of fslib in the filesys
+    tests.
+
+  - The p1-4.c testcase needs significant tuning.  Currently it takes
+    too long (especially when SHOW_PROGRESS is turned on) and doesn't
+    show significant improvement.
 
-* userprog project should mark read-only pages as actually read-only
-  in the page table