pintos-anon
17 years agoAdd a test for P1 that checks that multiple threads can properly wake
Ben Pfaff [Thu, 18 May 2006 02:55:09 +0000 (02:55 +0000)]
Add a test for P1 that checks that multiple threads can properly wake
up at the same clock tick.

17 years agoAdd another test that checks priority scheduling in the case of
Ben Pfaff [Wed, 17 May 2006 22:56:20 +0000 (22:56 +0000)]
Add another test that checks priority scheduling in the case of
priority donation to a blocked thread.
Idea and code by Godmar Back.

17 years agoUpdate backtrace to match current format.
Ben Pfaff [Wed, 17 May 2006 22:31:43 +0000 (22:31 +0000)]
Update backtrace to match current format.

17 years agoAdd another test that locks & unlocks in FIFO order instead of stack
Ben Pfaff [Wed, 17 May 2006 22:07:27 +0000 (22:07 +0000)]
Add another test that locks & unlocks in FIFO order instead of stack
order, to catch more bugs.
Idea and code by Godmar Back.

17 years agoIgnore bochsout.txt, bochsrc.txt.
Ben Pfaff [Wed, 17 May 2006 22:03:43 +0000 (22:03 +0000)]
Ignore bochsout.txt, bochsrc.txt.

17 years agoIgnore p[1-4] directories.
Ben Pfaff [Wed, 17 May 2006 22:00:25 +0000 (22:00 +0000)]
Ignore p[1-4] directories.

17 years agoFix typo.
Ben Pfaff [Wed, 17 May 2006 21:51:50 +0000 (21:51 +0000)]
Fix typo.

17 years agoGive backtrace program ability to take multiple binary file arguments.
Ben Pfaff [Wed, 17 May 2006 17:00:36 +0000 (17:00 +0000)]
Give backtrace program ability to take multiple binary file arguments.
Thanks to Godmar Back for suggestion.

17 years agoBoy I just can't get anything right this morning
Ben Pfaff [Wed, 17 May 2006 15:11:23 +0000 (15:11 +0000)]
Boy I just can't get anything right this morning
...should be fixed now.

17 years agoOops--added syscall before I was ready.
Ben Pfaff [Wed, 17 May 2006 15:03:53 +0000 (15:03 +0000)]
Oops--added syscall before I was ready.

17 years agoImprove comments.
Ben Pfaff [Wed, 17 May 2006 15:03:21 +0000 (15:03 +0000)]
Improve comments.

17 years agoFully capitalize SYS_* syscall enum names.
Ben Pfaff [Wed, 17 May 2006 15:00:25 +0000 (15:00 +0000)]
Fully capitalize SYS_* syscall enum names.

17 years agoUse enum instead of macros for system call numbers,
Ben Pfaff [Tue, 16 May 2006 21:03:28 +0000 (21:03 +0000)]
Use enum instead of macros for system call numbers,
to make it easier to insert new system calls.
Also, comment on what projects need what sysscalls.

17 years agoRename "segment table" to "supplemental page table".
Ben Pfaff [Tue, 16 May 2006 20:46:06 +0000 (20:46 +0000)]
Rename "segment table" to "supplemental page table".

17 years agoNow that qemu is available on Solaris, don't talk about it being
Ben Pfaff [Tue, 16 May 2006 19:17:57 +0000 (19:17 +0000)]
Now that qemu is available on Solaris, don't talk about it being
Linux-only.

17 years agoReplace get_user(), put_user() routines by versions that don't do
Ben Pfaff [Tue, 16 May 2006 16:13:55 +0000 (16:13 +0000)]
Replace get_user(), put_user() routines by versions that don't do
"copying", which scares off students because they think of copying as
inefficient.

17 years agoDon't refer to user memory access as "copying". Some of the students
Ben Pfaff [Tue, 16 May 2006 16:08:39 +0000 (16:08 +0000)]
Don't refer to user memory access as "copying".  Some of the students
don't see it that way.

