X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=TODO;h=9ddf3c248e4b9824600ae905480b9928999d3318;hb=3bccbf4661eb75a871b8c3a2d91fcb033ad6f587;hp=85d2dd3db9506996f5f5e78eee57676bdd73ce78;hpb=5b4162f61981ff090c474d7e5d46e4a46cce3849;p=pintos-anon diff --git a/TODO b/TODO index 85d2dd3..9ddf3c2 100644 --- a/TODO +++ b/TODO @@ -1,35 +1,36 @@ -*- text -*- -* The tests in tests/ don't apply the grading patches. +* Get rid of rox--causes more trouble than it's worth -* We need better and more example programs. +* Reconsider command line arg style--confuses everyone. - - Need an mmap example program as a replacement for the crappy mmap FAQ - question. +* pintos script doesn't (always?) delete temp disks -* Make it clear that the students own their code, because there was some - confusion on that point. +* Finish writing tour. + +via Godmar Back: + +* Project 3 solution needs FS lock. + +* Get rid of mmap syscall, add sbrk. + +* Make backtrace program accept multiple object file arguments, + e.g. add -u option to allow backtracing user program also. + +* VM projects do not use enough memory to force eviction. + Should reduce user limit or increase memory consumption. -* 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. -* Userprog project: - - Don't emphasize that stuff needs to be copied from user space to - kernel space. Instead, emphasize validation and suggest that - copying is a common solution and that it will be necessary in - project 3 and in real OSes. Also revise the grading criteria to - match. +* process_death test needs improvement - - Move `join' implementation here, from `threads' project, to help - normalize the project difficulties. +* Internal tests. - - The semantics of the join system call should change so that it - only returns the exit code once. +* Improve automatic interpretation of exception messages. + +* Userprog project: - Mark read-only pages as actually read-only in the page table. Or, since this was consistently rated as the easiest project by the @@ -41,36 +42,15 @@ Alternately we could just remove the synchronization on pid selection and check that students fix it. -* VM project: - - - Discuss the perils of mixing dirty bits between kernel and user virtual - memory. - - - Sample solution. - - - Update grading/vm to reflect new mmap, munmap forms. - * Filesys project: - - Increase maximum disk size from 8 MB to something that actually - requires doubly indirect nodes. There is a negative pressure here - from the bitmap object--perhaps we need a specialized bitmap that - doesn't have to be all in-memory at once. - - Alternatively, shrink the inode size. - - - Add mkdir and ls example user programs. - - - Add option to disable buffer cache. - - - Get rid of "dump" commands--they're not really useful. - - - 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. * Documentation: - - Finish writing tour. - - Add "Digging Deeper" sections that describe the nitty-gritty x86 details for the benefit of those interested. @@ -89,18 +69,4 @@ . opendir/readdir/closedir - - 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. - + . everything needed for getcwd()