Java and VFS on different kernels

Roman Iten roman.iten at gapfruit.com
Mon Aug 12 13:55:42 CEST 2019


I'm experimenting with the cool feature of running Java applications
introduced in Genode 19.02. I created a run script (= "copied java.run
and made some minor changes") that builds and integrates a trivial Java
example (check prime) [1].

It works as expected for BOARD=linux and KERNEL=linux.

But for BOARD=pc and KERNEL=[hw|nova] it doesn't. Actually, I have two
issues I don't understand:


1. Java cannot load the jar file:

[init -> java] Error: Invalid or corrupt jarfile app.jar

A workaround is to pack it into a tar file and mount it accordingly into
the VFS.


2. Reading the numbers from stdin leads to:

no RM attachment (READ pf_addr=0x5617b8 pf_ip=0x49a10 from pager_object:
pd='init -> java' thread='pthread')
Warning: page fault, pager_object: pd='init -> java' thread='pthread'
ip=0x49a10 fault-addr=0x5617b8 type=no-page
no RM attachment (READ pf_addr=0x4e6838 pf_ip=0x276e23f from
pager_object: pd='init -> java' thread='pthread')
Warning: page fault, pager_object: pd='init -> java' thread='pthread'
ip=0x276e23f fault-addr=0x4e6838 type=no-page
no RM attachment (WRITE pf_addr=0x49d300 pf_ip=0x82a79 from
pager_object: pd='init -> java' thread='alarm-timer')
Warning: page fault, pager_object: pd='init -> java'
thread='alarm-timer' ip=0x82a79 fault-addr=0x49d300 type=write-fault


I would have expected the run script to be platform independent. Can
someone explain why it isn't?

Thanks, Roman


[1]
https://github.com/rite/genode-world/commit/84e72ed8433114b9c0624ed1f55aeff5317ebc53

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: OpenPGP digital signature
URL: <http://lists.genode.org/pipermail/users/attachments/20190812/640bc977/attachment.sig>


More information about the users mailing list