Test scripts for A3
The goal of these scripts is to make testing easier for you and also give you an idea of what tests
we will be running on your kernel. Make sure to read the Testing section of A3 hints and the README file
of this tar package.
Installing
These instructions are for using the student.cs
environment. If you are working on another system
you'll need to copy and transfer the a3-test-scripts.tar.gz
file to your system and adjust the tar command below as appropriate.
# We assuming your directory structure is as follows
# $HOME/cs350-os161
# $HOME/cs350-os161/os161-1.11
# $HOME/cs350-os161/root
#
# And that kernel-ASST3 is compiled and installed in
# $HOME/cs350-os161/root
cd $HOME/cs350-os161/os161-1.11
# This creates the directory a3-test-script and its contents.
~cs350/bin/tar -xzf ~cs350/pub/os161_repository/a3-test-scripts.tar.gz
cd $HOME/cs350-os161
ln -s os161-1.11/a3-test-scripts .
cd a3-test-scripts
# This will build and install some new programs into
# the directory newtests and create some symbolic links
# to the kernel-ASST3 in the root directory and to
# testbin and bin in that directory.
# Note: that compilation of some of the new test programs
# can take a bit of time.
make
Using the test scripts
First read the README file in a3-test-scripts.
The a3-test-scripts directory has small scripts to test various
aspects of your virtual memory implementation (file names test-*).
The directory also has three scripts that run the small test-* scripts.
These are:
- run-batch-A3. This script will be used to mark your assignment.
The system calls that it needs are write to console and exit.
- run-batch-A3-option1. This script will also be used to mark your assignments. It only runs one test, test-vm-big-fork. In addition to write to console and exit, this test relies on fork and waitpid.
- run-batch-A3-option2. This script will not be used
to mark your assignment. It is provided for your own use.
It simply runs all of the A2 tests.
We will run the marking script as follows
(assuming they are being run from the csh):
./run-batch-A3 |& tee out.1
./run-batch-A3-option1 |& tee out.2
See each script to see what tests are run and to see how to run each
test individually. The scripts all use user-level C programs, and the
source for all these programs is available to you in case you need to
learn more about how they behave.