Skip to content

Latest commit

 

History

History

lab7

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
################
CS:APP Shell Lab
################

Files:

Makefile	# Compiles your shell program and runs the tests
README		# This file
tsh.c		# The shell program that you will write and hand in
tshref		# The reference shell binary.

# The remaining files are used to test your shell
sdriver.pl	# The trace-driven shell driver
trace*.txt	# The 15 trace files that control the shell driver
tshref.out 	# Example output of the reference shell on all 15 traces

# Little C programs that are called by the trace files
myspin.c	# Takes argument <n> and spins for <n> seconds
mysplit.c	# Forks a child that spins for <n> seconds
mystop.c        # Spins for <n> seconds and sends SIGTSTP to itself
myint.c         # Spins for <n> seconds and sends SIGINT to itself

# Testing scripts for self checking
config.pm
	Config file for grade-handins.pl and grade-shlab.pl

grade-shlab.pl
	The Shell Lab's autograder. Runs the checktsh.pl script over 
	all 16 tracefiles to grade a single tsh.c handin file and
	emits a report on standard output.

checktsh.pl
	Runs a shell (./tsh) over a set of traces and compares the output to
	output of the the reference solution produced by ./tshref. Invoked
	by grade-shlab.pl.