Process reference counting
authorBarret Rhoden <brho@cs.berkeley.edu>
Tue, 1 Dec 2009 07:28:11 +0000 (23:28 -0800)
committerBarret Rhoden <brho@cs.berkeley.edu>
Tue, 1 Dec 2009 07:28:11 +0000 (23:28 -0800)
commit977fb6b75d2b7ea394a9943ff77bfc3e61d71a9a
tree835b5ddcd7fae531bfc13a311f9bb3ae67fbdde2
parentb563b603e9e3df995d866759be03a52112c0cdc9
Process reference counting

This sorts out reference counting of processes.  This will keep
processes from dying while pointers are still floating around, among
other things.  Read the section in Documentation/process-internals.txt
for specifics and before you do anything that fundamentally messes with
processes.

There are still many outstanding issues: using atomics to properly
handle the reference counting (currently using the proc_lock, which has
issues), splitting core_request() up, and stacks getting annihilated
while holding references.
13 files changed:
Documentation/process-internals.txt [new file with mode: 0644]
kern/arch/i386/trap.c
kern/arch/sparc/trap.c
kern/include/process.h
kern/src/env.c
kern/src/manager.c
kern/src/monitor.c
kern/src/process.c
kern/src/resource.c
kern/src/schedule.c
kern/src/syscall.c
kern/src/testing.c
user/apps/roslib/mproctests.c