Hi Stefan, On 2/5/19 2:46 PM, Stefan KLEMKE wrote: > Hello, > > > > i am trying to setup an inmate with actual tasks and I am stuck due to > supposedly misunderstanding. Maybe you guys can help .. > > > > 1.) yes/no : Jailhouse is responsible for the handling the hardware > access of the Inmate. So when I want to run an application (e.g. > Benchmark) in the cell, I need to establish an Operating System first, > or I choose an Application that does not use any OS libraries/resources > - right?
Jailhouse is responsible for assigning hardware resources to cells and will only prevent illegal access. Under ideal conditions, Jailhouse won't get active unless illegal accesses occur. Inside the cell, you're free to run an operating system or bare-metal applications without an operating system (cf. the inmate libary). If you run one of our examples, then - of course - you won't have access to any OS libraries as there is no OS. > > > > 2.) Creating an Inmate cell is usually done by setting up a c-software > package (the given demo cells c-software package has only one c-file). > The c-software package must be incorporated into the Jailhouse Make > using the given Jailhouse make files, since I need sources of jailhouse > like inmate.h etc. - right? Is there a different way to create an > Inmate? I struggle with understanding, how to "install" an operating > system in an Inmate using the c-software package. Jailhouse comes with a set of minimalist bare-metal applications. The inmate library. If you want to externally compile your application, you 'only' have to adjust your linker scripts to set correct adresses (cf. inmate.lds.S scripts) and maybe /align/ the startup process of your application/OS. Depends... > > > > 3.) I started my efforts by implementing a simple system call in my > c-file package Inmate (#system(NULL). Since my attempt to call the shell > from a c-file requires the stdlib.h include from the gcc standard Jailhouse's inmates don't have a standard library, hence you're missing the headers. > library, I recognized that these libraries seem to be excluded by the > Jailhouse Make files (but I couldn’t find -nodefaultlibs. or something > like that). I managed to include my local directories by adding -I$path > to one of the make files, but it seems to be missing for the linker, > too. The question is now: where do I find the exclusion of standard > libraries? Is there any docu to help understanding the setup of multiple We use -ffreestanding for inmates, the rest of the options to exclude system libraries come with Kbuild (-nostdinc, -isystem, …). Compile Jailhouse with "make V=1" and you'll see all those options. > make files in Jailhouse? Or maybe there is other approach I should use > when compiling complex inmates into Jailhouse? Zephyr supports Jailhouse on x86 [1]. This might be a good starting point. Besides that, Jailhouse can also run Linux as inmates. Therefore we use our own tiny bootloader, the linux-loader. Look at inmates/tools/... on how we bootstrap linux as a 'complex inmate'. HTH Ralf [1] https://docs.zephyrproject.org/latest/reference/kconfig/CONFIG_JAILHOUSE.html > > > > > > thanks for your help > > > > kind regards > > Stefan > > > > > > Der Inhalt dieser E-Mail ist für den Absender rechtlich nicht verbindlich. > Informieren Sie uns bitte, wenn Sie diese E-Mail fälschlicherweise > erhalten haben (Fax: +49-7551-891-4001). Bitte löschen Sie in diesem > Fall die Nachricht. Jede Form der weiteren Benutzung ist untersagt. > > > The content of this e-mail is not legally binding upon the sender. > If this e-mail was transmitted to you by error, then please inform us > accordingly (Fax: +49-7551-891-4001). In such case you are requested to > erase the message. Any use of such e-mail message is strictly prohibited. > > > > > -- > You received this message because you are subscribed to the Google > Groups "Jailhouse" group. > To unsubscribe from this group and stop receiving emails from it, send > an email to [email protected] > <mailto:[email protected]>. > For more options, visit https://groups.google.com/d/optout. -- You received this message because you are subscribed to the Google Groups "Jailhouse" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
