Fred,
With all due respect, you question looks like the many junk questions created by AI that I receive on Quora daily. I know that isn't the case here so I will try to be helpful.
First, just my opinion, the term “best practice” is garbage jargon. Some code is better and some is worse. there is no such thing as best. The computer community is filled with techno religious nuts who want you to know that their opinion is important whether it deserves to be or not. Sometimes these opinion rise to the level where some think it is common wisdom. This also is bs. Stay away from anyone who tries to tell you what best practice is. Just ask for what is a good way to do something.
“add an own application with a lot of dependencies”
So you have an application with dependencies. This could mean several things but you seem to mean libraries.
“to thrid party libraries”
What do you mean by 3rd party libraries? What are first party and second party libraries? You could mean open source libraries or proprietary libraries.
“add an own application”
Do you want to run your application on QNX? Obviously that QNX system would need to have any libraries required by your application. Do you want to know how to do that? Do you want the application to just start when the computer boots?
“When I add the 3rd party libraries to the main image”
By main image, do you mean the boot image? Unless you are running a filesystemless kiosk type application, you can put the libraries in either the boot image or on the file system. The differences in preformance should be minimal, as should the startup time, although putting it in the file system is usually more flexible.
“the boot steps tooks more time”
Do you mean it takes longer to boot? What steps are you talking about? The sequential starting of programs? What do you mean by more time? A minute, a second, a millisecond. If it is something macroscopic then the problem probably has nothing to do with your application and its libraries. If it is microscopic, you only would have a reason to worry about this if you have some specific time constraints such as, from power on to application must be under .200ms.
“Should I use a separate image partition?”
Do you mean, is it possible to build an image file system and jam it onto the boot file so that after booting, everything is in memory. Yes. You might also be putting one or both of these in flash. I can’t imagine that this will impact the time to boot significantly.
If you want to have a system get up and running quickly, you should check with QNX/Blackberry to see if they still have their “fast boot” kit. The idea is that a typical bios or startup does a lot of checking for hardware. If you have static known hardware, you can avoid this and get things going very fast. I’ve seen boards that could go from power on to running an OpenGL gear demo program in less than 2 seconds.