run/noux_vim yields black SDL window on linux_x86

Norman Feske norman.feske at ...1...
Thu Sep 17 11:27:45 CEST 2015


Hi Alex,

On 17.09.2015 10:41, Alexander Senier wrote:
> I'm trying to run some more elaborate demos on with Linux as the base
> system. My host is a Debian Stretch (x86_64), I'm on master which I
> checked out this morning (5cf8c49c).
> 
> When trying to run 'noux_vim', a completely black SDL window (no text or
> anything) shows up. The following is output on the command line:
> 
> $ make run/noux_vim

unfortunately, all but the simplest noux scenarios don't work on Linux.
Ironically, 'fork' is not implemented on this base platform. On regular
L4-like microkernels, it is possible to remotely manipulate address
spaces. So the noux runtime is able to copy the address space of the
forking noux process to another one. The Linux kernel does not allow us
to do that (well, at least when not using ptrace or a similar hook).

Consequently, implementing fork on Linux calls for a different
implementation where the noux process itself plays a more active role
(i.e., issuing the Linux clone syscall directly, copying the locally
implemented region-manager structures). It is actually quite tricky. So
far, I found that the hassle wasn't worth the effort.

The plain noux.run script does work because is solely executes 'ls',
which does not rely on fork. In contrast, the noux_vim.run scenario
requires fork because Vim temporarily spawns a shell at startup.

Do you deem noux as critical in your Linux-based scenario? If yes, we
should investigate to best way how to go forward.

Cheers
Norman

-- 
Dr.-Ing. Norman Feske
Genode Labs

http://www.genode-labs.com · http://genode.org

Genode Labs GmbH · Amtsgericht Dresden · HRB 28424 · Sitz Dresden
Geschäftsführer: Dr.-Ing. Norman Feske, Christian Helmuth




More information about the users mailing list