diff --git a/mk/os161.hostlib.mk b/mk/os161.hostlib.mk index 88517d9..d4ac6bc 100644 --- a/mk/os161.hostlib.mk +++ b/mk/os161.hostlib.mk @@ -56,7 +56,7 @@ all-local: $(MYBUILDDIR) .WAIT $(MYBUILDDIR)/$(_LIB_) install-staging-local: $(TOOLDIR)/hostlib .WAIT $(TOOLDIR)/hostlib/$(_LIB_) $(TOOLDIR)/hostlib/$(_LIB_): $(MYBUILDDIR)/$(_LIB_) rm -f $(.TARGET) - ln $(MYBUILDDIR)/$(_LIB_) $(.TARGET) || \ + ln $(MYBUILDDIR)/$(_LIB_) $(.TARGET) >/dev/null 2>&1 || \ cp $(MYBUILDDIR)/$(_LIB_) $(.TARGET) install-local: diff --git a/mk/os161.hostprog.mk b/mk/os161.hostprog.mk index 13e5984..1cb73e6 100644 --- a/mk/os161.hostprog.mk +++ b/mk/os161.hostprog.mk @@ -76,14 +76,14 @@ cleanhostprog: install-staging-local: $(_INSTALLDIR_) .WAIT $(_INSTALLDIR_)/$(_PROG_) $(_INSTALLDIR_)/$(_PROG_): $(MYBUILDDIR)/$(_PROG_) rm -f $(.TARGET) - ln $(MYBUILDDIR)/$(_PROG_) $(.TARGET) || \ + ln $(MYBUILDDIR)/$(_PROG_) $(.TARGET) >/dev/null 2>&1 || \ cp $(MYBUILDDIR)/$(_PROG_) $(.TARGET) .if defined(HOSTBINDIR) install-local: install-hostprog install-hostprog: $(OSTREE)$(HOSTBINDIR) $(MYBUILDDIR)/$(_PROG_) rm -f $(OSTREE)$(HOSTBINDIR)/$(_PROG_) - ln $(MYBUILDDIR)/$(_PROG_) $(OSTREE)$(HOSTBINDIR)/$(_PROG_) || \ + ln $(MYBUILDDIR)/$(_PROG_) $(OSTREE)$(HOSTBINDIR)/$(_PROG_) >/dev/null 2>&1 || \ cp $(MYBUILDDIR)/$(_PROG_) $(OSTREE)$(HOSTBINDIR)/$(_PROG_) .else install-local: diff --git a/mk/os161.lib.mk b/mk/os161.lib.mk index 699ee71..f9f8e53 100644 --- a/mk/os161.lib.mk +++ b/mk/os161.lib.mk @@ -59,13 +59,13 @@ all-local: $(MYBUILDDIR) .WAIT $(MYBUILDDIR)/$(_LIB_) install-staging-local: $(INSTALLTOP)$(LIBDIR) .WAIT $(INSTALLTOP)$(LIBDIR)/$(_LIB_) $(INSTALLTOP)$(LIBDIR)/$(_LIB_): $(MYBUILDDIR)/$(_LIB_) rm -f $(.TARGET) - ln $(MYBUILDDIR)/$(_LIB_) $(.TARGET) || \ + ln $(MYBUILDDIR)/$(_LIB_) $(.TARGET) >/dev/null 2>&1 || \ cp $(MYBUILDDIR)/$(_LIB_) $(.TARGET) install-local: $(OSTREE)$(LIBDIR) $(MYBUILDDIR)/$(_LIB_) @echo "Warning: manually installing library without relinking anything" rm -f $(OSTREE)$(LIBDIR)/$(_LIB_) - ln $(MYBUILDDIR)/$(_LIB_) $(OSTREE)$(LIBDIR)/$(_LIB_) || \ + ln $(MYBUILDDIR)/$(_LIB_) $(OSTREE)$(LIBDIR)/$(_LIB_) >/dev/null 2>&1 || \ cp $(MYBUILDDIR)/$(_LIB_) $(OSTREE)$(LIBDIR)/$(_LIB_) # Build the library. diff --git a/mk/os161.man.mk b/mk/os161.man.mk index fb90723..4e07b00 100644 --- a/mk/os161.man.mk +++ b/mk/os161.man.mk @@ -44,14 +44,14 @@ install-staging-local: $(INSTALLTOP)$(MANDIR) .WAIT install-staging-local: $(INSTALLTOP)$(MANDIR)/$(_F_) $(INSTALLTOP)$(MANDIR)/$(_F_): $(_F_) rm -f $(.TARGET) - ln $(_F_) $(.TARGET) || cp $(_F_) $(.TARGET) + ln $(_F_) $(.TARGET) >/dev/null 2>&1 || cp $(_F_) $(.TARGET) .endfor install-local: $(OSTREE)$(MANDIR) .WAIT installmanpages installmanpages: .for _F_ in $(MANFILES) rm -f $(OSTREE)$(MANDIR)/$(_F_) - ln $(_F_) $(OSTREE)$(MANDIR)/$(_F_) || \ + ln $(_F_) $(OSTREE)$(MANDIR)/$(_F_) >/dev/null 2>&1 || \ cp $(_F_) $(OSTREE)$(MANDIR)/$(_F_) .endfor diff --git a/mk/os161.prog.mk b/mk/os161.prog.mk index 96876c5..a087626 100644 --- a/mk/os161.prog.mk +++ b/mk/os161.prog.mk @@ -61,13 +61,13 @@ cleanprog: install-staging-local: $(INSTALLTOP)$(BINDIR) .WAIT $(INSTALLTOP)$(BINDIR)/$(PROG) $(INSTALLTOP)$(BINDIR)/$(PROG): $(MYBUILDDIR)/$(PROG) rm -f $(.TARGET) - ln $(MYBUILDDIR)/$(PROG) $(.TARGET) || \ + ln $(MYBUILDDIR)/$(PROG) $(.TARGET) >/dev/null 2>&1 || \ cp $(MYBUILDDIR)/$(PROG) $(.TARGET) install-local: install-prog install-prog: $(OSTREE)$(BINDIR) $(MYBUILDDIR)/$(PROG) rm -f $(OSTREE)$(BINDIR)/$(PROG) - ln $(MYBUILDDIR)/$(PROG) $(OSTREE)$(BINDIR)/$(PROG) || \ + ln $(MYBUILDDIR)/$(PROG) $(OSTREE)$(BINDIR)/$(PROG) >/dev/null 2>&1 || \ cp $(MYBUILDDIR)/$(PROG) $(OSTREE)$(BINDIR)/$(PROG) # Link the program. diff --git a/test161/targets/asst2-single.tt b/test161/targets/asst2-single.tt new file mode 100644 index 0000000..a8ea319 --- /dev/null +++ b/test161/targets/asst2-single.tt @@ -0,0 +1,51 @@ +name: asst2-single +print_name: "ASST2 (Single)" +description: > + In this assignment you will add process and system call support to your + OS/161 kernel. This is the single-submitter version for students that are + working alone and were provided the file system system calls. +leaderboard: false +version: 1 +points: 80 +type: asst +kconfig: ASST2 +userland: true +tests: +# Process system call tests (50 points) + - id: syscalls/forktest.t + points: 15 + - id: syscalls/shell.t + points: 10 + - id: syscalls/argtest.t + points: 5 + - id: syscalls/bigexec.t + points: 10 + - id: syscalls/factorial.t + points: 5 + - id: syscalls/add.t + points: 5 +# Stability tests (30 points) +# Bad calls (5 points) + - id: stability/badcall/badcall-execv.t + points: 3 + - id: stability/badcall/badcall-waitpid.t + points: 2 +# crash + - id: stability/crash/crash-allS.t + points: 3 +# randcall + - id: stability/randcall.t + points: 2 + commands: + - id: /testbin/randcall + args: + - "-f" + - "-c 100" + - "-r 421" + - "2" +# forkbomb + - id: stability/forkbomb.t + points: 10 +# forktest + - id: stability/forktest-stability.t + points: 10