Home | History | Annotate | only in /src/share/examples/rump
History log of /src/share/examples/rump
RevisionDateAuthorComments
 1.6 11-Nov-2010  pooka Remove some programs which live as atf tests now.
 1.5 01-May-2010  pooka Add a test/example program for using audio/pad in a rump kernel.
It stuffs some nice sounds into the virtual kernel's /dev/audio,
reads the PCM from /dev/pad, and writes the data to stdout from
where it can be piped to audioplay to test that things actually
work.

If you want to know the secret message, you'll just have to run
this program ;)
 1.4 22-Mar-2010  pooka Add an example/test program for rump bluetooth. This does discovery
and prints the address and name of the first peer encountered (if any):

ubt0 at uhub0 port 1
ubt0: Cambridge Silicon Radio Bluetooth USB Adapter, rev 2.00/19.15, addr 2
device ubt0, addr xx:xx:xx:xx:xx:xx
my peer: yy:yy:yy:yy:yy:yy, major class: 2 (phone)
peer name: Mokia maailmalta
 1.3 07-Mar-2010  pooka Add a simple tty server which attaches to /dev/ttyU in the rump
kernel and provides the same device on the host with pud(4). I
can succesfully talk to my u3g device using tip(1) against the
server's devices. Some characters are lost here and there, though
(probably a problem with interrupt pipes in ugenhc). Once that
issues is solved, there is no reason why e.g. pppd (chat) could
not be used against the server.

Now, why would anyone want to do this instead of using the kernel
driver directly? Well, for one, on my laptop I run netbsd-5 which
doesn't have a u3g driver which supports the u3g hardware I have.

As anyone with half an eye can see, this is quite copypasted from
umserv and there is plenty of opportunity for uncopypasting for
the eager vi-wielder.
 1.2 11-Jan-2010  pooka descend into new subdirs
 1.1 09-Jan-2010  pooka Stick a top-level subdir-makefile here for easy build-testing.
 1.1 11-Nov-2010  pooka Add readme explaining which grue has ok'd the eating of some code
until recently located here.
 1.1 22-Mar-2010  pooka Add an example/test program for rump bluetooth. This does discovery
and prints the address and name of the first peer encountered (if any):

ubt0 at uhub0 port 1
ubt0: Cambridge Silicon Radio Bluetooth USB Adapter, rev 2.00/19.15, addr 2
device ubt0, addr xx:xx:xx:xx:xx:xx
my peer: yy:yy:yy:yy:yy:yy, major class: 2 (phone)
peer name: Mokia maailmalta
 1.1 22-Mar-2010  pooka Add an example/test program for rump bluetooth. This does discovery
and prints the address and name of the first peer encountered (if any):

ubt0 at uhub0 port 1
ubt0: Cambridge Silicon Radio Bluetooth USB Adapter, rev 2.00/19.15, addr 2
device ubt0, addr xx:xx:xx:xx:xx:xx
my peer: yy:yy:yy:yy:yy:yy, major class: 2 (phone)
peer name: Mokia maailmalta
 1.2 05-Dec-2009  haad Fix some small bugs pointed out byt pooka@. Remove not needed -D defines and
do not include private kernel header files. Instead copy part of it to test
program.
 1.1 04-Dec-2009  haad Add small testing program which uses RUMP libdm to test device-mapper
functionality in userspace.
 1.3 05-Dec-2009  haad Include public interface describing user-kernel interface from include/dev/dm.
 1.2 05-Dec-2009  haad Fix some small bugs pointed out byt pooka@. Remove not needed -D defines and
do not include private kernel header files. Instead copy part of it to test
program.
 1.1 04-Dec-2009  haad Add small testing program which uses RUMP libdm to test device-mapper
functionality in userspace.
 1.1 04-Dec-2009  haad Add small testing program which uses RUMP libdm to test device-mapper
functionality in userspace.
 1.1 04-Dec-2009  haad Add small testing program which uses RUMP libdm to test device-mapper
functionality in userspace.
 1.6 23-Aug-2010  pooka update component lists: scsipi is independent of umass now
 1.5 17-Feb-2010  pooka * support cd devices (@scsibus & @atapibus, per libumass)
* support cd9660
* add "probe" keyword, which just prints the dmesg in verbose form
 1.4 10-Feb-2010  pooka rumpusbhc is now ugenhc
 1.3 14-Oct-2009  pooka WARNS
 1.2 13-Oct-2009  pooka Try ffs is msdosfs mount fails -- I happened to have one USB stick
where the file system is ffs.
 1.1 05-Oct-2009  pooka Add an example program which shows how to mount and read files from
an msdos file system which is located on a usb stick. What makes
this special is that the USB driver stack (and the file system
driver, of course) is run in rump instead of in the host kernel.
 1.6 25-Mar-2010  pooka Check open return value and close fd when we're done.
 1.5 22-Mar-2010  pooka Use DIOCTUR to test if a newly configured CD drive is ready instead
of playing a random waiting game.
 1.4 07-Mar-2010  pooka Pause after probe here too, so that you can amuse yourself by