18 years agoProofreading.
Ben Pfaff [Sun, 23 Apr 2006 18:06:00 +0000 (18:06 +0000)]
Proofreading.

18 years agoMajor revisions to documentation.
Ben Pfaff [Thu, 20 Apr 2006 22:56:54 +0000 (22:56 +0000)]
Major revisions to documentation.
Rewrite VM assignment entirely, adding implementation order and
terminology suggested by Godmar Back.
Make the terminology used elsewhere agree.
Rename "Tour" to "Reference Guide" and move to appendix.
Add "Virtual Addresses" and "Page Tables" sections to reference guide.
Rename "References" to "Bibliography" (to avoid confusion) and move to
end of documentation.
Get rid of option to eagerly load partial pages.
Get rid of fullpage.lds linker script, so rename the normal one from
normal.lds to user.lds.
Break mmu.h into vaddr.h and pte.h.
Add "mcat" to examples as a simpler example of mmap.

NB: Any webpages that reference chapters in the documentation will
need to be updated, because the chapters have been reordered.

18 years agoDon't pass "-nics 0" to qemu, because this option name has changed
Ben Pfaff [Thu, 20 Apr 2006 22:46:07 +0000 (22:46 +0000)]
Don't pass "-nics 0" to qemu, because this option name has changed
from version to version and it's just not worth it.

18 years agoImprove comments.
Ben Pfaff [Thu, 20 Apr 2006 05:03:50 +0000 (05:03 +0000)]
Improve comments.

18 years agoFix line wrapping.
Ben Pfaff [Thu, 20 Apr 2006 04:34:54 +0000 (04:34 +0000)]
Fix line wrapping.

18 years agoFix comment.
Ben Pfaff [Thu, 20 Apr 2006 03:05:36 +0000 (03:05 +0000)]
Fix comment.

18 years agoImprove comments.
Ben Pfaff [Thu, 20 Apr 2006 01:24:48 +0000 (01:24 +0000)]
Improve comments.

18 years agoTry to make students think about performance of scheduler dispatching.
Ben Pfaff [Thu, 13 Apr 2006 17:55:41 +0000 (17:55 +0000)]
Try to make students think about performance of scheduler dispatching.
Based on suggestion from Godmar Back.
Also, minor wording improvements.

18 years agoImprove wording.
Ben Pfaff [Thu, 13 Apr 2006 17:35:41 +0000 (17:35 +0000)]
Improve wording.

18 years agoExplicitly state that mmap'd files must be lazily loaded.
Ben Pfaff [Tue, 11 Apr 2006 17:03:14 +0000 (17:03 +0000)]
Explicitly state that mmap'd files must be lazily loaded.
Don't suggest to implement executables as a special case of mmap.

18 years agoInvert the priority scheme, so that PRI_MIN is now the lowest priority
Ben Pfaff [Mon, 10 Apr 2006 00:28:22 +0000 (00:28 +0000)]
Invert the priority scheme, so that PRI_MIN is now the lowest priority
and PRI_MAX is now the highest priority.  This should reduce student
confusion (and at the same time subtly frustrate attempts to resubmit
work from previous quarters).

18 years agoThe lock functions don't really need to disable interrupts themselves,
Ben Pfaff [Sun, 9 Apr 2006 20:19:35 +0000 (20:19 +0000)]
The lock functions don't really need to disable interrupts themselves,
since they're protected by the semaphore.
Thanks to Godmar Back for reporting this.

18 years agoIgnore *.info*
Ben Pfaff [Sun, 9 Apr 2006 20:12:50 +0000 (20:12 +0000)]
Ignore *.info*

18 years agoFix typo in comment.
Ben Pfaff [Sun, 9 Apr 2006 20:05:52 +0000 (20:05 +0000)]
Fix typo in comment.

18 years agoFix wrong explanation of sleeping in an interrupt handler.
Ben Pfaff [Sun, 9 Apr 2006 20:01:51 +0000 (20:01 +0000)]
Fix wrong explanation of sleeping in an interrupt handler.
Thanks to Godmar Back for reporting this bug.

