From: Jeff Dike <jdike@ka...> - 2001-06-01 16:07:19
> ie, basically I would need a uml_helper which executed a particular
> with arguments for me on the host system. How would I go about that?
If you don't have the network available, there are a couple of other
Represent the other UMLs as files in a hostfs filesystem. Removing the "file"
kills the corresponding UML. This would be a matter of reimplementing
arch/um/fs/hostfs/hostfs_user.c with whatever file ops make sense. This is
easy, but probably the wrong way to do it.
A harder, but better way would be represent the other UMLs as processes within
the UML that's supposed to be able to kill the others. These wouldn't be real
processes. They'd be faked by the UML arch layer enough to convince the
generic kernel that they're real. They'd have task structures and not much
else. The fakery code in the arch layer would translate signals on these
processes into signals to the UMLs outside. It would also keep an eye on them
and make the fake processes go away when the corresponding UMLs do.
This is more work, but it doesn't sound too hard to me. I think the arch
layer has all the hooks it needs to implement it.
From: Jeff Dike <jdike@ka...> - 2001-06-07 22:48:09
> The trick is to handle the tap device as a _network_ and not as a
> point to point interface.
Yeah, that's a better way to do it. But the helper adds a host route, not a
network route, so you still need to do that yourself.
I generally assign my UMLs addresses on my local network, so routes need to be