You are absolutely correct about Genode being able to isolate critical code from non-critical code – that's one of its main purposes.

Port files are only necessary to download external code.

I'm not sure about your second question. In particular, noux was intended exclusively for ported software. At this point, its main purpose is to emulate the fork() system call. For software that doesn't require that, I'd recommend just using libc instead. Noux also isn't designed for code isolation within a single noux instance, so that might be an issue as well.

There are plenty of code isolation examples available, and we can help you more if you tell us more about what you're trying to do. Then we can give you much better advice on what libraries and RPC interfaces to use. For example, if you want to separate a login screen's GUI from the password verification and login code, I'd recommend using the Report interface and/or the File_system interface.



On Tue, Nov 13, 2018, 2:57 AM Wouter van Oijen <wouter.van.oijen@technolution.nl wrote:
This is my first message to this mailinglist, so Hello, world! ;-)

I'm new to Genode and trying to learn the basics. Our goal is to
develop a setup that demonstrates the application of Genode to create
a powerful separation between critical and non-critical code. Genode
looks really promising for this!

To get a better understanding of the build environment and Noux in
particular, I'm trying to run a simple "Hello, world" application on
Noux. However, I don't know how to achieve this yet. The Porting Guide
[1] doesn't help me much, as I don't think the example is really
applicable to my use case. It raises the following questions:

* Is it necessary to create a "port file" for any application I want
to run on Noux (even if it's just a simple application consisting of
one source file that is already part of the build directory)?
* How can I add files generated by the Genode build system to the Noux
environment, so that I can call my "hello" binary from bash in Noux?

Any help or a working example would be much appreciated. It would help
me much if someone could explain me how to extend the "run/noux_bash"
[2] example to include my hello-world application, if this is right
way to continue.

[1] https://genode.org/documentation/developer-resources/porting_noux_packages
[2] https://github.com/genodelabs/genode/blob/master/repos/ports/run/noux_bash.run

Kind regards,

Wouter van Oijen
Lead Designer

T +31(0)182594000 | E wouter.van.oijen@technolution.nl
A Burgemeester Jamessingel 1, P.O. Box 2013, 2800 BD Gouda, The
Netherlands | W technolution.com

This e-mail is intended exclusively for the addressee(s), and may not
be passed on to, or made available for use by any person other than
the addressee(s). Technolution B.V. rules out any and every liability
resulting from any electronic transmission.

_______________________________________________
Genode users mailing list
users@lists.genode.org
https://lists.genode.org/listinfo/users