18 years agoImprove comment.
Ben Pfaff [Sun, 9 Apr 2006 19:54:42 +0000 (19:54 +0000)]
Improve comment.

18 years agoRemove unnecessary test for switching from null current thread.
Ben Pfaff [Sun, 9 Apr 2006 19:52:03 +0000 (19:52 +0000)]
Remove unnecessary test for switching from null current thread.
Thanks to "Waqar Mohsin" <wmohsin@gmail.com> for reporting this.

18 years agoRevise documentation of debugging tools.
Ben Pfaff [Sun, 9 Apr 2006 04:13:33 +0000 (04:13 +0000)]
Revise documentation of debugging tools.
Integrate Godmar's description of his macros and one of
his sample GDB debugging sessions.
Talk about pintos-gdb.
Talk about debugging triple faults with the Bochs triple-fault patch.

18 years agoBreak load_segment() into two functions for increased clarity.
Ben Pfaff [Sun, 9 Apr 2006 01:27:46 +0000 (01:27 +0000)]
Break load_segment() into two functions for increased clarity.
Don't read anything from disk if p_filesz == 0.
Thanks to Godmar for suggesting these changes.
Also, enforce read-only page protection out-of-the-box.

Fixes for reference solutions to follow.

18 years agoAdd patch to make a triple fault break to the gdb stub if active.
Ben Pfaff [Sat, 8 Apr 2006 20:42:43 +0000 (20:42 +0000)]
Add patch to make a triple fault break to the gdb stub if active.

18 years agoDon't read anything from the disk for a segment with p_filesz == 0.
Ben Pfaff [Sat, 8 Apr 2006 18:34:47 +0000 (18:34 +0000)]
Don't read anything from the disk for a segment with p_filesz == 0.
Thanks to Godmar Back for reporting this bug.

18 years agoStyle.
Ben Pfaff [Sat, 8 Apr 2006 00:23:55 +0000 (00:23 +0000)]
Style.

18 years agoFix for Bochs 2.2.6.
Ben Pfaff [Sat, 8 Apr 2006 00:23:31 +0000 (00:23 +0000)]
Fix for Bochs 2.2.6.
(I think this might actually be a bug in Bochs, though.)

18 years agoFix clock: line in bochsrc.
Ben Pfaff [Fri, 7 Apr 2006 23:17:50 +0000 (23:17 +0000)]
Fix clock: line in bochsrc.

18 years agoUtility for invoking the proper GDB and loading Pintos macros.
Ben Pfaff [Fri, 7 Apr 2006 18:30:09 +0000 (18:30 +0000)]
Utility for invoking the proper GDB and loading Pintos macros.

18 years agoAdd GDB macros written by Godmar Back.
Ben Pfaff [Fri, 7 Apr 2006 18:29:34 +0000 (18:29 +0000)]
Add GDB macros written by Godmar Back.

18 years agoWordsmithing.
Ben Pfaff [Wed, 5 Apr 2006 22:45:50 +0000 (22:45 +0000)]
Wordsmithing.

18 years agoTypo.
Ben Pfaff [Wed, 5 Apr 2006 22:44:11 +0000 (22:44 +0000)]
Typo.

18 years agoClarify that fixed-point.h is a new file in the reference solution.
Ben Pfaff [Wed, 5 Apr 2006 21:17:44 +0000 (21:17 +0000)]
Clarify that fixed-point.h is a new file in the reference solution.
Thanks to Megan Anneke Wachs <wachs@stanford.edu> for the question.

18 years agoComment.
Ben Pfaff [Wed, 5 Apr 2006 20:59:27 +0000 (20:59 +0000)]
Comment.
Thanks to "Vincenzo Di Nicola" <dinicola@stanford.edu> for the question.

18 years agoClarify parallelism requirements.
Ben Pfaff [Wed, 5 Apr 2006 20:34:13 +0000 (20:34 +0000)]
Clarify parallelism requirements.
Thanks to Alicia Chen <achen530@stanford.edu> for the question.

