linux emulation
Dick Davies
rasputnik at hellooperator.net
Thu Dec 2 13:08:42 PST 2004
* Mikko Heiskanen <mikko at whitecortex.net> [1244 16:44]:
> I've been wondering about this some time now.
> The linux compatibility layer (kernel module + linux_base -port)
> is told to be able to run linux binaries. The handbook even describes
> for a couple of heavy-duty applications how this is done.
> However, after reading that part of the handbook and googling around the
> net, I haven't the slightest idea how I'm supposed to run such program.
Same as any other binary.
> Let's say I have a program. Should I put it in /compat/linux/somewhere,
> run it like /compat/linux/somewhere/executable and it just somehow
> works? Or should I chroot to /compat/linux?
> How does FreeBSD know when to use linuxemu?
A Linux binary looks different to a native one. The system notices and
kicks off the emulation layer. (effectively you have a different system
call table for each emulated OS, if that means anything to you).
There's a detailed explanation of NetBSDs way of doing this (I expect
FreeBSDs is very similar) in a six part onlamp series starting at:
http://www.onlamp.com/lpt/a/2623
--
And if you think you're going to bleed all over me
you're even wronger than you normally be - The Specials, 'Little Bitch'
Rasputin :: Jack of All Trades - Master of Nuns
More information about the freebsd-questions
mailing list