We're planning to develop an Windows application which simulates an embedded system containing 2 applications (that communicate through OS messages) and sell it as a whole package
- appication "F": we are provided with a non-intel/Windows binary, we don't have the source code (but we pay royalties to the company who does for using it)
- application "I": we develop that, and have the source code
Both applications are co-existing in real-time OS engine (that we developped) to run both. Both applications must be provided to the engine (windows executable) as DLLs, dynamically loaded by the OS simulator.
The real-time OS engine complies to the ARINC 653 norm.
We don't have the source code for partition "F", only the executable (using a different CPU than the host), but we found an emulator/VM that seems to fit our needs, provided we trim it down (a lot) and add features so it connects to the OS engine, also creating a DLL embedding the emulator/VM & some "glue" code.
Our modifications to emulator/VM would allow anyone using a A653-compliant OS and the same CPU architecture to run their programs (maybe with some further adaptations)
The CPU emulator/VM is GPL, and we're planning to distribute the simulated system to clients as a whole (both applications). I'm aware that- according to the GPL V2 terms - we'll have to provide source code for the tweaked emulator/VM part (and that's not an issue), but does that extend to:
- the simulated OS engine (our IP) which implements ARINC 653
- application "I" (our IP, which we rebuilt for the host from its sources)
- application "F" (a third party delivery, no source code, and we have to emulate the machine code instructions)
Can we still use & distribute the modified GPL emulator/VM in the DLL without having to provide source code for the OS simulator and application "I"? (the emulator doesn't link to the simulated OS or application "I": those are separate DLLs)
And in the case the whole project would have to comply to GPL V2, is there a way to get an agreement with the author(s) of the emulator to get a different license for us (like Qt paying licence) ?