Ben Pfaff [Tue, 10 May 2005 23:09:34 +0000 (23:09 +0000)]
Standard disk assignments.
Ben Pfaff [Wed, 13 Apr 2005 05:32:09 +0000 (05:32 +0000)]
Use runtime options instead of conditional compilation for MLFQS,
RANDOM_REPLACEMENT, extra credit. Update documentation, grading.
Ben Pfaff [Wed, 13 Apr 2005 05:20:30 +0000 (05:20 +0000)]
Clean TAGS, tags targets.
Ben Pfaff [Tue, 12 Apr 2005 06:27:56 +0000 (06:27 +0000)]
Align comments.
Ben Pfaff [Tue, 12 Apr 2005 06:09:46 +0000 (06:09 +0000)]
Update message.
Ben Pfaff [Tue, 12 Apr 2005 05:43:46 +0000 (05:43 +0000)]
Update message.
Ben Pfaff [Tue, 12 Apr 2005 05:26:35 +0000 (05:26 +0000)]
Revise.
Ben Pfaff [Tue, 12 Apr 2005 05:24:37 +0000 (05:24 +0000)]
Get rid of file system "dump" operations because they weren't useful
and occasionally provoked student questions.
Ben Pfaff [Tue, 12 Apr 2005 05:09:28 +0000 (05:09 +0000)]
Clean better.
Ben Pfaff [Tue, 12 Apr 2005 05:05:47 +0000 (05:05 +0000)]
Get rid of DEBUG macro, supporting code, and documentation,
because no one ever used it.
Ben Pfaff [Thu, 7 Apr 2005 18:00:06 +0000 (18:00 +0000)]
In idle(), "sti; hlt" must be atomic or we can waste time waiting for
the next clock tick.
Fix inspired by Linus Torvalds in message
<Pine.LNX.4.58.
0504071000450.28951@ppc970.osdl.org>.
Ben Pfaff [Wed, 6 Apr 2005 21:13:18 +0000 (21:13 +0000)]
Update.
Ben Pfaff [Wed, 6 Apr 2005 21:13:00 +0000 (21:13 +0000)]
Enhance shell.
Ben Pfaff [Wed, 6 Apr 2005 20:56:02 +0000 (20:56 +0000)]
Enhance shell.
Ben Pfaff [Wed, 6 Apr 2005 20:55:40 +0000 (20:55 +0000)]
Add ls, mkdir user test programs.
Ben Pfaff [Wed, 6 Apr 2005 18:55:18 +0000 (18:55 +0000)]
Revise.
Ben Pfaff [Wed, 6 Apr 2005 18:50:41 +0000 (18:50 +0000)]
Fixed an issue.
Ben Pfaff [Wed, 6 Apr 2005 18:47:48 +0000 (18:47 +0000)]
Add SUBMAKEFLAGS.
Move < from apply-patch to invocations.
Ben Pfaff [Wed, 6 Apr 2005 18:47:26 +0000 (18:47 +0000)]
Only need single 0x90.
Ben Pfaff [Wed, 6 Apr 2005 18:47:14 +0000 (18:47 +0000)]
Always use a custom linker script, to avoid oddities in the default.
Put linker scripts in lib/user.
Eliminate redundant dependency in Makefile.userprog.
Document change.
Ben Pfaff [Wed, 6 Apr 2005 18:44:37 +0000 (18:44 +0000)]
Add `dirs' target.
Simplify and improve.
Ben Pfaff [Tue, 5 Apr 2005 23:56:39 +0000 (23:56 +0000)]
Fix comment.
Ben Pfaff [Fri, 1 Apr 2005 22:12:43 +0000 (22:12 +0000)]
Update to match printf() fix.
Ben Pfaff [Fri, 1 Apr 2005 21:09:03 +0000 (21:09 +0000)]
Add stdio test.
Ben Pfaff [Fri, 1 Apr 2005 21:08:47 +0000 (21:08 +0000)]
Improve test program.
Ben Pfaff [Fri, 1 Apr 2005 21:06:38 +0000 (21:06 +0000)]
Fix parenthesization.
Ben Pfaff [Fri, 1 Apr 2005 21:03:40 +0000 (21:03 +0000)]
Fix more printf() conformance problems.
Ben Pfaff [Fri, 1 Apr 2005 19:31:31 +0000 (19:31 +0000)]
Revert to old version because it doesn't break preprocessor
directives.
Ben Pfaff [Fri, 1 Apr 2005 18:44:07 +0000 (18:44 +0000)]
Make sure PTRDIFF_MIN, PTRDIFF_MAX, and SIZE_MAX have the proper types.
Ben Pfaff [Fri, 1 Apr 2005 18:43:22 +0000 (18:43 +0000)]
127 is a control character.
Ben Pfaff [Fri, 1 Apr 2005 00:12:11 +0000 (00:12 +0000)]
Update.
Ben Pfaff [Fri, 1 Apr 2005 00:11:54 +0000 (00:11 +0000)]
Fix comment.
Ben Pfaff [Fri, 1 Apr 2005 00:10:50 +0000 (00:10 +0000)]
Improve.
Ben Pfaff [Thu, 31 Mar 2005 04:58:27 +0000 (04:58 +0000)]
Move problem 1-2 (join) into project 2 as the "wait" system call.
Update the documentation, solutions, grading scripts, and regression
tests.
In execute_thread(), rephrase the code slightly.
Move process_activate() call from execute_thread() to load() to remove
potential race condition that students and TAs found confusing.
Add memory barrier in process_exit().
Ben Pfaff [Wed, 30 Mar 2005 07:31:07 +0000 (07:31 +0000)]
Update.
Ben Pfaff [Wed, 30 Mar 2005 06:11:53 +0000 (06:11 +0000)]
Update license section.
Ben Pfaff [Wed, 30 Mar 2005 06:11:08 +0000 (06:11 +0000)]
Talk about license in intro to docs.
Ben Pfaff [Wed, 30 Mar 2005 05:17:28 +0000 (05:17 +0000)]
Replace quick_sort() that uses quick sort and O(lg n) space
by sort() that uses heap sort and O(1) space.
Ben Pfaff [Wed, 30 Mar 2005 02:11:12 +0000 (02:11 +0000)]
Reimplement list_sort() iteratively, reducing memory requirements to
O(1).
Remove list_merge().
Ben Pfaff [Tue, 29 Mar 2005 23:45:38 +0000 (23:45 +0000)]
Update.
Ben Pfaff [Tue, 29 Mar 2005 23:45:14 +0000 (23:45 +0000)]
Add printf() test.
Ben Pfaff [Tue, 29 Mar 2005 07:41:20 +0000 (07:41 +0000)]
Update mmap() tests.
Change MAPID_ERROR to MAP_FAILED to be closer to POSIX.
Ben Pfaff [Tue, 29 Mar 2005 07:40:25 +0000 (07:40 +0000)]
Change list_elem from typedef to struct.
Ditto for hash_elem.
Ben Pfaff [Mon, 28 Mar 2005 06:39:38 +0000 (06:39 +0000)]
Add TODOs.
Ben Pfaff [Mon, 28 Mar 2005 06:14:18 +0000 (06:14 +0000)]
Add TODOs.
Ben Pfaff [Thu, 24 Mar 2005 09:01:16 +0000 (09:01 +0000)]
Fix 3 distinct bugs reported by Cristian Cadar.
Ben Pfaff [Thu, 24 Mar 2005 06:37:53 +0000 (06:37 +0000)]
Update mmap, munmap stubs to match new prototypes.
Ben Pfaff [Wed, 23 Mar 2005 23:31:36 +0000 (23:31 +0000)]
Fix handling of `+' and ` ' flags for unsigned conversions in
printf(). Thanks to Cristian Cadar for reporting this bug.
Ben Pfaff [Fri, 18 Mar 2005 17:33:07 +0000 (17:33 +0000)]
Update.
Ben Pfaff [Thu, 17 Mar 2005 18:52:52 +0000 (18:52 +0000)]
When run.out is missing in &grade_test, just return an error that
preparation failed, instead of dying. This can happen legitimately
when a `pintos put' fails.
Ben Pfaff [Thu, 17 Mar 2005 18:23:05 +0000 (18:23 +0000)]
Remove patch no longer needed.
Ben Pfaff [Thu, 10 Mar 2005 19:40:43 +0000 (19:40 +0000)]
Update.
Ben Pfaff [Sat, 5 Mar 2005 20:24:35 +0000 (20:24 +0000)]
More to-do.
Ben Pfaff [Sat, 5 Mar 2005 19:47:28 +0000 (19:47 +0000)]
Crossport 1.2.4.1 to main.
Ben Pfaff [Sat, 5 Mar 2005 19:45:57 +0000 (19:45 +0000)]
Crossport 1.2.4.1 into main.
Ben Pfaff [Sat, 5 Mar 2005 07:34:24 +0000 (07:34 +0000)]
Update.
Ben Pfaff [Sat, 5 Mar 2005 07:33:56 +0000 (07:33 +0000)]
Make mmap use segment IDs.
Ben Pfaff [Sat, 5 Mar 2005 07:14:52 +0000 (07:14 +0000)]
Fix menu.
Ben Pfaff [Sat, 5 Mar 2005 05:33:37 +0000 (05:33 +0000)]
Update.
Ben Pfaff [Sat, 5 Mar 2005 05:33:07 +0000 (05:33 +0000)]
Comment.
Ben Pfaff [Sat, 5 Mar 2005 05:31:47 +0000 (05:31 +0000)]
Update documentation.
Ben Pfaff [Sat, 5 Mar 2005 05:21:27 +0000 (05:21 +0000)]
More to do.
Ben Pfaff [Fri, 25 Feb 2005 07:46:58 +0000 (07:46 +0000)]
Update.
Ben Pfaff [Thu, 24 Feb 2005 22:23:50 +0000 (22:23 +0000)]
active_pd() should return a virtual address. Thanks to Guy Isely
<guyi@stanford.edu> for reporting this bug.
Ben Pfaff [Tue, 22 Feb 2005 20:55:13 +0000 (20:55 +0000)]
Don't consider zero-size disks to exist.
(Crossport from win0405.)
Ben Pfaff [Tue, 22 Feb 2005 04:39:52 +0000 (04:39 +0000)]
Suggest a line limit of 79 characters.
Ben Pfaff [Sat, 12 Feb 2005 06:23:35 +0000 (06:23 +0000)]
Use TIMER_FREQ of 19 for grading priority-fifo.
Ben Pfaff [Sat, 12 Feb 2005 06:22:41 +0000 (06:22 +0000)]
Specify how we'll grade problem 1-1.
Ben Pfaff [Sat, 12 Feb 2005 06:22:26 +0000 (06:22 +0000)]
Update.
Ben Pfaff [Fri, 11 Feb 2005 03:49:41 +0000 (03:49 +0000)]
Fix randomization patches to work with revised bitmap code.
Ben Pfaff [Wed, 9 Feb 2005 21:21:35 +0000 (21:21 +0000)]
Update.
Ben Pfaff [Wed, 9 Feb 2005 06:07:36 +0000 (06:07 +0000)]
Fix typo.
Ben Pfaff [Tue, 8 Feb 2005 18:27:26 +0000 (18:27 +0000)]
Free file in file_close().
Ben Pfaff [Mon, 7 Feb 2005 05:56:04 +0000 (05:56 +0000)]
Get rid of THREAD_JOIN_IMPLEMENTED by adding thread_join() stub.
Also add stub implementations of thread_get_priority() and
thread_set_priority().
Ben Pfaff [Mon, 7 Feb 2005 05:52:50 +0000 (05:52 +0000)]
Increase default timeout to 15 seconds.
Ben Pfaff [Wed, 2 Feb 2005 00:19:04 +0000 (00:19 +0000)]
Update.
Ben Pfaff [Sat, 29 Jan 2005 06:50:57 +0000 (06:50 +0000)]
Remove .cvsignore from build directories; put `build' in higher level
.cvsignore instead.
Ben Pfaff [Tue, 25 Jan 2005 20:51:43 +0000 (20:51 +0000)]
Fix typo.
Ben Pfaff [Tue, 25 Jan 2005 20:50:29 +0000 (20:50 +0000)]
Be smarter about dealing with make failures.
Ben Pfaff [Tue, 25 Jan 2005 18:13:20 +0000 (18:13 +0000)]
Fix runaway bochs, pintos processes on time-outs.
Ben Pfaff [Sat, 22 Jan 2005 19:27:20 +0000 (19:27 +0000)]
Clarify that joinability is not inherited.
Ben Pfaff [Fri, 21 Jan 2005 22:24:31 +0000 (22:24 +0000)]
Comment.
Ben Pfaff [Fri, 21 Jan 2005 22:17:37 +0000 (22:17 +0000)]
Set up a frame pointer on interrupt entry, to improve backtraces of
system calls, page faults, etc., whether they come from user space or
the kernel.
Get rid of intr-stubs.pl, replacing it by equivalent all-assembler + C
preprocessor code.
Ben Pfaff [Fri, 21 Jan 2005 22:15:20 +0000 (22:15 +0000)]
Ignore test directories.
Ben Pfaff [Fri, 21 Jan 2005 22:14:41 +0000 (22:14 +0000)]
syscall-stub.S is gone; don't talk about it.
Ben Pfaff [Fri, 21 Jan 2005 22:12:48 +0000 (22:12 +0000)]
syscall-stub.h is gone; don't #include it.
Ben Pfaff [Thu, 20 Jan 2005 07:35:50 +0000 (07:35 +0000)]
Improve debuggability by adding .func/.endfunc around functions.
Ben Pfaff [Thu, 20 Jan 2005 07:31:25 +0000 (07:31 +0000)]
Improve debuggability by eliminating system call stub in separate
assembly file. Instead, implement system call stubs in inline
assembly.
Ben Pfaff [Thu, 20 Jan 2005 05:16:26 +0000 (05:16 +0000)]
Fix quoting.
Ben Pfaff [Thu, 20 Jan 2005 05:16:03 +0000 (05:16 +0000)]
Fix quoting.
Ben Pfaff [Thu, 20 Jan 2005 00:42:59 +0000 (00:42 +0000)]
Remove more or less meaningless comment.
Ben Pfaff [Wed, 19 Jan 2005 23:00:07 +0000 (23:00 +0000)]
Fix race condition in process loading.
Ben Pfaff [Wed, 19 Jan 2005 22:47:42 +0000 (22:47 +0000)]
Print a message if the default target is used.
Ben Pfaff [Wed, 19 Jan 2005 18:39:39 +0000 (18:39 +0000)]
If the kernel image gets too big, "cmp ebx, KERNEL_LOAD_PAGES*8 + 1"
assembles into 3 more bytes, which causes the image to be too big.
This reduces the length of the panic message to compensate.
Ben Pfaff [Tue, 18 Jan 2005 18:11:11 +0000 (18:11 +0000)]
Need to turn off interrupts again after calling into BIOS.
Ben Pfaff [Tue, 18 Jan 2005 17:26:47 +0000 (17:26 +0000)]
In all the variants of the basic test for part 1-1, release the lock
when we're done with it. This shouldn't be necessary, but not
releasing the lock is a corner case that we don't necessarily want the
students to have to handle.
Ben Pfaff [Fri, 14 Jan 2005 08:23:43 +0000 (08:23 +0000)]
When a Pintos run times out, report the load average.
Ben Pfaff [Fri, 14 Jan 2005 07:59:41 +0000 (07:59 +0000)]
Priority change clarification (problem 1-3).
Ben Pfaff [Fri, 14 Jan 2005 07:28:29 +0000 (07:28 +0000)]
Fix bogus return value from `pintos' utility when calling Bochs
and deal with utilities that expected this behavior.
Ben Pfaff [Fri, 14 Jan 2005 05:43:25 +0000 (05:43 +0000)]
Expect proper result from `pintos get'.