Carnegie Mellon

Computer Science Department |
 |
 |
 |
 |
 |
 |
 |
|
|
|
15-410 Crash Machine
The Crash Machine
The "crash box" is
a PC designed for 15-410 kernel testing. The machine
(CMU asset #101038) contains two 400 MHz Pentium-II Xeon
processors,
512 megabytes of RAM, a floppy drive, and a CD-ROM
(no disk or network).
The boot process runs on only one processor and the
second processor remains inactive unless explicitly
enabled
(see
Wikipedia: Intel APIC Architecture).
The machine also contains a "POST card", a device which
can be (ab)used for low-level kernel debugging
(see
Wikipedia: POST card).
Basically, outb() 's directed to port
0x80 will be displayed in hexadecimal
on the front of the machine.
This particular card has the following features:
- The most recent two bytes of status are displayed.
The most recent byte is on the left, and
the byte before that is on the right. So if you
outb(0x80,0xce) and then later
outb(0x80,0xfa) the display will
read face .
- The card can't accept multiple status bytes in
rapid succession; if you send values too quickly
the card will "catch" only the last. Empirically
it seems to work if 512
inb(0x80) 's
appear between two outb() 's.
- The two buttons on the display allow you to
scroll forward and back through the
outb()
stream. If you hold both of them down for a while
odd things which aren't very useful will happen.
The crash machine is located
in the hallway outside Professor Eckhardt's office,
GHC 4001.
Support for the machine will be provided by
.
COVID-19 Precautions
-
During the COVID-19 pandemic, the crash box should be
accompanied by a container of anti-microbial wipes.
Please wipe the keyboard, power button, and reset button
(and, if you are using it, the CD burner)
before and after using the crash box.
If the supply of anti-microbial wipes has been exhausted,
do not use the crash box,
and contact
.
-
Of course, observe CMU's in-building conduct rules.
The hallway is not a private office,
so you must be masked any time you are there.
You should not eat or drink while using the crash box.
You should maintain an appropriate distance from other
people while you are in the hallway.
While you are using the crash box,
nobody should be within six feet of you unless
that person is part of your household.
These precautions are currently mandatory:
any observed failure to carry them
out is likely to result in the crash box being
locked away,
and CMU disciplinary procedures are also a possibility.
Please be responsible,
because this is not a time when we can risk irresponsible conduct.
Running Your Kernel
This machine is too old to boot from USB media.
In theory it will boot a floppy disk, and it will
boot a CD-ROM / CD-R / CD-RW containing an
"El Torito" floppy-disk image.
Note that your kernel won't work on machines with USB
keyboards... except that some such machines have a "Legacy
USB" option you can enable in the BIOS.
If you enable "Legacy USB" on some machine you have so you
can boot Pebbles kernels,
you probably want to remember to
disable it again later.
Booting from a floppy disc
Warning: the current floppy drive in the current
crash box is not reliable.
The CD-RW method is more reliable.
- Obtain a floppy disc.
- Run: dd if=bootfd.img of=/dev/fd0 bs=1440k
(if for some reason you need to use a Windows machine to
write a floppy, try
RaWrite).
Warning: the current floppy drive in the current
crash box is not reliable.
The CD-RW method is more reliable.
Booting from an optical (CD-R/CD-RW) disc
- Obtain a CD-R or a CD-RW. The machine will be deployed with a CD-RW; please try not to walk off with it. If somebody else has walked off with (or scratched to death) the CD-RW deployed with the machine, send mail to the staff mailing list.
- mkdir burn
- cp bootfd.img burn
- mkisofs -r -b bootfd.img -o bootcd.iso burn
- cdrecord blank=fast dev=/dev/cdwriter bootcd.iso (if you are using a CD-R instead of a CD-RW, skip the blank=fast parameter).
If you run into trouble burning your CD, try adding
speed=0 and/or driveropts=burnfree.
It is rumored that the large cluster on the 5th floor of GHC
contains machines that can write optical disks.
From time to time a portable USB CD burner,
including a USB-C adaptor dongle,
has been deployed with the crash box.
Boot acceleration
A couple of tricks can slightly improve boot speed.
- First, use the reset button (on the left side of the front panel)
instead of the power button.
-
Second, once the BIOS splash screen is drawn, watch the row of
lights on the upper right of the keyboard: they will all blink
on and then off, which means that the BIOS has initialized the
keyboard. When that happens, press the spacebar (once is enough).
This will cause the BIOS to switch to "hurry-up" mode,
in which it skips some tests and degrades the
quality of others.
How Mandatory Is This?
We will grade your kernel based on its performance in
Simics. However, the crash box is a useful diagnostic
tool you may well wish to take advantage of.
|