pintos-anon
18 years agoPoint out that the tarball does not include the doc directory.
Ben Pfaff [Sun, 11 Jun 2006 16:53:09 +0000 (16:53 +0000)]
Point out that the tarball does not include the doc directory.
From chris@seberino.org.

18 years agoCapitalize QEMU properly.
Ben Pfaff [Sat, 10 Jun 2006 20:09:25 +0000 (20:09 +0000)]
Capitalize QEMU properly.
From chris@seberino.org.

18 years agoadded bad-jump/read/write bad-jump2/read2/write2 to check that process
Godmar Back [Wed, 7 Jun 2006 22:09:19 +0000 (22:09 +0000)]
added bad-jump/read/write bad-jump2/read2/write2 to check that process
that attempt to execute/read/write NULL or a kernel address, resp., are
properly terminated.

18 years agodefined 'test_name' for msg()/vmsg() to work properly
Godmar Back [Tue, 6 Jun 2006 12:48:38 +0000 (12:48 +0000)]
defined 'test_name' for msg()/vmsg() to work properly

18 years agoMake quoting consistent.
Ben Pfaff [Fri, 2 Jun 2006 22:13:31 +0000 (22:13 +0000)]
Make quoting consistent.

18 years agoPoint to installation instructions.
Ben Pfaff [Fri, 2 Jun 2006 22:10:36 +0000 (22:10 +0000)]
Point to installation instructions.

18 years agoReplace GSX Server support with VMware Player support.
Ben Pfaff [Fri, 2 Jun 2006 22:06:51 +0000 (22:06 +0000)]
Replace GSX Server support with VMware Player support.
Fully support serial terminal with Player.

18 years agoUpdate.
Ben Pfaff [Thu, 1 Jun 2006 22:19:51 +0000 (22:19 +0000)]
Update.

18 years agoAdd installation chapter to manual. Remove now-redundant files from
Ben Pfaff [Thu, 1 Jun 2006 22:17:39 +0000 (22:17 +0000)]
Add installation chapter to manual.  Remove now-redundant files from
src/utils, src/misc.

Update copyright years in license.  Add license to manual.

18 years agoFix typos.
Ben Pfaff [Thu, 1 Jun 2006 21:54:30 +0000 (21:54 +0000)]
Fix typos.

18 years agoAdd support for "keyboard" input over the serial port.
Ben Pfaff [Thu, 1 Jun 2006 20:11:00 +0000 (20:11 +0000)]
Add support for "keyboard" input over the serial port.
Revise documentation accordingly.
Revise reference solution accordingly.
Change real Return key to produce \r, to match what is received on
serial port.
Update shell example program to expect \r at end of file.
Modify testing makefiles to supply /dev/null as input.
Add squish-pty help program to deal with Bochs,
and modify "pintos" to use it.

18 years agoDon't put white space before call to $(eval) because that makes GNU
Ben Pfaff [Thu, 1 Jun 2006 20:07:45 +0000 (20:07 +0000)]
Don't put white space before call to $(eval) because that makes GNU
make 3.80 on vine barf.

18 years agoIncrease timeout for MLFQS tests to 480 seconds, which is necessary
Ben Pfaff [Thu, 1 Jun 2006 15:03:40 +0000 (15:03 +0000)]
Increase timeout for MLFQS tests to 480 seconds, which is necessary
sometimes.

18 years agoAdd utils to CLEAN_SUBDIRS.
Ben Pfaff [Wed, 31 May 2006 18:26:36 +0000 (18:26 +0000)]
Add utils to CLEAN_SUBDIRS.

18 years agoFix two bugs:
Ben Pfaff [Tue, 30 May 2006 21:35:27 +0000 (21:35 +0000)]
Fix two bugs:
- If -s used with GSX, really don't provide serial port.
- Call File::Temp::cleanup() inside eval to cope with old versions
  of File::Temp that didn't have cleanup.

18 years agoFix stupidity in last check-in.
Ben Pfaff [Tue, 30 May 2006 21:33:10 +0000 (21:33 +0000)]
Fix stupidity in last check-in.

18 years agoAdd patch to support serial terminals under Solaris.
Ben Pfaff [Tue, 30 May 2006 20:27:07 +0000 (20:27 +0000)]
Add patch to support serial terminals under Solaris.

18 years agoAdd priority-donate-lower to rubric.
Ben Pfaff [Tue, 30 May 2006 20:26:03 +0000 (20:26 +0000)]
Add priority-donate-lower to rubric.

18 years agoReduce number of simultaneously waking threads to 3,
Ben Pfaff [Tue, 30 May 2006 20:25:40 +0000 (20:25 +0000)]
Reduce number of simultaneously waking threads to 3,
in lieu of increasing instructions-per-second (ips) for Bochs.

