This article is in a list format that may be better presented using prose.You can help by converting this article to prose, if appropriate. Editing help is available.(July 2014)

Some or all of this article's listed sourcesmay not be reliable. Please help this article by looking for better, more reliable sources, or by checking whether the references meet the criteria for reliable sources. Unreliable citations may be challenged or deleted.(August 2014)

VxWorks is a real-time operating system (RTOS) developed as proprietary software by Wind River of Alameda, California, US. First released in 1987, VxWorks is designed for use in embedded systems requiring real-time, deterministic performance and, in many cases, safety and security certification, for industries, such as aerospace and defense, medical devices, industrial equipment, robotics, energy, transportation, network infrastructure, automotive, and consumer electronics.[1]

VxWorks comes with the kernel, middleware, board support packages, Wind River Workbench development suite and complementary third-party software and hardware technologies. In its latest release, VxWorks 7, the RTOS has been re-engineered for modularity and upgradeability so the OS kernel is separate from middleware, applications and other packages.[7] Scalability, security, safety, connectivity, and graphics have been improved to address Internet of Things (IoT) needs.[8][9][10]

VxWorks started in the early 1980s as a set of enhancements to a simple RTOS called VRTX[11] sold by Ready Systems (becoming a Mentor Graphics product in 1995).[12] At the time, VRTX had quality issues, was 4KB small in size, lacked critical features, and was generally not up to par as a full-blown RTOS. Wind River acquired rights to distribute VRTX and significantly enhanced it by adding, among other things, a file system and an integrated development environment. In 1987, anticipating the termination of its reseller contract by Ready Systems, Wind River developed its own kernel to replace VRTX within VxWorks.[13]

The VxWorks Core Platform consists of a set of runtime components and development tools. The run time components are an operating system (UP and SMP; 32- and 64-bit), software for applications support (file system, core network stack, USB stack and inter-process communications) and hardware support (architecture adaptor, processor support library, device driver library and board support packages).[6] VxWorks core development tools are compilers such as Diab, GNU, and Intel C++ Compiler (ICC)) and its build and config tools. The system also includes productivity tools such as its Workbench development suite and Intel tools and development support tools for asset tracking and host support.[6]

The platform is a modular, vendor-neutral, open system that supports a range of third-party software and hardware. The OS kernel is separate from middleware, applications and other packages,[9] which enables easier bug fixes and testing of new features.[15] An implementation of a layered source build system allows multiple versions of any stack to be installed at the same time so developers can select which version of any feature set should go into the VxWorks kernel libraries.

In March 2014, Wind River introduced VxWorks 7, which emphasizes scalability, security, safety, connectivity, graphics, and virtualization.[10][15][20] The following lists some of the release 7 updates.[1][6][7][10] More information can be found on the Wind Rivers VxWorks website.

Modular, componentized architecture using a layered build system with the ability to update each layer of code independently

VxWorks microkernel (a full RTOS that can be as small as 20KB)

Security features such as digitally-signed modules (X.509), encryption, password management, ability to add/delete users at runtime

Single authentication control used for Telnet, SSH, FTP, and rlogin daemons

Connectivity with Bluetooth and SocketCAN protocol stacks

Inclusion of MIPC File System (MFS) and MIPC Network Device (MND)

Networking features with 64-bit support including Wind River MACsec, Wind River’s implementation of IEEE 802.1A, Point-to-Point Protocol (PPP) over L2TP, PPP over virtual local area network (VLAN) and Diameter secure key storage

New Wind River Workbench 4 for VxWorks 7 integrated development environment with new system analysis tools

As is common in embedded system development, cross-compiling is used with VxWorks. Development is done on a "host" system where an integrated development environment (IDE), including the editor, compiler toolchain, debugger, and emulator can be used. Software is then compiled to run on the "target" system. This allows the developer to work with powerful development tools while targeting more limited hardware. VxWorks uses the following host environments and target hardware architectures:[3][21]

The Eclipse-based Workbench IDE that comes with VxWorks is used to configure, analyze, optimize, and de-bug a VxWorks-based system under development.[22] The Tornado IDE was used for VxWorks 5.x[23] and was replaced by the Eclipse-based Workbench IDE for VxWorks 6.x. and later.[21] Workbench is also the IDE for the Wind River Linux,[24] On-Chip Debugging,[25] and Wind River Diab Compliler product lines. VxWorks 7 uses Wind River Workbench 4[26] which updates to the Eclipse 4 base provide full third party plug-in support and usability improvements.

VxWorks 7 includes three compilers:[27][21] Diab Compiler, GNU, and the Intel C++ Compiler. Diab Compiler is the default C/C++ compiler for building VxWorks kernel, libraries, BSPs, and applications. It has been used for mission-critical systems for over 20 years. The GNU Compiler 4.8 is based on the Free Software Foundation (FSF) distribution of GCC and g++.[28] Wind River has modified it for use with VxWorks. The Intel C++ Compiler processes C and C++ source code to generate machine code for IA 32 or IA 64 applications.[29]

Wind River Simics[30][31] is a standalone simulation tool compatible with VxWorks. It simulates the full target system (hardware and software) to create a shared platform for software development. Multiple developers can share a complete virtual system and its entire state, including execution history. Simics enables early and continuous system integration and faster prototyping by utilizing virtual prototypes instead of physical prototypes.[32]

VxWorks is used by products over a wide range of market areas: aerospace and defence, automotive, industrial such as robots, consumer electronics, medical area and networking.[7] Several notable products also use VxWorks as the onboard operating system.[33]

The Deep Space Program Science Experiment (DSPSE) also known as Clementine (spacecraft)[36] Clementine launched in 1994 running VxWorks 5.1 on a MIPS-based CPU responsible for the Star Tracker and image processing algorithms. The use of a commercial RTOS on board a spacecraft was considered experimental at the time[citation needed]