18 years agoAllow PINTOSSIM environment variable to select default simulator.
Ben Pfaff [Wed, 5 Apr 2006 20:30:48 +0000 (20:30 +0000)]
Allow PINTOSSIM environment variable to select default simulator.

18 years agoRemark that ^ is xor.
Ben Pfaff [Wed, 5 Apr 2006 20:11:14 +0000 (20:11 +0000)]
Remark that ^ is xor.
Thanks to Jennifer G <jgee@stanford.edu> for the question.

18 years agoAdd section heading for Debugging User Programs.
Ben Pfaff [Wed, 5 Apr 2006 20:09:13 +0000 (20:09 +0000)]
Add section heading for Debugging User Programs.
Thanks to "Huey Kwik" <kwik@stanford.edu> for the question.

18 years agoClarify directive not to modify file system.
Ben Pfaff [Wed, 5 Apr 2006 20:08:06 +0000 (20:08 +0000)]
Clarify directive not to modify file system.
Thanks to "JaJ" <joshi83@stanford.edu> for the question.

18 years agoClarify comment.
Ben Pfaff [Wed, 5 Apr 2006 20:02:21 +0000 (20:02 +0000)]
Clarify comment.
Thanks to Nathan Marz <nathanm@stanford.edu> for the question.

18 years agoClarify need for virt-to-phys translation table.
Ben Pfaff [Wed, 5 Apr 2006 19:56:02 +0000 (19:56 +0000)]
Clarify need for virt-to-phys translation table.
Thanks to Nico R Benitez <nicorb@stanford.edu> for the question.

18 years agoMake it clear that the tour is not soon forthcoming.
Ben Pfaff [Wed, 5 Apr 2006 19:45:37 +0000 (19:45 +0000)]
Make it clear that the tour is not soon forthcoming.
Thanks to "M Payne" <m@m.com> for the question.

18 years agoClarify how termination treats file descriptors.
Ben Pfaff [Wed, 5 Apr 2006 19:43:13 +0000 (19:43 +0000)]
Clarify how termination treats file descriptors.
Thanks to Nathan Marz <nathanm@stanford.edu> for the question.

18 years agoClarify page fault handler for get/put_user().
Ben Pfaff [Wed, 5 Apr 2006 19:36:53 +0000 (19:36 +0000)]
Clarify page fault handler for get/put_user().
Thanks to Poornima Vijayashanker <pv6@stanford.edu> for question.

18 years agoWarn if timeout used with debugger.
Ben Pfaff [Wed, 5 Apr 2006 19:33:33 +0000 (19:33 +0000)]
Warn if timeout used with debugger.
Thanks to Alicia Chen <achen530@stanford.edu> for question.

18 years agoMake explicit that open doesn't return fd 0 or 1.
Ben Pfaff [Wed, 5 Apr 2006 19:29:30 +0000 (19:29 +0000)]
Make explicit that open doesn't return fd 0 or 1.
Make independence of fds across processes explicit.
Thanks to Ryan Seth Propper <rpropper@stanford.edu> for question.

18 years agoAdd comment to explain why we don't free initial_thread.
Ben Pfaff [Wed, 5 Apr 2006 19:25:49 +0000 (19:25 +0000)]
Add comment to explain why we don't free initial_thread.
Thanks to Sunit Pal <sunit@stanford.edu> for the question.

18 years agoAdd references to tour of pintos.
Ben Pfaff [Wed, 5 Apr 2006 19:22:43 +0000 (19:22 +0000)]
Add references to tour of pintos.

18 years agoRename putchar_unlocked() to putchar_have_lock() to avoid GCC warning.
Ben Pfaff [Wed, 5 Apr 2006 18:02:49 +0000 (18:02 +0000)]
Rename putchar_unlocked() to putchar_have_lock() to avoid GCC warning.

18 years agoExplain new patches.
Ben Pfaff [Wed, 5 Apr 2006 17:59:30 +0000 (17:59 +0000)]
Explain new patches.

18 years agoNow it actually works.
Ben Pfaff [Mon, 3 Apr 2006 23:51:21 +0000 (23:51 +0000)]
Now it actually works.

