From 8b58e81077abf4e843873f16c03077e2fafce52d Mon Sep 17 00:00:00 2001 From: kaashoek Date: Wed, 23 Aug 2006 01:09:24 +0000 Subject: i/o redirection in sh better parsing of sh commands (copied from jos sh) cat: read from 1 if no args sbrk system call, but untested getpid system call moved locks in keyboard intr, but why do we get intr w. null characters from keyboard? --- proc.c | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'proc.c') diff --git a/proc.c b/proc.c index 9f7064f..7382add 100644 --- a/proc.c +++ b/proc.c @@ -138,6 +138,24 @@ copyproc(struct proc* p) return np; } +int +growproc(int n) +{ + struct proc *cp = curproc[cpu()]; + char *newmem, *oldmem; + + newmem = kalloc(cp->sz + n); + if(newmem == 0) return -1; + memmove(newmem, cp->mem, cp->sz); + memset(newmem + cp->sz, 0, n); + oldmem = cp->mem; + cp->mem = newmem; + kfree(oldmem, cp->sz); + cp->sz += n; + cprintf("growproc: added %d bytes\n", n); + return 0; +} + // Per-CPU process scheduler. // Each CPU calls scheduler() after setting itself up. // Scheduler never returns. It loops, doing: -- cgit v1.2.3