- 21 Oct, 2015 1 commit
-
-
Curd Becker authored
-
- 20 Oct, 2015 7 commits
-
-
Curd Becker authored
-
Curd Becker authored
-
Curd Becker authored
-
Curd Becker authored
PINTOSPATH should always point to the pintos src folder
-
Curd Becker authored
fixed qemu path and added some kind of autodetection as multiple platform emulators are available on ubuntu 14.04
-
Curd Becker authored
-
Curd Becker authored
-
- 18 Mar, 2014 2 commits
-
-
Pablo de Oliveira authored
Recent clang version, detect attemps to dereference or call NULL, and eliminate the code. ../../tests/userprog/bad-read.c:11:9: warning: indirection of non-volatile null pointer will be deleted, not trap [-Wnull-dereference] *(int *) NULL); ^~~~~~~~~~~~~ This patchs adds the volatile modifier as necessary. It allows to use clang to compile the tests.
-
Pablo de Oliveira authored
On QEMU emulator version 1.7.0, the previous shutdown sequence (writing `shutdown` to 0x8900), is not working properly. This patch adds support for the ACPI shutdown code which works on qemu 1.7.0 and preserves the old sequence for compatibility.
-
- 02 Sep, 2012 1 commit
-
-
Ben Pfaff authored
Matthew Pirocchi <mrpirocchi@email.wm.edu>, via John Ousterhout <ouster@cs.stanford.edu> reports that this fixes a problem on his system.
-
- 01 Mar, 2012 1 commit
-
-
Benedikt Huber authored
Fix gcc inline assembler operand constraints for syscall -- as pushl modifies %esp, variable operands must not reference the stack pointer. Without this patch, gcc-4.6.1-9ubuntu3 miscompiles the read syscall to: 000000b6 <read>: b6: ff 74 24 0c pushl 0xc(%esp) ba: ff 74 24 08 pushl 0x8(%esp) ; [!] be: ff 74 24 04 pushl 0x4(%esp) ; [!] ...
-
- 25 Aug, 2011 2 commits
-
-
Russ Ross authored
When compiled according to the instructions, bochs fails to load the project 1 kernel. This seems to be due to the latest gcc using an instruction that bochs is not compiled to support. Adding the '--enable-cpu-level=6' configure option to Bochs, as this commit does, seems to work.
-
Russ Ross authored
bochs-2.2.6 failed to compile with the latest version of gcc. This commit fixes the problem
-
- 10 Mar, 2011 1 commit
-
-
Ben Pfaff authored
Reported by a student of Borja Sotomayor <borja@cs.uchicago.edu>.
-
- 12 Feb, 2011 3 commits
- 16 Dec, 2010 1 commit
-
-
Ben Pfaff authored
When the slave side of the pty is closed, the "read" system call returns EIO. In this situation, squish-pty failed to flush any output that it already had in its buffer (up to 16 bytes) to stdout. This could cause the "Powering off..." message printed by Pintos just before exiting to be missing from the output. This usually didn't happen, because there are two other exit paths from the relay() function that does most of squish-pty's work. The most common exit path was (evidently) the one which detected that the child process had died, which did properly flush the buffer. (The third path was wrong too, and this patch fixes that one too.) This patch fixes the problem by using a single exit path from relay() that always reads any remaining input from the pty (if it is open) and flushes it to stdout. Reported by Borja Sotomayor <borja@cs.uchicago.edu>.
-
- 11 Dec, 2010 1 commit
-
-
Ben Pfaff authored
Reported by Borja Sotomayor <borja@cs.uchicago.edu>.
-
- 05 May, 2010 1 commit
-
-
Joseph Huang authored
-
- 01 May, 2010 1 commit
-
-
Ben Pfaff authored
Some versions of ld accept /dev/null as a valid input file. Others will not. The latter versions will give false negatives for --buil-id support, which breaks linking of Pintos userspace programs. So use a different method, that I hope will be more reliable, to detect --build-id support. Reported by Joseph Huang <jdhuang@stanford.edu>.
-
- 26 Jan, 2010 2 commits
-
-
Ben Pfaff authored
Here, $buf might have some data in it that has not yet been printed, but we were discarding it (and trying to read more) without printing it. (In Perl, "do" ensures that the inner block runs at least once; without "do" the condition is evaluated first.)
-
Ben Pfaff authored
Reported by Nathaniel Hardison <hardison@stanford.edu>.
-
- 07 Jan, 2010 1 commit
-
-
Ben Pfaff authored
Thanks to David Mazieres for reporting the problem and the fix.
-
- 14 Nov, 2009 1 commit
-
-
Ben Pfaff authored
Thanks to Godmar Back for reporting the problem and for the fix.
-
- 24 Oct, 2009 1 commit
-
-
Ben Pfaff authored
Rounding to nearest raises a host of issues that we don't want students to worry about. Suggested by Godmar Back.
-
- 20 Jan, 2009 1 commit
-
-
Ben Pfaff authored
The compiler can't optimize out the load of "ticks" here because it can't look into intr_disable() and intr_set_level() and know that they don't modify "ticks". Thanks to Martin <mfleener@stanford.edu> for pointing this out.
-
- 22 Dec, 2008 1 commit
-
-
Ben Pfaff authored
We cannot expect that we know in detail ever interrupt that can occur on real hardware, so we must cope with exceptional cases a little better.
-
- 04 Dec, 2008 3 commits
-
-
Ben Pfaff authored
The Pintos loader writes status to the serial port as well as the VGA console, but this doesn't work out so well on at least some real hardware when nothing is connected to the serial port: each character can take a second or so to display because the BIOS waits for a serial timeout each time. So, on the first serial timeout, replace the "int $0x14" call by a pair of no-ops. The rest of the changes are part of the struggle not to exceed the maximum loader size.
-
Ben Pfaff authored
Pintos used to contain a loader and I/O functions derived from MIT code, but this has now been entirely eliminated, so there is no longer any reason to retain the MIT copyright notice or license.
-
Ben Pfaff authored
The contents of these functions was derived from code used in the Massachusetts Institute of Technology's 6.828 advanced operating systems course. I deleted the contents of these functions and then rewrote them from scratch without reference to the earlier code, working only from the function comments (which I wrote earlier).
-
- 14 Nov, 2008 2 commits
-
-
Godmar Back authored
pinning is necessary added FAQ for why stack growth may cause page faults above stack pointer minor edits to other sections
-
-
- 13 Nov, 2008 1 commit
-
-
Godmar Back authored
added loadusersymbols to load user symbols from file updated documentation to reflect behavior of qemu's and bochs's gdbstubs
-
- 12 Nov, 2008 1 commit
-
-
Ben Pfaff authored
This is in preparation for introducing new block devices, in particular USB storage-based block devices so that Pintos can boot from USB memory sticks on notebook and desktop PCs. This block layer was inspired by one from Anthony Romano <chz@vt.edu> but it has been extensively (perhaps entirely) rewritten. Thus, bugs must certainly be blamed on the committer.
-
- 10 Nov, 2008 4 commits
-
-
Ben Pfaff authored
We now ignore pointers that are not null but still clearly wild. We could check that there's really a valid PDE and PTE (I think Linux does this) but it would take more code and be ugly.
-
Ben Pfaff authored
Based on code from Anthony Romano <chz@vt.edu> but with extensive changes.
-
Ben Pfaff authored
This makes it conform to the Pintos convention that a global symbol name begin with its module's name.
-
Ben Pfaff authored
This global variable was not named according to the convention that a global variable name start with its module name. Furthermore, its usage was somewhat scattered across the source tree. This commit introduces new functions shutdown() and shutdown_configure() to improve the situation.
-