18 years agoStupid me.
Ben Pfaff [Mon, 3 Apr 2006 23:31:12 +0000 (23:31 +0000)]
Stupid me.

18 years agoSolaris patch.
Ben Pfaff [Mon, 3 Apr 2006 23:09:39 +0000 (23:09 +0000)]
Solaris patch.

18 years agoMake it more robust.
Ben Pfaff [Mon, 3 Apr 2006 23:09:28 +0000 (23:09 +0000)]
Make it more robust.
Apply Solaris patch, but only on Solaris.

18 years agoAdd another necessary patch.
Ben Pfaff [Mon, 3 Apr 2006 22:16:07 +0000 (22:16 +0000)]
Add another necessary patch.

18 years agoReverse patches (oops).
Ben Pfaff [Mon, 3 Apr 2006 22:05:37 +0000 (22:05 +0000)]
Reverse patches (oops).

18 years agoFix typos.
Ben Pfaff [Mon, 3 Apr 2006 22:04:44 +0000 (22:04 +0000)]
Fix typos.

18 years agoFirst stab at Bochs 2.2.6 upgrade (not yet tested).
Ben Pfaff [Mon, 3 Apr 2006 21:27:09 +0000 (21:27 +0000)]
First stab at Bochs 2.2.6 upgrade (not yet tested).

18 years agoIgnore setitimer-helper.
Ben Pfaff [Mon, 3 Apr 2006 21:24:09 +0000 (21:24 +0000)]
Ignore setitimer-helper.

18 years agofixed typo in mmap example
Godmar Back [Sun, 2 Apr 2006 00:15:15 +0000 (00:15 +0000)]
fixed typo in mmap example

18 years agofixed typo.
Godmar Back [Fri, 17 Mar 2006 02:33:34 +0000 (02:33 +0000)]
fixed typo.

18 years agoMake timeouts based on CPU time.
Ben Pfaff [Wed, 15 Mar 2006 22:15:40 +0000 (22:15 +0000)]
Make timeouts based on CPU time.

18 years agoAdd question.
Ben Pfaff [Wed, 15 Mar 2006 01:31:51 +0000 (01:31 +0000)]
Add question.

18 years agoTest commit.
Ben Pfaff [Tue, 14 Mar 2006 22:43:44 +0000 (22:43 +0000)]
Test commit.

18 years agoFix type of sector_idx in inode_write_at().
Ben Pfaff [Thu, 9 Mar 2006 05:59:39 +0000 (05:59 +0000)]
Fix type of sector_idx in inode_write_at().
Thanks to Ryan Seth Propper <rpropper@stanford.edu> for reporting this
bug.

18 years ago-u option should be -ul.
Ben Pfaff [Mon, 6 Mar 2006 17:14:40 +0000 (17:14 +0000)]
-u option should be -ul.
Thanks to Josh Wiseman <joshwise@stanford.edu> for reporting this bug.

18 years agoPHYS_ADDR should be PHYS_BASE.
Ben Pfaff [Thu, 2 Feb 2006 14:47:50 +0000 (14:47 +0000)]
PHYS_ADDR should be PHYS_BASE.
Thanks to "Ryan Seth Propper" <rpropper@stanford.edu> for pointing it
out.

18 years agoAttempting to pass command-line arguments before they've been
Ben Pfaff [Wed, 1 Feb 2006 20:58:50 +0000 (20:58 +0000)]
Attempting to pass command-line arguments before they've been
implemented will fail.
Thanks to Josh Wiseman for pointing this out.

18 years agoClarify when enable_mlfqs gets set.
Ben Pfaff [Sun, 29 Jan 2006 21:55:08 +0000 (21:55 +0000)]
Clarify when enable_mlfqs gets set.
Thanks to "Yi Lang Mok" <yilangmok@stanford.edu> and others for
pointing this out.

