LabVIEW

[3] LabVIEW is supported on a variety of operating systems (OSs), including macOS and other versions of Unix and Linux, as well as Microsoft Windows.

The execution flow is determined by the structure of a graphical block diagram (the LabVIEW-source code) on which the programmer places nodes and connects them by drawing wires.

[6]: 1–2  Multi-processing and multi-threading hardware is exploited automatically by the built-in scheduler, which multiplexes multiple OS threads over the nodes ready for execution.

LabVIEW integrates the creation of user interfaces (termed front panels) into the program development cycle.

In that case it runs as a subroutine within a larger program, and the front panel controls the inputs and outputs of the VI node.

The "G" graphical approach allows non-programmers to easily build programs by dragging and dropping virtual representations of lab equipment with which they are already familiar.

The LabVIEW programming environment includes examples and documentation to guide and simplify the creation of small applications.

For complex algorithms or large-scale code, a programmer must possess extensive knowledge of the special LabVIEW syntax and the topology of its memory management.

complex logic, communication protocols LabVIEW includes extensive support for interfacing to instruments, cameras, and other devices.

Users interface to hardware by either writing direct bus commands (USB, GPIB, Serial) or using high-level, device-specific drivers that provide native "G" function nodes for controlling the device.

The LabVIEW syntax is strictly enforced during the editing process, and when "G" code is run or saved, the compiler is automatically invoked.

In addition, it includes MathScript, a text-based programming component with built-in functions for signal processing, analysis, and mathematics.

Due to the longevity and popularity of the LabVIEW platform and the ability for users to extend its functions, a large ecosystem of third-party add-ons has developed via contributions from the community.

National Instruments also hosts a marketplace for both free and paid LabVIEW add-ons, called the NI Tools Network.

There is also an active community of LabVIEW users who communicate through several electronic mailing lists (email groups) and Internet forums.

When applications need sequencing, users often use LabVIEW with the National Instruments TestStand test management software.

LabVIEW has a direct node with modeFRONTIER, a multidisciplinary and multi-objective optimization and design environment, written to allow coupling to almost any computer-aided engineering tool.

An example of Labview code