Compare commits
No commits in common. "ASST3/add-syscall-part-2" and "main" have entirely different histories.
ASST3/add-
...
main
@ -110,16 +110,6 @@ void syscall(struct trapframe *tf) {
|
||||
thread_exit();
|
||||
break;
|
||||
|
||||
case SYS_printchar:
|
||||
err = sys_printchar((char)tf->tf_a0);
|
||||
break;
|
||||
|
||||
case SYS_add_three_integers:
|
||||
err = sys_add_three_integers((int)tf->tf_a0, (int)tf->tf_a1, (int)tf->tf_a2,
|
||||
&retval);
|
||||
kprintf("%d\n", retval);
|
||||
break;
|
||||
|
||||
/* Add stuff here */
|
||||
|
||||
default:
|
||||
|
||||
@ -379,8 +379,6 @@ file vfs/devnull.c
|
||||
file syscall/loadelf.c
|
||||
file syscall/runprogram.c
|
||||
file syscall/time_syscalls.c
|
||||
file syscall/printchar.c
|
||||
file syscall/add_three_integers.c
|
||||
|
||||
#
|
||||
# Startup and initialization
|
||||
|
||||
@ -94,8 +94,6 @@
|
||||
// #define SYS_getpriority 38
|
||||
// #define SYS_setpriority 39
|
||||
// (process groups, sessions, and job control)
|
||||
#define SYS_printchar 41
|
||||
#define SYS_add_three_integers 42
|
||||
// #define SYS_getpgid 40
|
||||
// #define SYS_setpgid 41
|
||||
// #define SYS_getsid 42
|
||||
|
||||
@ -57,8 +57,4 @@ __DEAD void enter_new_process(int argc, userptr_t argv, userptr_t env,
|
||||
int sys_reboot(int code);
|
||||
int sys___time(userptr_t user_seconds, userptr_t user_nanoseconds);
|
||||
|
||||
int sys_printchar(char c);
|
||||
|
||||
int sys_add_three_integers(int a, int b, int c, int *ret);
|
||||
|
||||
#endif /* _SYSCALL_H_ */
|
||||
|
||||
@ -1,8 +0,0 @@
|
||||
#include <types.h>
|
||||
#include <lib.h>
|
||||
#include <syscall.h>
|
||||
|
||||
int sys_add_three_integers(int a, int b, int c, int *ret) {
|
||||
*ret = a + b + c;
|
||||
return 0;
|
||||
}
|
||||
@ -1,7 +0,0 @@
|
||||
#include <types.h>
|
||||
#include <lib.h>
|
||||
#include <syscall.h>
|
||||
int sys_printchar(char c) {
|
||||
kprintf("%c", c);
|
||||
return 0;
|
||||
}
|
||||
@ -156,7 +156,4 @@ int execvp(const char *prog, char *const *args); /* calls execv */
|
||||
char *getcwd(char *buf, size_t buflen); /* calls __getcwd */
|
||||
time_t time(time_t *seconds); /* calls __time */
|
||||
|
||||
int printchar(char c);
|
||||
int add_three_integers(int a, int b, int c);
|
||||
|
||||
#endif /* _UNISTD_H_ */
|
||||
|
||||
@ -5,10 +5,10 @@
|
||||
TOP=../..
|
||||
.include "$(TOP)/mk/os161.config.mk"
|
||||
|
||||
SUBDIRS=add add_three_integers argtest badcall bigexec bigfile bigfork bigseek bloat conman \
|
||||
SUBDIRS=add argtest badcall bigexec bigfile bigfork bigseek bloat conman \
|
||||
crash ctest dirconc dirseek dirtest f_test factorial farm faulter \
|
||||
filetest forkbomb forktest frack hash hog huge \
|
||||
malloctest matmult multiexec palin parallelvm poisondisk printchartest psort \
|
||||
malloctest matmult multiexec palin parallelvm poisondisk psort \
|
||||
randcall redirect rmdirtest rmtest \
|
||||
sbrktest schedpong sort sparsefile tail tictac triplehuge \
|
||||
triplemat triplesort usemtest zero
|
||||
|
||||
@ -1,10 +0,0 @@
|
||||
# Makefile for add_three_integers
|
||||
|
||||
TOP=../../..
|
||||
.include "$(TOP)/mk/os161.config.mk"
|
||||
|
||||
PROG=add_three_integers
|
||||
SRCS=add_three_integers.c
|
||||
BINDIR=/testbin
|
||||
|
||||
.include "$(TOP)/mk/os161.prog.mk"
|
||||
@ -1,10 +0,0 @@
|
||||
#include <unistd.h>
|
||||
|
||||
extern int add_three_integers(int a, int b, int c);
|
||||
|
||||
int main() {
|
||||
add_three_integers(3, 5, 2); // should output 10
|
||||
add_three_integers(-5, 3, 1); // should output -1
|
||||
|
||||
return 0;
|
||||
}
|
||||
@ -1,11 +0,0 @@
|
||||
# Makefile for printchartest
|
||||
|
||||
TOP=../../..
|
||||
.include "$(TOP)/mk/os161.config.mk"
|
||||
|
||||
PROG=printchartest
|
||||
SRCS=printchartest.c
|
||||
BINDIR=/testbin
|
||||
|
||||
.include "$(TOP)/mk/os161.prog.mk"
|
||||
|
||||
@ -1,17 +0,0 @@
|
||||
#include <unistd.h>
|
||||
|
||||
extern int printchar(char c);
|
||||
|
||||
int main() {
|
||||
|
||||
printchar('C');
|
||||
printchar('S');
|
||||
printchar('E');
|
||||
printchar('4');
|
||||
printchar('0');
|
||||
printchar('0');
|
||||
printchar('1');
|
||||
printchar('\n');
|
||||
|
||||
return 0;
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user