unplugging and replugging devices and looking at the detach/attach
feedback messages.
 1.3 17-Feb-2010  pooka * support cd devices (@scsibus & @atapibus, per libumass)
* support cd9660
* add "probe" keyword, which just prints the dmesg in verbose form
 1.2 13-Oct-2009  pooka Try ffs is msdosfs mount fails -- I happened to have one USB stick
where the file system is ffs.
 1.1 05-Oct-2009  pooka Add an example program which shows how to mount and read files from
an msdos file system which is located on a usb stick. What makes
this special is that the USB driver stack (and the file system
driver, of course) is run in rump instead of in the host kernel.
 1.3 14-Jun-2010  pooka tty support is in rumpkern_tty now
 1.2 10-Feb-2010  pooka rumpusbhc is now ugenhc
 1.1 20-Dec-2009  pooka Add a simple terminal program which uses a rump kernel for a ucom@usb
terminal and host terminal stdin/stdout for human interaction.
Tipsy just simply shovels bits between the two. I can use my
JavaStation Krups (*) serial console with this ... without having
to worry abort those pesky usb drivers crashing my desktop kernel.

*) strictly speaking it's uwe's ;)
 1.2 18-Feb-2010  pooka In "probeonly", pause after bootstrap to make "monkey plug and
unplug device, monkey see fancy dmesg info" possible.
 1.1 20-Dec-2009  pooka Add a simple terminal program which uses a rump kernel for a ucom@usb
terminal and host terminal stdin/stdout for human interaction.
Tipsy just simply shovels bits between the two. I can use my
JavaStation Krups (*) serial console with this ... without having
to worry abort those pesky usb drivers crashing my desktop kernel.

*) strictly speaking it's uwe's ;)
 1.3 25-Jan-2016  pooka add -D_KERNTYPES
 1.2 14-Jun-2010  pooka tty support is in rumpkern_tty now
 1.1 07-Mar-2010  pooka Add a simple tty server which attaches to /dev/ttyU in the rump
kernel and provides the same device on the host with pud(4). I
can succesfully talk to my u3g device using tip(1) against the
server's devices. Some characters are lost here and there, though
(probably a problem with interrupt pipes in ugenhc). Once that
issues is solved, there is no reason why e.g. pppd (chat) could
not be used against the server.

Now, why would anyone want to do this instead of using the kernel
driver directly? Well, for one, on my laptop I run netbsd-5 which
doesn't have a u3g driver which supports the u3g hardware I have.

As anyone with half an eye can see, this is quite copypasted from
umserv and there is plenty of opportunity for uncopypasting for
the eager vi-wielder.
 1.3 25-Jan-2016  pooka Don't include <rump/rumpvnode_if.h> from rump.h. It's not needed
unless you're doing something special, but requires register_t.
Adjust the few places which actually need rumpvnode_if.h.
 1.2 24-Jun-2010  hannken Clean up vnode lock operations pass 2:

VOP_UNLOCK(vp, flags) -> VOP_UNLOCK(vp): Remove the unneeded flags argument.

Welcome to 5.99.32.

Discussed on tech-kern.
 1.1 07-Mar-2010  pooka Add a simple tty server which attaches to /dev/ttyU in the rump
kernel and provides the same device on the host with pud(4). I
can succesfully talk to my u3g device using tip(1) against the
server's devices. Some characters are lost here and there, though
(probably a problem with interrupt pipes in ugenhc). Once that
issues is solved, there is no reason why e.g. pppd (chat) could
not be used against the server.

Now, why would anyone want to do this instead of using the kernel
driver directly? Well, for one, on my laptop I run netbsd-5 which
doesn't have a u3g driver which supports the u3g hardware I have.

As anyone with half an eye can see, this is quite copypasted from
umserv and there is plenty of opportunity for uncopypasting for
the eager vi-wielder.
 1.2 10-Feb-2010  pooka rumpusbhc is now ugenhc
 1.1 11-Jan-2010  pooka Add an example program which reads keypresses from the ukbd driver
(via wscons) and simply prints them on screen.
 1.1 11-Jan-2010  pooka Add an example program which reads keypresses from the ukbd driver
(via wscons) and simply prints them on screen.
 1.2 10-Feb-2010  pooka rumpusbhc is now ugenhc
 1.1 15-Dec-2009  pooka Add an example to show how to print with a rump ulpt driver.
 1.1 15-Dec-2009  pooka Add an example to show how to print with a rump ulpt driver.
 1.2 10-Feb-2010  pooka rumpusbhc is now ugenhc
 1.1 11-Jan-2010  pooka Read mouse events from wsmouse and move a silly curses cursor around
the screen (quite poorly, i might add ;).
 1.1 11-Jan-2010  pooka Read mouse events from wsmouse and move a silly curses cursor around
the screen (quite poorly, i might add ;).
 1.4 25-Jan-2016  pooka add -D_KERNTYPES
 1.3 23-Aug-2010  pooka update component lists: scsipi is independent of umass now
 1.2 10-Feb-2010  pooka rumpusbhc is now ugenhc
 1.1 22-Dec-2009  pooka Add a simple example of how to run the kernel umass/USB in userspace
