commit 9b37d1bfaa65c96e7a465c285599aa45117182ea
parent b903b693ec1525f1c033fa8738f78a6d956f1adf
Author: rsc <rsc>
Date: Sun, 16 Jul 2006 15:36:31 +0000
Add user.h for prototypes.
Add cons_puts for cleaner output.
Diffstat:
6 files changed, 40 insertions(+), 6 deletions(-)
diff --git a/ulib.c b/ulib.c
@@ -1,6 +1,14 @@
+#include "user.h"
+
int
puts(char *s)
{
+ return cons_puts(s);
+}
+
+int
+puts1(char *s)
+{
int i;
for(i = 0; s[i]; i++)
diff --git a/user.h b/user.h
@@ -0,0 +1,15 @@
+int fork(void);
+int exit(void) __attribute__((noreturn));
+int wait(void);
+int cons_putc(int);
+int pipe(int*);
+int write(int, void*, int);
+int read(int, void*, int);
+int close(int);
+int block(void);
+int kill(int);
+int panic(char*);
+int cons_puts(char*);
+
+int puts(char*);
+int puts1(char*);
diff --git a/user1.c b/user1.c
@@ -1,5 +1,8 @@
+#include "user.h"
+
char buf[32];
+int
main()
{
int pid, fds[2], n;
@@ -15,6 +18,5 @@ main()
puts(buf);
puts("\n");
}
- while(1)
- ;
+ for(;;);
}
diff --git a/userfs.c b/userfs.c
@@ -1,9 +1,13 @@
+#include "user.h"
+
// file system tests
char buf[1024];
+int
main()
{
puts("userfs running\n");
block();
+ return 0;
}
diff --git a/usertests.c b/usertests.c
@@ -1,3 +1,5 @@
+#include "user.h"
+
char buf[2048];
// simple fork and pipe read/write
@@ -17,10 +19,10 @@ pipe1()
buf[i] = seq++;
if(write(fds[1], buf, 1033) != 1033){
panic("pipe1 oops 1\n");
- exit(1);
+ exit();
}
}
- exit(0);
+ exit();
} else {
close(fds[1]);
total = 0;
@@ -109,12 +111,13 @@ exitwait()
return;
}
} else {
- exit(0);
+ exit();
}
}
puts("exitwait ok\n");
}
+int
main()
{
puts("usertests starting\n");
@@ -123,5 +126,6 @@ main()
preempt();
exitwait();
- panic("usertests finished successfuly");
+ panic("usertests succeeded");
+ return 0;
}
diff --git a/usys.S b/usys.S
@@ -19,3 +19,4 @@ STUB(close)
STUB(block)
STUB(kill)
STUB(panic)
+STUB(cons_puts)