* The tests in tests/ don't apply the grading patches.
-* We need better example programs.
+* We need better and more example programs.
- Need an mmap example program as a replacement for the crappy mmap FAQ
question.
-* Threads:
+ - How about `diff' and `cmp' programs?
- - join-invalid doesn't compile if tid_t is not scalar type.
+* Threads:
- 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.
- - 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.
- Sample solution.
+ - Update grading/vm to reflect new mmap, munmap forms.
+
* Filesys project:
- Increase maximum disk size from 8 MB to something that actually
- 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.
. Other good ideas.
+ . opendir/readdir/closedir
+
+ . everything needed for getcwd()
+
- Add src/testcases/vm, src/testcases/filesys and make it clear to use
them?
too long (especially when SHOW_PROGRESS is turned on) and doesn't
show significant improvement.
+* Code:
+
+ - Make threads test use a program and arguments like the other
+ projects.
+
+ - Revise command-line arguments for sensibility instead of for
+ Nachos compatibility.
+
+ - Get rid of all compile-time flags, e.g. MLFQS should be a runtime
+ command-line option.
+
+ - Need an optimization barrier and an explanation of it in the
+ documentation.
+
+ - Need to check the wait system call more thoroughly.
+
+ - Library is not precisely standard, e.g. ptrdiff_t should not be
+ defined by stdlib.h.