Move problem 1-2 (join) into project 2 as the "wait" system call.
[pintos-anon] / grading / threads / review.txt
1 TESTCASES [[/10]]
2 -----------------
3   -2 Problem 1-1: no test cases/no test output/no description in TESTCASES
4   -1 Problem 1-1: not enough testing/inconclusive test output
5   -2 Problem 1-2: no test cases/no test output/no description in TESTCASES
6   -1 Problem 1-2: not enough testing/inconclusive test output
7   -2 Problem 1-3: no test cases/no test output/no description in TESTCASES
8   -1 Problem 1-3: not enough testing/inconclusive test output
9
10
11 DESIGN [[/40]]
12 --------------
13
14  -20 Missing or far too brief DESIGNDOC
15   -2 Changing interfaces, each (max -6)
16
17 DESIGNDOC (per problem):
18   -1 Minor details missing
19   -2 Major details missing
20   -5 Totally missing
21
22 Overall:
23   -1 Gratuitous use of malloc() (e.g. for allocating a list or a lock)
24   -1 Inappropriate use of ASSERT (e.g. to verify that malloc() succeeded)
25
26 Problem 1-1: Alarm Clock
27   -1 Uses lock/interrupt disabling without justifying
28   -1 Uses a lock within interrupt handler
29   -3 Busy waiting
30   -2 Wakes up too often, e.g. by using semaphores with negative values
31   -1 Traverses entire list of sleeping threads every tick
32   -1 Doesn't protect data structure in timer_interrupt
33   -1 Doesn't protect data structure in timer_sleep
34   -3 Bad design
35
36 Problem 1-2: Priority Scheduler
37   -3 Doesn't use sorted queue scheduler, and don't justify why they didn't
38   -2 sema_up() doesn't pick highest-priority waiting thread
39   -1 Should use sorted queue in semaphores, unless explained in DESIGNDOC
40   -1 cond_signal() doesn't pick highest-priority waiting thread
41   -1 Should use sorted queue in conditions, unless explained in DESIGNDOC
42   -2 Yield should pick the highest-priority thread (including current)
43   -3 Bad design
44   +2 Used a heap or other advanced priority queue for ready_list
45
46 Problem 1-3: Advanced Scheduler
47   -2 Isn't table-driven
48   -5 Bad design
49
50
51 STYLE [[/10]]
52 -------------
53   -1 No attempt to conform to existing coding style
54
55
56 COMMENTS
57 --------