Ok, I have merged in the executive branch. The last dlopen-based version is tagged as "lastdyn". The new version should work on any OS; will set up a build server soon.
The stuff to munge the object files is now pulled out into a script. There are still a few hacky things to tidy up, and I hope the build process can be simplified a bit... but it has some fixes over the previous version, eg exit codes are now correct. So for anyone who hasn't read the rest of the thread, rumprun now creates actual binaries for NetBSD commands that talk to a (remote) rump kernel, so you can just do ./bin/ifconfig lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 33648 inet6 ::1 prefixlen 128 inet6 fe80::1%lo0 prefixlen 64 scopeid 0x1 inet 127.0.0.1 netmask 0xff000000 A large number of standard NetBSD binaries are compiled, and it is easy to add more. So you can create NetBSD filesystems, fsck them, configure networking, configure npf, create raid systems, create files, and run ktrace to see what is going on, or just attach a debugger. On Thu, Mar 20, 2014 at 2:49 PM, Antti Kantee <[email protected]> wrote: >> One option with rumprun, thinking out loud, is to provide .o files >> with main renamed rather than binaries, so you can link them into your >> single program. This would need some changes to the build, as netbsd >> libc needs to not be linked at that stage but later. So you would end >> up with some .o files that you link into your binary and can call >> ifconfig_main(...) in order to configure your network. Alternatively >> could bundle a bunch of them into a util library, maybe with a >> slightly easier interface using varargs so it is ifconfig("lo0", ...). >> This would be the simple option to add to your standalone rump based >> program for adding config. > > Yes, I think that will be especially important for Xen-like setups where > only one process (i.e. vm space & symbol namespace) is available. > > For userspace, maybe we can even have some rumpmain.o, which 1) runs > rump_init() 2) gets the "rc script" from some env variable and calls the > right functions. Though, I guess, the latter would require a dynamic > linker to be present. I intend to add something along these lines shortly, but for the moment there is only a "rumpremote" type version not a "rumprun" style version. It should be fairly simple. Justin ------------------------------------------------------------------------------ Learn Graph Databases - Download FREE O'Reilly Book "Graph Databases" is the definitive new guide to graph databases and their applications. Written by three acclaimed leaders in the field, this first edition is now available. Download your free book today! http://p.sf.net/sfu/13534_NeoTech _______________________________________________ rumpkernel-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/rumpkernel-users
