Using Genode 17.05 with Fiasco.OC
Jörg-Christian Böhme
joerg at ...518...
Mon Jul 24 17:16:26 CEST 2017
Hello,
first, thanks for your effort guys. I'm very glad to see that a microkernel
architecture/framework is exists in C++ :-)
A short description about me:
I'm C++ enthusiasts (C++ User Group Duesseldorf and Meeting C++
stuff member) and also very interested about operating systems. I pay
attention to security feature.
For some year, Blackberry announced that they discontinued BB10. I was very
disappointed about that because BB10 is developed in Qt/C++ and focuses in
security because they based on a microkernel architecture from QNX as
operating system. After the announcement from Blackberry, I was thinking
about to write a microkernel architecture in C++ but I checked if they
exists a microkernel architecture in C++ and I was very happy about that
they really exists.
I started first with Fiasco.OC but I found out that in Genode it uses the
new C++ Standard so here I'm :-)
I started a month ago with Gnode hello tutorial and play around with them.
Therefore, I call myself a newbie :-)
But at the end, I will use Genode on my laptop (like turmvilla example) and
start to develop some application on it :-).
But first, I think about to start with a small server. The host provider
that I use, use a QEMU with KVM enable as virtual server. So it is not
possilbe to use NOVA on it because of the KVM enabled featuer (I think) but
Fiasco.OC works.
The problem:
So I try to build/create a image from the lighttpd example with Fiasco.OC
kernel. The image started but the lighttpd does not work. Also the
hello tutorial with Fiasco.OC does not work anymore.
I checked the issue tracker on github but I didn't find any issue about
that.
What I figure out:
- Hello tutorial
When I increase in the hello tutorial the "default caps" from 50 to 54 in
the config, then the tutorial is working with Fiasco.OC kernel.
- lighttpd
Here I must first "move" the timer service in the config (see my commit
on github [1]) then it works with the NOVA kernel. With Fiasco.OC I get
following error:
Error: nic_drv -> : environment ROM session denied (label="device_pd",
ram_quota=6144, cap_quota=3, diag=0)
I try to add "device_pd" in the boot modules because it is missing in the
rom fs but device_pd is not compile for the Fiasco.OC, only for NOVA.
I found out following in:
genode-src/repos/os/src/drivers/platform/spec/x86/device_pd/target.mk
It looks like device_pd is only build for NOVA.
Is this a known issue or somebody working on it ?
Or works the lighttpd example with Fiasco.OC kernel for anyone ?
If you still need additional infos, let me know.
Regards,
Jörg
[1]
https://github.com/Bjoe/genode/commit/8522e1b06c62e33988a03c5f308f16fad5250d45
More information about the users
mailing list