RUMP_SERVER(1) | General Commands Manual | RUMP_SERVER(1) |
rump_server
, rump_allserver
—
rump_server |
[-sv ] [-c
ncpu] [-d
drivespec] [-l
library] [-m
module] [-r
total_ram] url |
rump_server
utility is used to provide a rump kernel
service. Clients can use the system calls provided by
rump_server
via url.
The difference between rump_server
and
rump_allserver
is that
rump_server
offers only a minimalistic set of
features, while rump_allserver
provides all rump
kernel components which were available when the system was built. At
execution time it is possible to load components from the command line as
described in the options section.
-c
ncpu-d
drivespecThe following are optional:
Note: the contents of block devices are cached in the rump kernel's buffer cache. To avoid cache incoherency, it is advisable not to access a file through the host namespace while it is mapped as a block device in a rump kernel.
In case hostpath does not exist, it will be created as a regular file with mode 0644 (plus any restrictions placed by umask). In case hostpath is a regular file and is not large enough to accommodate the specified size, it will be extended to the specified size.
-l
librarydlopen
() on library before initializing the
rump kernel. In case library provides a kernel
module, it will appear as a builtin module in the rump kernel. Any rump
kernel component present in library will also be
initialized.
The argument library can contain a full
path or a filename, in which case the standard dynamic library search
path will be used. By default, lazy resolution is used, and may result
in a runtime error due to missing components. To test a configuration,
run rump_server
with
LD_BIND_NOW=1
(see examples).
-m
module-r
total_ram-s
rump_server
detaches from the terminal once the
service is running on url.-v
After use, rump_server
can be made to exit
using rump.halt(1).
$ rump_server -lrumpvfs -m /modules/tmpfs.kmod unix://sock $ env RUMP_SERVER=unix://sock rump.halt
Start a server with the one gigabyte host file dk.img mapped as the block device /dev/dk in the rump kernel.
$ rump_allserver -d key=/dev/dk,hostpath=dk.img,size=1g unix://sock
Start a server which listens on INADDR_ANY port 3755
$ rump_server tcp://0:3755/
Test that a configuration contains all of the necessary components:
$ env LD_BIND_NOW=1 rump_server -lrumpvfs -lrumpfs_ffs unix://tsock
Start a FFS server with a 16MB kernel memory limit.
$ rump_server -lrumpfs_ffs [...] -r 16m unix://ffs
January 15, 2014 | NetBSD 9.4 |