Build-Test Script and Docker image for os161 in University of Waterloo CS350 Operating Systems
GPL-3.0 License
$ curl -s https://raw.githubusercontent.com/adrw/docker-cs350-os161/master/bootstrap.sh | bash -s
Makefile
and build-test.sh
submit.sh
that you will need to edit the file and add your username...etcmake
make build
or make rebuild
(build without cached Docker images)./build-test.sh
and any of the options below-b
- only build from source, don't run after-c
- continuous build loop-d
- output debug text when tests are run-m
- run with gdb tmux panels without rebuild-r
- run only (no gdb tmux or rebuild)-t {}
- run test {test alias}-l {}
- loop all following tests {#} times and log result in logs/
directory-w
- clear all logs./build-test.sh -t {test name | test alias} -t {...
./build-test.sh -l {# of loops} -t {test name | test alias} -t {...
l | lock
- test locks with sy2cv | convar
- test conditional variables with sy3t | traffic
- A1 test for traffic simulation with 4 15 0 1 0 params2aa | onefork
- uw-testbin/onefork2ab | pidcheck
- uw-testbin/pidcheck2ac | widefork
- uw-testbin/widefork2ad | forktest
- testbin/forktest2ba | hogparty
- uw-testbin/hogparty2bb | sty
- testbin/sty2bc | argtest
- uw-testbin/argtest2bd | argtesttest
- uw-testbin/argtesttest2be | add
- testbin/add3a | vm-data1
- uw-testbin/vm-data13b | vm-data3
- uw-testbin/vm-data33c | romemwrite
- uw-testbin/romemwrite3d | vm-crash2
- uw-testbin/vm-crash23e | vm-data1
- uw-testbin/vm-data13el | lvm-data1
- loop 5 x uw-testbin/vm-data13f | sort
- testbin/sort3fl | lsort
- loop 5 x testbin/sort3g | lmatmult
- testbin/matmult3gl | lmatmult
- loop 5 x testbin/matmult3h | lwidefork
- loop 5 x uw-testbin/widefork3i | lhogparty
- loop 5 x uw-testbin/hogpartydocker pull andrewparadi/cs350-os161:latest
docker run -it -v {absolute local os161 src directory}:/root/cs350-os161 --entrypoint /bin/bash andrewparadi/cs350-os161:latest