18 years agoWhen using -k, make sure to flush all of the subprocess's output to
Ben Pfaff [Tue, 30 May 2006 20:18:24 +0000 (20:18 +0000)]
When using -k, make sure to flush all of the subprocess's output to
stdout, even after the subprocess has died.

18 years agoMake stdout unbuffered while filtering output.
Ben Pfaff [Tue, 30 May 2006 19:25:32 +0000 (19:25 +0000)]
Make stdout unbuffered while filtering output.

18 years agoComment.
Ben Pfaff [Sat, 27 May 2006 20:57:13 +0000 (20:57 +0000)]
Comment.

18 years agoAdd "-k" option to pintos script. When used, pintos will scan the
Ben Pfaff [Sat, 27 May 2006 20:21:09 +0000 (20:21 +0000)]
Add "-k" option to pintos script.  When used, pintos will scan the
serial output for key words like "Kernel PANIC" and, if found,
terminate the run.  This is useful for making sure that things like
triple faults or recursive panics don't waste a lot of time by finally
terminating only upon a timeout that might be as much as 10 minutes.
Add "-k" to the command line used in the test scripts.

Also, pintos now saves and restores the terminal settings across the
call to the simulator.  This is because qemu turns off local echo and
doesn't restore it if killed by a signal.

18 years agoPut "abort" in "User process abort" in all caps, analogous to "Kernel
Ben Pfaff [Sat, 27 May 2006 20:10:32 +0000 (20:10 +0000)]
Put "abort" in "User process abort" in all caps, analogous to "Kernel
PANIC".

18 years agoDisable networking when running qemu,
Ben Pfaff [Sat, 27 May 2006 16:27:04 +0000 (16:27 +0000)]
Disable networking when running qemu,
to suppress prompt for sudo password (if enabled).

18 years agoAdd file system persistence tests:
Ben Pfaff [Sat, 27 May 2006 00:06:54 +0000 (00:06 +0000)]
Add file system persistence tests:

Change Make.tests to invoke pintos a second time for the extended
filesys tests, and in that run to tar up the file system contents and
copy it out.
Update grading scripts to check the generated tarballs.

Update documentation.

Update documented requirements for remove() of a directory to give
basically the options offered by POSIX, and update the tests to check
for these behaviors.

Remove dir-lsdir test, which no longer made sense given that readdir
is used so heavily in other tests.

Merge dir-mk-vine and dir-rm-vine tests into a single dir-vine test,
which is now much more stringent.

Merge dir-rm-cwd-cd and dir-rm-cwd into a single dir-rm-cwd test,
which is now much more stringent.

Check that a non-empty directory cannot be removed.

Update scoring rubrics.

18 years agoMake the default simulator qemu for project 2...4,
Ben Pfaff [Fri, 26 May 2006 20:59:59 +0000 (20:59 +0000)]
Make the default simulator qemu for project 2...4,
instead of just doing so in tests/Makefile.
Update documentation to match.

18 years agoqemu is much faster than Bochs.
Ben Pfaff [Fri, 26 May 2006 19:50:57 +0000 (19:50 +0000)]
qemu is much faster than Bochs.

18 years agoAdd item.
Ben Pfaff [Fri, 26 May 2006 19:49:12 +0000 (19:49 +0000)]
Add item.

18 years agoDon't delete non-empty directories.
Ben Pfaff [Fri, 26 May 2006 19:48:02 +0000 (19:48 +0000)]
Don't delete non-empty directories.

18 years agoTODO items for solutions.
Ben Pfaff [Fri, 26 May 2006 15:18:07 +0000 (15:18 +0000)]
TODO items for solutions.

18 years agoAdd many items from Godmar's emails that I should have added long ago.
Ben Pfaff [Thu, 25 May 2006 22:16:58 +0000 (22:16 +0000)]
Add many items from Godmar's emails that I should have added long ago.

18 years agoEnclose kernel command line arguments that contain spaces in quotes
Ben Pfaff [Wed, 24 May 2006 20:18:05 +0000 (20:18 +0000)]
Enclose kernel command line arguments that contain spaces in quotes
when printing.

18 years agoAdd idea.
Ben Pfaff [Wed, 24 May 2006 16:13:47 +0000 (16:13 +0000)]
Add idea.

18 years agoAdd EXIT_FAILURE, EXIT_SUCCESS to syscall.h,
Ben Pfaff [Tue, 23 May 2006 16:33:22 +0000 (16:33 +0000)]
Add EXIT_FAILURE, EXIT_SUCCESS to syscall.h,
and use them in the example programs.
Add comments to syscall.h.

18 years agoUpdate.
Ben Pfaff [Tue, 23 May 2006 15:55:38 +0000 (15:55 +0000)]
Update.