18 years agoClarify when enable_mlfqs gets set.
Ben Pfaff [Sun, 29 Jan 2006 21:54:44 +0000 (21:54 +0000)]
Clarify when enable_mlfqs gets set.
Thanks to "Yi Lang Mok" <yilangmok@stanford.edu> and others for
pointing this out.

18 years agoUpdate Intel architecture guide references to latest.
Ben Pfaff [Sun, 29 Jan 2006 21:32:55 +0000 (21:32 +0000)]
Update Intel architecture guide references to latest.
Thanks to Josh Wiseman <joshwise@stanford.edu> and Godmar Back
<godmar@gmail.com> for pointing this out.

18 years agoAdd examples of how to iterate and remove elements from a list.
Ben Pfaff [Wed, 25 Jan 2006 22:10:19 +0000 (22:10 +0000)]
Add examples of how to iterate and remove elements from a list.
Pointed out by Ben Sapp.

18 years agoClean up temp files on signal.
Ben Pfaff [Thu, 12 Jan 2006 17:04:09 +0000 (17:04 +0000)]
Clean up temp files on signal.

18 years agoFix priority donation example.
Ben Pfaff [Tue, 10 Jan 2006 22:56:29 +0000 (22:56 +0000)]
Fix priority donation example.
From Godmar Back's TA.

18 years agoTypo fixes found by Godmar Back's TA.
Ben Pfaff [Tue, 10 Jan 2006 00:14:14 +0000 (00:14 +0000)]
Typo fixes found by Godmar Back's TA.

18 years agoAdd "panic: action=fatal" to bochsrc.txt to avoid a potentially
Ben Pfaff [Tue, 10 Jan 2006 00:13:01 +0000 (00:13 +0000)]
Add "panic: action=fatal" to bochsrc.txt to avoid a potentially
confusing dialogue on control+c or timeout.
Via Godmar Back.

18 years agoFix comment.
Ben Pfaff [Sun, 8 Jan 2006 20:21:31 +0000 (20:21 +0000)]
Fix comment.

18 years agoRemove -Wdeclaration-after-statement because it's not supported by GCC
Ben Pfaff [Sun, 8 Jan 2006 20:09:25 +0000 (20:09 +0000)]
Remove -Wdeclaration-after-statement because it's not supported by GCC
(GCC 3.4) on the elaines.  Ugh.

18 years agoAdd explanatory comments to vm tests.
Ben Pfaff [Sun, 8 Jan 2006 19:00:20 +0000 (19:00 +0000)]
Add explanatory comments to vm tests.

18 years agoAdd explanatory comments to filesys tests.
Ben Pfaff [Sun, 8 Jan 2006 18:59:11 +0000 (18:59 +0000)]
Add explanatory comments to filesys tests.

18 years agoAdd explanatory comments to vm tests.
Ben Pfaff [Sun, 8 Jan 2006 18:02:41 +0000 (18:02 +0000)]
Add explanatory comments to vm tests.

18 years agoFormatting.
Ben Pfaff [Sun, 8 Jan 2006 03:35:04 +0000 (03:35 +0000)]
Formatting.

18 years agoAdd explanatory comments to vm tests.
Ben Pfaff [Sun, 8 Jan 2006 03:24:27 +0000 (03:24 +0000)]
Add explanatory comments to vm tests.

18 years agoAdd explanatory comments to userprog tests.
Ben Pfaff [Sun, 8 Jan 2006 01:08:06 +0000 (01:08 +0000)]
Add explanatory comments to userprog tests.

18 years agoRemove file that was not used.
Ben Pfaff [Sun, 8 Jan 2006 01:07:21 +0000 (01:07 +0000)]
Remove file that was not used.

18 years agoAdd explanatory comments to threads tests.
Ben Pfaff [Sat, 7 Jan 2006 02:08:18 +0000 (02:08 +0000)]
Add explanatory comments to threads tests.

18 years agoElaborate on how to get the user program's stack pointer.
Ben Pfaff [Wed, 4 Jan 2006 22:45:01 +0000 (22:45 +0000)]
Elaborate on how to get the user program's stack pointer.
Suggested by Godmar Back.