NetBSD/sys/rump
pooka aeada54307 Don't reorder page on the age queue if the lookup is done by the
pagedaemon.  This mimics normal kernel behaviour where pmap_kentered
mappings are not tracked for references.  Without this change the
vnode pager's clustering could cause one page to be released by
the pagedaemon, and the rest of the pages in the pageout cluster
made unlikely candidates to be released soon.
2010-10-13 11:01:04 +00:00
..
dev Don't attach as pseudo device here. This driver does attach in modcmd. 2010-10-12 09:14:43 +00:00
fs Descend into nfsserver, i.e. build & install the kernel nfs server bits. 2010-07-26 15:55:41 +00:00
include regen: rcvp/cdir interfaces go byebye in favour of rump syscalls 2010-09-07 17:14:18 +00:00
kern support zlib 2010-06-21 21:43:28 +00:00
librump Don't reorder page on the age queue if the lookup is done by the 2010-10-13 11:01:04 +00:00
net Prefault bus pages in driver attachment. This seems to work around 2010-08-17 20:42:47 +00:00
ldscript.rump Introduce RUMP_COMPONENT. It behaves mostly like a simplified 2010-03-01 13:12:19 +00:00
Makefile Add infrastructure for kern compnents. This is meant for those 2010-06-10 21:56:42 +00:00
Makefile.rump Limit visibility of _RUMPKERNEL to prevent abuse. 2010-05-11 21:08:07 +00:00
README.dirs update slightly 2010-05-11 11:58:14 +00:00
TODO

	$NetBSD: README.dirs,v 1.11 2010/05/11 11:58:14 pooka Exp $


The following is a quick rundown of the current directory structure.
First, components in the kernel namespace, i.e. compiled with -D_KERNEL

sys/rump/librump - kernel runtime emulation
  /rumpkern	- kernel core, e.g. syscall, interrupt and lock support

  /rumpcrypto	- kernel cryptographic routines
  /rumpdev	- device support, e.g. autoconf subsystem
  /rumpnet	- networking support and sockets layer
  /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/dev - device components, e.g. audio, raidframe, usb drivers

sys/rump/fs - file system components
  /lib/lib${fs}  - kernel file system code

sys/rump/net - networking components
  /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.



The rest are out-of-kernel components (i.e. no -D_KERNEL)
related to rump.

hypercall interface:
src/lib/librumpuser
  The "rumpuser" set of interfaces is used by rump to communicate
  with the host.

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.  It provides a slightly
	     higher interface than pure rump syscalls.

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

src/share/examples/rump
  Various examples detailing use of rump in different scenarios.
  These are provided source-only.