09-13-2013 06:15 PM - edited 09-13-2013 06:18 PM
Hi,
I was attracted to the subject of LabVIEW work under the hood - and this is where my question came from. I am interesting in the way standalone LabVIEW application works. So can anybody point me some source of information about purpose of Run-Time Engine for LabVIEW? Only info I could find is wiki and "NI LabVIEW Compiler: Under the Hood" white paper (very interesting, by the way).
Best,
Michał
PS: Please try to treat my lack of language skills with a pinch of salt inasmuch english is not my native ![]()
09-13-2013 06:33 PM
I know you want to get deep under-the-hood, someone else may help you get there. But, I can provide a broad brush-stroke version that might just give you the knowledge you wish.
in a nutshell, The LabVIEW RTE is there to take the "Compiled" code that LabVIEW generates and allow the OS to target the silicone features the uP has available in order to act on those instructions.
Beyond that, you really are digging into how the engine is made and not what it does- Other people are much better equiped to offer details about that! The beauty of high level languages like LabVIEW is that you really can just let the compiler expose the Si features for you and handle the really low-level stuff while you can focus on abstract concepts like "Add" without specifically demanding access to the floating point co-processor if needed.
09-13-2013 06:38 PM - edited 09-13-2013 06:42 PM
LabVIEW code is always compiled, even if you run the VI directly in the development system. All the compiler topics always apply to your VIs at all times.
A standalone LabVIEW application is slightly less: A LabVIEW program that has all unecessary things originally present (diagrams, unused front panels, etc.) stripped out using the application builder. It only contains your custom code, so in order to be able to run it on a machine that does not have LabVIEW installed, you need to install all the shared stuff common to all LabVIEW programs some other way. That's the run time engine.
This is fairly common. Many other program require a "run time engine" or similar. Look at java, flash, silverlight, etc.
09-13-2013 06:41 PM
Thanks Jeff. I really appreciate beauty of high level programming every day but i would like to know how that organism works, just for pure curiosity.
09-14-2013 12:30 PM
For some more details, you can go here and get the Bob Preis presentation from NIWeek 2013 about the app builder. If memory serves, the focus of the talk is more about how to do various custom distributions, but I think he also talks a bit the relationship with the RTE - http://lavag.org/topic/17040-niweek-2013-videos/
09-16-2013 05:11 AM
The LV RTE is basically all the functions and dependencies you have access to when you program as a package. What you create is usually a small program that calls these functions.
As mentioned, it's the same as DirectX or java.
/Y