NetBSD/sys/rump
pooka 893db2f6ab Treat all of ^__ as compiler namespace and do not rename those
symbols.  This fixes e.g. fortify and sh3 millicode issues.  This
is still not perfect, however, since e.g. the MIPS _gp_disp is not
in ^__.

XXX: we provide a few ^__ symbols in the kernel, but those can be
easily renamed.  The harder problem is how to keep the kernel clean
of those afterwards.
2009-01-11 12:55:37 +00:00
..
fs Put syspuffs_glueinit in the rump kernel namespace. 2009-01-08 03:27:10 +00:00
include Regen to pull proper "created from" revision strings. 2009-01-11 12:22:51 +00:00
librump Regen to pull proper "created from" revision strings. 2009-01-11 12:22:51 +00:00
net Add missing dollar sign ($) for $NetBSD$ tag. 2009-01-06 15:52:27 +00:00
Makefile No need to .WAIT anymore: headers are done in a separate pass and 2008-11-17 10:21:44 +00:00
Makefile.rump Treat all of ^__ as compiler namespace and do not rename those 2009-01-11 12:55:37 +00:00
README.dirs update description of include 2008-12-31 13:18:06 +00:00
TODO remove some completed TODO items and add new ones 2008-12-16 23:34:28 +00:00

	$NetBSD: README.dirs,v 1.8 2008/12/31 13:18:06 pooka Exp $

    Runnable Userspace Meta Programs

Quick rundown of the current directory structure:

sys/rump/librump - kernel runtime emulation
  /rumpkern - kernel core, e.g. syscall, interrupt and lock support
  /rumpnet  - networking support and sockets layer
  /rumpuser - userspace namespace support for previous, *NO* -D_KERNEL
	      provides e.g. malloc() and some syscalls
  /rumpvfs  - file system support

sys/rump/include
  /machine - used for architectures where the rump ABI is not yet the
	     same as the kernel module ABI.  will eventually disappear
	     completely
  /rump    - rump headers installed to userspace

sys/rump/fs - file system rumps
  /lib/lib${fs}  - kernel file system code compiled out of /sys with -D_KERNEL

sys/rump/net - networking rumps
  /lib/libnet	  - subroutines from sys/net, e.g. route and if_ethersubr
  /lib/libnetinet - TCP/IP
  /lib/libvirtif  - a virtual interface which uses host tap(4) to shovel
		    packets.  This is used by netinet and if_ethersubr.
  /lib/libsockin  - implements PF_INET using host kernel sockets.  This is
		    mutually exclusive with net, netinet and virtif.

Users:
src/lib
  /libp2k  - puffs-to-vfs adaption layer, userspace namespace
  /libukfs - user kernel file system, a library to access file system
	     images (or devices) directly in userspace without going
	     through a system call and puffs

src/usr.sbin/puffs
  rump_$fs - userspace file system daemons using the kernel fs code