and attach it back to the host kernel using pud(4). The result is
pretty much indistinguisable from if kernel drivers were used.

It's possible to e.g. mount a file system backed by the userspace
block device driver:

golem> disklabel ./rumpsd0d
[...]
5 partitions:
# size offset fstype [fsize bsize cpg/sgs]
d: 1994752 0 unused 0 0 # (Cyl. 0 - 3895)
e: 1994512 240 MSDOS # (Cyl. 0*- 3895)

golem> s mount_msdos ./rumpsd0a /mnt
mount_msdos: "./rumpsd0a" is a non-resolved or relative path.
mount_msdos: using "/usr/home/pooka/src/umserv/rumpsd0a" instead.
mount_msdos: /usr/home/pooka/src/umserv/rumpsd0a on /mnt: Device not configured

golem> s mount_msdos ./rumpsd0e /mnt
mount_msdos: "./rumpsd0e" is a non-resolved or relative path.
mount_msdos: using "/usr/home/pooka/src/umserv/rumpsd0e" instead.
golem> df -h /mnt
Filesystem Size Used Avail %Cap Mounted on
/usr/home/pooka/src/umserv/rumpsd0e 974M 5.2M 968M 0% /mnt

etcetc.
 1.3 25-Jan-2016  pooka Don't include <rump/rumpvnode_if.h> from rump.h. It's not needed
unless you're doing something special, but requires register_t.
Adjust the few places which actually need rumpvnode_if.h.
 1.2 24-Jun-2010  hannken Clean up vnode lock operations pass 2:

VOP_UNLOCK(vp, flags) -> VOP_UNLOCK(vp): Remove the unneeded flags argument.

Welcome to 5.99.32.

Discussed on tech-kern.
 1.1 22-Dec-2009  pooka Add a simple example of how to run the kernel umass/USB in userspace
and attach it back to the host kernel using pud(4). The result is
pretty much indistinguisable from if kernel drivers were used.

It's possible to e.g. mount a file system backed by the userspace
block device driver:

golem> disklabel ./rumpsd0d
[...]
5 partitions:
# size offset fstype [fsize bsize cpg/sgs]
d: 1994752 0 unused 0 0 # (Cyl. 0 - 3895)
e: 1994512 240 MSDOS # (Cyl. 0*- 3895)

golem> s mount_msdos ./rumpsd0a /mnt
mount_msdos: "./rumpsd0a" is a non-resolved or relative path.
mount_msdos: using "/usr/home/pooka/src/umserv/rumpsd0a" instead.
mount_msdos: /usr/home/pooka/src/umserv/rumpsd0a on /mnt: Device not configured

golem> s mount_msdos ./rumpsd0e /mnt
mount_msdos: "./rumpsd0e" is a non-resolved or relative path.
mount_msdos: using "/usr/home/pooka/src/umserv/rumpsd0e" instead.
golem> df -h /mnt
Filesystem Size Used Avail %Cap Mounted on
/usr/home/pooka/src/umserv/rumpsd0e 974M 5.2M 968M 0% /mnt

etcetc.
 1.2 29-Mar-2010  pooka amazing grep, how sweet the find
that saved a hack like me
script once was lost but now it's found
was -x, but now I sh
 1.1 29-Mar-2010  pooka Add an example for a rump router cluster setup along with a README.

some contributions to the code from Martti Kuparinen
 1.5 04-Jul-2010  pooka send routing messages via routing sucket -- works better than via inet sucket
 1.4 04-Jul-2010  pooka Fix pointer assignment in previous commit (test compile works better
when you do it with the #defines which actually compile the code
in question).
 1.3 04-Jul-2010  pooka Use a bit more than 1 byte of space for routing messages.
 1.2 29-Mar-2010  pooka fix typo in, um, copyright.

spotted by a keen-eyed enthusiast ;)
 1.1 29-Mar-2010  pooka Add an example for a rump router cluster setup along with a README.

some contributions to the code from Martti Kuparinen
 1.1 29-Mar-2010  pooka amazing grep, how sweet the find
that saved a hack like me
script once was lost but now it's found
was -x, but now I sh
 1.5 05-Dec-2010  pooka mirror change of -lrumpcrypto ==> -lrumpkern_crypto
 1.4 10-Feb-2010  pooka rumpusbhc is now ugenhc
 1.3 05-Feb-2010  pooka The rumpdev_net80211 until-recently-wip component is now rumpnet_net80211.
 1.2 14-Oct-2009  pooka WARNS + make compile
 1.1 05-Oct-2009  pooka Add an example program which shows how to do "ifconfig rum0 up".
What makes this special is that the USB driver stack, the rum
driver, network subroutines and net80211 are running in userspace
in a rump kernel instead of in the host kernel.
 1.3 03-Nov-2009  pooka * use rump_boot_sethowto()
* fail in a nicer way if interface device is not probed
 1.2 14-Oct-2009  pooka WARNS + make compile
 1.1 05-Oct-2009  pooka Add an example program which shows how to do "ifconfig rum0 up".
What makes this special is that the USB driver stack, the rum
driver, network subroutines and net80211 are running in userspace
in a rump kernel instead of in the host kernel.

RSS XML Feed