18 years agoFile system project updates:
Ben Pfaff [Mon, 22 May 2006 18:47:19 +0000 (18:47 +0000)]
File system project updates:
Require support for . and ...
Add inumber system call, so getcwd can be implemented,
and inode_get_inumber() function.
Implement these features in the reference solution.
Add "pwd" example program and require explanation of it in design
document.
Implement "cd" in shell.
Add -l option to "ls" example program.
Describe interpretation of unusual file names.
Remove filesys_self_test().
Update TODO.

18 years agoAdd test that compiles the examples.
Ben Pfaff [Mon, 22 May 2006 17:52:28 +0000 (17:52 +0000)]
Add test that compiles the examples.

18 years agoWording.
Ben Pfaff [Mon, 22 May 2006 17:51:46 +0000 (17:51 +0000)]
Wording.

18 years agoFix comment style.
Ben Pfaff [Mon, 22 May 2006 01:45:13 +0000 (01:45 +0000)]
Fix comment style.

18 years agoNormalize style of patches to reduce changes later.
Ben Pfaff [Sun, 21 May 2006 23:38:51 +0000 (23:38 +0000)]
Normalize style of patches to reduce changes later.

18 years agoRemove obsolete files.
Ben Pfaff [Sun, 21 May 2006 02:11:51 +0000 (02:11 +0000)]
Remove obsolete files.

18 years agoWordsmithing.
Ben Pfaff [Sat, 20 May 2006 22:43:50 +0000 (22:43 +0000)]
Wordsmithing.

18 years agoWordsmithing.
Ben Pfaff [Sat, 20 May 2006 22:29:26 +0000 (22:29 +0000)]
Wordsmithing.

18 years agoUpdate bibliography.
Ben Pfaff [Sat, 20 May 2006 22:29:16 +0000 (22:29 +0000)]
Update bibliography.

18 years agoWordsmithing.
Ben Pfaff [Sat, 20 May 2006 22:18:36 +0000 (22:18 +0000)]
Wordsmithing.
Document block allocator functions.

18 years agoComment.
Ben Pfaff [Sat, 20 May 2006 22:00:32 +0000 (22:00 +0000)]
Comment.

18 years agoWordsmithing.
Ben Pfaff [Sat, 20 May 2006 21:29:04 +0000 (21:29 +0000)]
Wordsmithing.

18 years agoWordsmithing.
Ben Pfaff [Sat, 20 May 2006 20:45:40 +0000 (20:45 +0000)]
Wordsmithing.

18 years agoComment.
Ben Pfaff [Sat, 20 May 2006 20:01:15 +0000 (20:01 +0000)]
Comment.

18 years agoWordsmithing.
Ben Pfaff [Sat, 20 May 2006 19:56:27 +0000 (19:56 +0000)]
Wordsmithing.
Cite papers on semaphores, monitors.

18 years agoWordsmithing.
Ben Pfaff [Sat, 20 May 2006 17:33:48 +0000 (17:33 +0000)]
Wordsmithing.

18 years agoWordsmithing.
Ben Pfaff [Sat, 20 May 2006 17:27:02 +0000 (17:27 +0000)]
Wordsmithing.

18 years agoWordsmithing.
Ben Pfaff [Sat, 20 May 2006 17:17:25 +0000 (17:17 +0000)]
Wordsmithing.
Update description of main()'s calling order.

18 years agoConsistently spell "file name" and "file system" as two words.
Ben Pfaff [Fri, 19 May 2006 23:41:59 +0000 (23:41 +0000)]
Consistently spell "file name" and "file system" as two words.

18 years agoAdd file_get_inode() for symmetry with dir_get_inode().
Ben Pfaff [Fri, 19 May 2006 20:43:25 +0000 (20:43 +0000)]
Add file_get_inode() for symmetry with dir_get_inode().

18 years agoFix solution.
Ben Pfaff [Fri, 19 May 2006 20:42:24 +0000 (20:42 +0000)]
Fix solution.

18 years agoComments.
Ben Pfaff [Fri, 19 May 2006 20:39:54 +0000 (20:39 +0000)]
Comments.

18 years agoReplace lsdir system call by readdir, isdir system calls,
Ben Pfaff [Fri, 19 May 2006 20:38:50 +0000 (20:38 +0000)]
Replace lsdir system call by readdir, isdir system calls,
which are far less offensive to good taste.
Add dir_get_inode() and dir_readdir() functions.
Remove dir_list(), filesys_list().  The latter was unused.
Update project documentation, solutions, and tests.
Rewrite "ls" example program to use the new interface, and add the
ability to specify a directory name and a "long format" feature.
Add "cd" command to shell.

18 years agoImprove readability.
Ben Pfaff [Fri, 19 May 2006 20:03:10 +0000 (20:03 +0000)]
Improve readability.

