summaryrefslogtreecommitdiff
path: root/defs.h
diff options
context:
space:
mode:
authorrsc <rsc>2009-05-31 00:28:45 +0000
committerrsc <rsc>2009-05-31 00:28:45 +0000
commit19333efb9eb634f17bea41d0cec8ee28c595cce8 (patch)
tree97350b8c0c4a4c0f61d76516f067b32298af37c7 /defs.h
parent0c7f483838c48db05e7ea44232a55135d7c262a0 (diff)
downloadxv6-labs-19333efb9eb634f17bea41d0cec8ee28c595cce8.tar.gz
xv6-labs-19333efb9eb634f17bea41d0cec8ee28c595cce8.tar.bz2
xv6-labs-19333efb9eb634f17bea41d0cec8ee28c595cce8.zip
Some proc cleanup, moving some of copyproc into allocproc.
Also, an experiment: use "thread-local" storage for c and cp instead of the #define macro for curproc[cpu()].
Diffstat (limited to 'defs.h')
-rw-r--r--defs.h11
1 files changed, 9 insertions, 2 deletions
diff --git a/defs.h b/defs.h
index c354371..fe863cd 100644
--- a/defs.h
+++ b/defs.h
@@ -73,6 +73,7 @@ extern volatile uint* lapic;
void lapiceoi(void);
void lapicinit(int);
void lapicstartap(uchar, uint);
+void microdelay(int);
// mp.c
extern int ismp;
@@ -92,14 +93,14 @@ int pipewrite(struct pipe*, char*, int);
// proc.c
struct proc* copyproc(struct proc*);
-struct proc* curproc(void);
void exit(void);
int growproc(int);
int kill(int);
void pinit(void);
void procdump(void);
void scheduler(void) __attribute__((noreturn));
-void setupsegs(struct proc*);
+void ksegment(void);
+void usegment(void);
void sleep(void*, struct spinlock*);
void userinit(void);
int wait(void);
@@ -144,6 +145,12 @@ extern int ticks;
void tvinit(void);
extern struct spinlock tickslock;
+// uart.c
+void uartinit(void);
+void uartintr(void);
+void uartputc(int);
+
+
// number of elements in fixed-size array
#define NELEM(x) (sizeof(x)/sizeof((x)[0]))