05-17-2009 12:52 AM
Hi,
I want to know what is LabVIEW runtime engine exactly? Whay is it required? What exactly is it's role?
Where can I find the answers of these questions? I searched on this site but couldn't able to locate a single document .
Thanks!
Solved! Go to Solution.
05-17-2009 01:28 AM - edited 05-17-2009 01:31 AM
If you built your LabVIEW project into an application using the application builder it can later be run on a computer that does not have LabVIEW installed. However that computer needs to install the free LabVIEW runtime engine which can be downloaded from NI or even included in the installer for the application.
Note that you need the correct version of the runtime engine. It must match the LabVIEW version used to built the application. You can install more than one version, even all.
05-17-2009 06:58 AM
Thanks Altenbach,
Why runtime engine is required is clear, but what exactly is runtime engine is not clear to me. Is it a kind of layer between LV application and OS?
Thanks!
05-17-2009 07:03 AM
Take a look here
http://www.pcmag.com/encyclopedia_term/0,2542,t=runtime+engine&i=56079,00.asp
It is good and short explanation
05-17-2009 01:51 PM
LabVIEW is different from those other languages in that LabVIEW code is compiled directly to machine code. This machine code is saved as part of every VI (you can see this if you open a VI you saved in one OS in another OS. LabVIEW will prompt you to save it) and the RTE is responsible for loading and running everything, as well as for some common functions exported from the run-time DLL.
The basic run-time is 20 MB or so. I can't say I know what the rest do.
05-17-2009 02:18 PM
LabVIEW is not different to many other programming tools in that is it modular. Look at your computer, I am sure you have e g flash player installed. Would you really prefer if the entire player code would need to be included and downloaded with every tiny web flash application? How about the visual basic runtime? How about Java runtime? Having a runtime is the standard way to do things.
Sure you could place everything inside each executable, and that's how it was actually done in the good old LabVIEW 4.0 days, where the simplest LabVIEW executable (e.g. to add two numbers) was several Megabytes in size (old discussion). Now, since we have the runtime, a LabVIEW executable can be very small.
It makes perfect sense to include all common code into a few DLLs that can be installed once and shared by all LabVIEW executables. Do you really think it would make sense if all 20 LabVIEW programs installed on a computer had their own copy of the core FFT algorithm? One shared copy is enough! As soon as you have more than one LabVIEW application installed, the savings are gigantic. What if a bug is discovered. Would you rather patch 20 different program or simply update the runtime engine?
Long ago, the same discussion came up and I have writteen a more detailed reply here
05-17-2009 04:07 PM
05-18-2009 02:03 AM
I thank all of you for providing this information. I have got clear information on this now.
Thanks!