18 years agoImprove automatic test failure interpretation by extending backtrace
Ben Pfaff [Fri, 19 May 2006 17:44:13 +0000 (17:44 +0000)]
Improve automatic test failure interpretation by extending backtrace
to the binary that failed.

18 years agoRemove unused variable.
Ben Pfaff [Fri, 19 May 2006 16:50:19 +0000 (16:50 +0000)]
Remove unused variable.

18 years agoIgnore mcat.
Ben Pfaff [Fri, 19 May 2006 14:39:47 +0000 (14:39 +0000)]
Ignore mcat.

18 years agoMake directory interface more like file interface.
Ben Pfaff [Fri, 19 May 2006 04:47:28 +0000 (04:47 +0000)]
Make directory interface more like file interface.
In reference solution, push locking up to inode layer, simplifying
changes to directory code.

18 years agoWording.
Ben Pfaff [Fri, 19 May 2006 03:18:59 +0000 (03:18 +0000)]
Wording.

18 years agoFix menu.
Ben Pfaff [Fri, 19 May 2006 03:17:28 +0000 (03:17 +0000)]
Fix menu.

18 years agoWording.
Ben Pfaff [Fri, 19 May 2006 03:17:09 +0000 (03:17 +0000)]
Wording.

18 years agoFix race in dir_reopen().
Ben Pfaff [Fri, 19 May 2006 02:45:13 +0000 (02:45 +0000)]
Fix race in dir_reopen().
Thanks to Godmar Back for pointing this out (twice).

18 years agoWording.
Ben Pfaff [Thu, 18 May 2006 19:47:22 +0000 (19:47 +0000)]
Wording.

18 years agoWording.
Ben Pfaff [Thu, 18 May 2006 19:47:04 +0000 (19:47 +0000)]
Wording.

18 years agoTest interaction between priority donation and thread_set_priority().
Ben Pfaff [Thu, 18 May 2006 19:37:03 +0000 (19:37 +0000)]
Test interaction between priority donation and thread_set_priority().
Suggestion from Godmar Back.

18 years agoGet rid of obsolete items.
Ben Pfaff [Thu, 18 May 2006 19:08:38 +0000 (19:08 +0000)]
Get rid of obsolete items.

18 years agoFormatting.
Ben Pfaff [Thu, 18 May 2006 19:08:17 +0000 (19:08 +0000)]
Formatting.

18 years agoNot really a race.
Ben Pfaff [Thu, 18 May 2006 19:06:50 +0000 (19:06 +0000)]
Not really a race.

18 years agoRandomize the bits that bitmap_scan() returns, to make student errors
Ben Pfaff [Thu, 18 May 2006 19:02:35 +0000 (19:02 +0000)]
Randomize the bits that bitmap_scan() returns, to make student errors
that assume contiguous memory allocation show up.

18 years agoFix comment typo.
Ben Pfaff [Thu, 18 May 2006 17:08:52 +0000 (17:08 +0000)]
Fix comment typo.

18 years agoAdd test that checks that recent_cpu decays properly for blocked
Ben Pfaff [Thu, 18 May 2006 17:08:41 +0000 (17:08 +0000)]
Add test that checks that recent_cpu decays properly for blocked
threads.
Suggested by Godmar Back.

18 years agoUpdate docs to say that a pointer to an inode should not limit you to
Ben Pfaff [Thu, 18 May 2006 15:54:25 +0000 (15:54 +0000)]
Update docs to say that a pointer to an inode should not limit you to
64 open files.

18 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.

18 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.

18 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.

18 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.

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

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

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

18 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.

18 years agoAdding yield syscall doesn't help significantly,
Ben Pfaff [Wed, 17 May 2006 16:02:11 +0000 (16:02 +0000)]
Adding yield syscall doesn't help significantly,
or at least not as much as using qemu instead of Bochs.

18 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.

18 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.

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

18 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.

18 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.

18 years agoI couldn't find any reproducibility problems with Bochs 2.2.6.
Ben Pfaff [Tue, 16 May 2006 20:59:05 +0000 (20:59 +0000)]
I couldn't find any reproducibility problems with Bochs 2.2.6.

18 years agoFix lack of locking in file system code (!).
Ben Pfaff [Tue, 16 May 2006 20:52:46 +0000 (20:52 +0000)]
Fix lack of locking in file system code (!).
Thanks to Godmar Back for pointing this out.

18 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".

18 years agofile_close needs fs_lock.
Ben Pfaff [Tue, 16 May 2006 20:10:31 +0000 (20:10 +0000)]
file_close needs fs_lock.

18 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.

18 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.

18 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 agoAdd thoughts about USB support.
Ben Pfaff [Mon, 24 Apr 2006 16:21:07 +0000 (16:21 +0000)]
Add thoughts about USB support.