Reworked the user VM map and added sysevent queue
authorKevin Klues <klueska@eecs.berkeley.edu>
Tue, 11 Aug 2009 01:10:56 +0000 (18:10 -0700)
committerBarret Rhoden <brho@cs.berkeley.edu>
Wed, 12 Aug 2009 19:23:58 +0000 (12:23 -0700)
commit29aa73053bbad2840903edb491464ffbc78a75f5
treecaf8de8fc5617b0fd769678ed8f3c35fa8648ceb
parent7a81b66e4ae3b6f1335a00150f4a872e71787c08
Reworked the user VM map and added sysevent queue

I cleaned up the virtual memory map exposed to user space and created
structs that define the contents of our new procdata and procinfo
structures that the user can use to share data with the kernel.  The
procinfo structures are read only and the procdata structures are
read-write.  Additionally, some of the cruft has now been removed from
the memlayout that was still in there from the ut austin labs we based
our original code on.

Some other changes needed to be made to the way ring buffers are
initialized as well, so that we can statically define their types to be
of a certain size, rather than relying on the open-ended buffers that
were there originally.

Also, just some general cleanup of where certain header files are
included was done as well.

Finally, I mirrored the directory structure created by andrew under
user/parlib into user/roslib.
45 files changed:
GNUmakefile
kern/arch/i386/apic.c
kern/arch/i386/console.c
kern/arch/i386/pmap.c
kern/arch/i386/smp_boot.c
kern/arch/i386/trap.c
kern/arch/sparc/trap.c
kern/include/assert.h
kern/include/env.h
kern/include/ros/memlayout.h
kern/include/ros/procdata.h [new file with mode: 0644]
kern/include/ros/ring_buffer.h
kern/include/ros/syscall.h
kern/include/ros/sysevent.h
kern/src/Makefrag
kern/src/env.c
kern/src/kmalloc.c
kern/src/manager.c
kern/src/pmap.c
kern/src/syscall.c
kern/src/testing.c
user/apps/roslib/Makefrag
user/apps/roslib/fptest.c
user/apps/roslib/hello.c
user/apps/roslib/proctests.c
user/apps/roslib/spawn.c
user/parlib/inc/parlib.h
user/parlib/src/i386/entry.S
user/parlib/src/parlibmain.c
user/parlib/src/sparc/entry.S
user/roslib/inc/assert.h
user/roslib/inc/lib.h
user/roslib/inc/stdio.h
user/roslib/src/Makefrag
user/roslib/src/entry_i386.S [deleted file]
user/roslib/src/entry_sparc.S [deleted file]
user/roslib/src/i386/entry.S [new file with mode: 0644]
user/roslib/src/i386/syscall.c [new file with mode: 0644]
user/roslib/src/libmain.c
user/roslib/src/panic.c
user/roslib/src/sparc/entry.S [new file with mode: 0644]
user/roslib/src/sparc/syscall.c [new file with mode: 0644]
user/roslib/src/syscall.c
user/roslib/src/syscall_i386.c [deleted file]
user/roslib/src/syscall_sparc.c [deleted file]