QNX 6.5.0 SDP Self-hosted - understanding host-target

We’ve installed 30-day Evaluation of QNX Momentics SDP Self-Hosted on PC (without any Windows/Linux partitions on HDD).

Please can you explain relation between “host” and “target” on the same HDD of the only PC?

If we want to “configure” something (some files of OS), which OS at which directory - host or target are we to modify? Which one is really “running” and when?

Host means the system you are developing with. It can be QNX (Self Hosted) or Windows/Linux using Momentics (Eclipse).

Target typically means an embedded system that you are developing for. A target system can be very simple, processor/memory/ROM or like a desktop with video/network/hard-drive etc.

For a long time QNX has supported a self-hosted environment. That is the host is running the same OS, QNX as the target. IMHO this had great advantages during development. You can see if something runs by compiling and running it instead of cross-compiling, copying it to the target, and remotely running it. It also encourages developing tools for you specific development without requiring the use of two different systems. Unfortunately QNX doesn’t see this, and appears to be moving away from self-hosting. They’ve announced the deprecation of Photon with no desktop replacement. Sorry for the soap box here.

If your target is the same as your host you can develop in two stages.

  1. Write and test all your programs

  2. Create a 2nd partition on your hard drive, copy only needed files to this partition and boot from it.

The results from 2) is an image that you can export to target only systems, presumably what you want to sell.
You can do step 2) by trial and error. For example, when you first boot off of the target, you might find that you are missing a dll. No problem, just reboot the host partition and copy it over and test again.

This sounds complicated, but in reality it’s very simple. Actually you just press one button to run your executeable on the target. You don’t need to copy it manually at all - or even transfer via FTP like some other cross env’s require you to do. Momentics does a very good job here. And the “graphical” debugger is priceless… at least for someone like me who isn’t very fond of gdb.