xv6

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README | LICENSE

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:
Mulib.c | 8++++++++
Auser.h | 15+++++++++++++++
Muser1.c | 6++++--
Muserfs.c | 4++++
Musertests.c | 12++++++++----
Musys.S | 1+
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)