You will have to have the notion of "master interpreter" ELF.
The kernel would just do something like:

if (is_ELF(path))
  load_ELF(path);
else
  call_master_interpreter_ELF(path, args...);

I am not sure the security implications of it, and performance (loading two
ELFs instead of one).



On Tue, Dec 1, 2015 at 6:52 AM, barret rhoden <[email protected]> wrote:

> On 2015-12-01 at  6:34 'Davide Libenzi' via Akaros wrote:
> > Yes. In other OSs  there is the notion of binary interpreters.
> > In Linux for example, the script_fmt interpreter looks if the first
> > byte is '#' and the second byte is '!', and then try to parse the
> > interpreter from the first line, and call that by building the proper
> > args to it.
>
> If that's something you need, then I'd be up for us having it.
>
> Would we need to put that in the kernel?  Or is that something
> userspace could do?  I guess the user would need an open, read, close,
> before calling sys_proc_create.  The benefit is the kernel does less
> internally, so it's less code in the TCB.
>
> Part of the reason I bring up userspace is that one long-range plan I
> had was to get argument parsing completely out of the kernel, where the
> parent sets up the user's stack, and the kernel doesn't need to do any
> parsing.  Maybe even get the kernel out of the elf processing business.
>
> Barret
>
> --
> You received this message because you are subscribed to the Google Groups
> "Akaros" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To post to this group, send email to [email protected].
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"Akaros" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to