VxWorks is a real-time operating system (or RTOS) developed as proprietary software by Wind River Systems, a subsidiary of Aptiv. 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, defense, medical devices, industrial equipment, robotics, energy, transportation, network infrastructure, automotive, and consumer electronics.
VxWorks supports AMD/Intel architecture, POWER architecture, ARM architectures, and RISC-V. The RTOS can be used in multicore asymmetric multiprocessing (AMP), symmetric multiprocessing (SMP), and mixed modes and multi-OS (via Type 1 hypervisor) designs on 32- and 64-bit processors.
VxWorks comes with the kernel, middleware, board support packages, Wind River Workbench development suite, complementary third-party software and hardware. 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. Scalability, security, safety, connectivity, and graphics have been improved to address Internet of Things (IOT) needs.
History
VxWorks started in the late 1980s as a set of enhancements to a simple RTOS called VRTX sold by Ready Systems (becoming a Mentor Graphics product in 1995). 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 proceeded to develop its own kernel to replace VRTX within VxWorks.
Published in 2003 with a Wind River copyright, "Real-Time Concepts for Embedded Systems"
describes the development environment, runtime setting, and system call families of the RTOS.
Written by Wind River employees with a foreword by Jerry Fiddler, chairman, and co-founder of Wind River, the textbook is an excellent tutorial on the RTOS. (It does not, however, replace Wind River documentation as might be needed by practicing engineers.)
Some key milestones for VxWorks include:
- 1980s: VxWorks adds support for 32-bit processors.
- 1990s: VxWorks 5 becomes the first RTOS with a networking stack.
- 2000s: VxWorks 6 supports SMP and adds derivative industry-specific platforms.
- 2010s: VxWorks adds support for 64-bit processing
- 2020s: VxWorks continues to update and add support, including the ability to power the Mars 2020 lander.
Platform overview
VxWorks supports Intel architecture, Power architecture, and ARM architectures. The RTOS can be used in multi-core asymmetric multiprocessing (AMP), symmetric multiprocessing (SMP), mixed modes
- Multitasking kernel with preemptive and round-robin scheduling and fast interrupt response
- Native 64-bit operating system (only one 64-bit architecture supported: x86-64). Data model: LP64
- User-mode applications ("Real-Time Processes", or RTP) isolated from other user-mode applications as well as the kernel via memory protection mechanisms
- SMP, AMP and mixed mode multiprocessing support
- Error handling framework
- Bluetooth, USB, CAN protocols, Firewire IEEE 1394, BLE, L2CAP, Continua stack, health device profile
- Binary, counting, and mutual exclusion semaphores with priority inheritance
- Local and distributed message queues
- POSIX PSE52 certified conformity in user-mode execution environment
- File systems: High Reliability File System (HRFS), FAT-based file system (DOSFS), Network File System (NFS), SMB (via the NQ stack from Visuality Systems), and TFFS
- Dual-mode IPv6 networking stack with IPv6 Ready Logo certification
- Memory protection including real-time processes (RTPs), error detection and reporting, and IPC
- Multi-OS messaging using TIPC and Wind River multi-OS IPC
- Symbolic debugging
In March 2014 Wind River introduced VxWorks 7, emphasizing scalability, security, safety, connectivity, graphics, and virtualization. The following lists some of the release 7 updates. MIPS, PowerPC (and BAE RAD), Freescale ColdFire, Intel i960, SPARC, Fujitsu FR-V, SH-4 and the closely related family of ARM, StrongARM and xScale CPUs. VxWorks provides a standard board support package (BSP) interface between all its supported hardware and the OS. Wind River's BSP developer kit provides a common application programming interface (API) and a stable environment for real-time operating system development. VxWorks is supported by popular SSL/TLS libraries such as wolfSSL.
Development environment
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:
;Supported target architectures and processor families
VxWorks supports a range of target architectures including ARM, Intel, Power architecture, RISC-V architecture and more. or via citation.
The Eclipse-based Workbench IDE that comes with VxWorks is used to configure, analyze, optimize, and debug a VxWorks-based system under development. The Tornado IDE was used for VxWorks 5.x and was replaced by the Eclipse-based Workbench IDE for VxWorks 6.x. and later. On-Chip Debugging, and Wind River Diab Compiler product lines. VxWorks 7 uses Wind River Workbench 4 which updates to the Eclipse 4 base provides full third party plug-in support and usability improvements.
Wind River Simics 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.
Notable uses
thumb|The [[Mars Science Laboratory Curiosity rover uses VxWorks.]]
thumb|The [[ASIMO Robot uses VxWorks.]]
thumb|[[AgustaWestland Project Zero uses VxWorks.]]
thumb|The [[Mars Reconnaissance Orbiter uses VxWorks.]]
thumb|The [[Clementine (spacecraft)|Clementine spacecraft used VxWorks.]]
VxWorks is used by products across a wide range of market areas: aerospace and defense, automotive, industrial such as robots, consumer electronics, medical area and networking.
<!-- Do not add products here unless they are notable and already have an article on Wikipedia. The fact that a manufacturer has an article isn't sufficient, the product itself must have an article or at least have a section devoted to it within another article. External links will be removed. -->
Aerospace and defense
;Spacecraft
- The Mars 2020 rover
- The Mars Reconnaissance Orbiter
- The Mars Science Laboratory, also known as the Curiosity rover
- NASA Mars rovers (Sojourner, Spirit, Opportunity) 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
<!-- * CIRA’s FTB-1 unmanned space vehicle -->
- Phoenix Mars lander
- The Deep Impact space probe
- The Mars Pathfinder mission
<!--* The Stardust (spacecraft) robotics space probe -->
- NASA's Juno space probe sent to Jupiter
Aircraft
- AgustaWestland Project Zero
- Northrop Grumman X-47B Unmanned Combat Air System
- Airbus A400M Airlifter
- BAE Systems Tornado Advanced Radar Display Information System (TARDIS) used in the Tornado GR4 aircraft for the U.K. Royal Air Force
- Lockheed Martin RQ-170 Sentinel UAV
- Boeing 787
;Space telescopes
- Fermi Gamma-ray Space Telescope (FGST)
<!--* Gran Telescopio Canarias-->
- James Webb Space Telescope
;Others
- European Geostationary Navigation Overlay System (EGNOS)
- TacNet Tracker, Sandia National Laboratory’s rugged handheld communication device
<!--* Falcon Flight Computers
- SpaceX’s control system for rocket launch and remote management-->
- BAE Systems SCC500TM series of infrared camera cores
- Barco CDMS-3000 next generation control display and management system
<!--
- EADA’s control software for air-to-air re-fueling of Airbus A330
- Eurocopter Group’s helicopter cockpit and avionics system
- Raytheon’s Wide Are Augmentation System (WAAS)
- ALR-67 Radar Warning Receiver used in the Boeing F/A-18E/F Super Hornet
-->
Automotive
- Toshiba TMPV75 Series image recognition SoCs for advanced driver assistance systems (ADAS)
- Bosch Motor Sports race car telemetry system
- Hyundai Mobis IVI system
- Magneti Marelli's telemetry logger and GENIVI-compliant infotainment system
- BMW iDrive 2.0 (2003-2008)
- Most of Renault Trucks T, K and C trucks' electronic control units.
- European Volkswagen RNS 510 navigation systems
Consumer electronics
- TPLink RE190 Wireless repeater
- Apple Airport Extreme
- Brother printers
- Drobo data storage robot
- Honda robot ASIMO
- Linksys WRT54G wireless routers (versions 5.0 and later)
- Mobile Technika MobbyTalk and MobbyTalk253 phones
- ReplayTV home digital video recorder
<!--
- Thuraya SO-2510 satellite phone
- DEC Lectrice (an early tablet (1993) that ran an X11 server: developed by Charles P. Thacker at Digital Equipment Corporation
- Sega NAOMI / NAOMI 2 GD-ROM/NetDimm arcade systems -->
Industrial
;Industrial robots
- ABB industrial robots
- The C5G robotic project by Comau
- KUKA industrial robots
- Stäubli industrial robots
- Yaskawa Electric Corporation's industrial robots
- Comau Robotics SMART5 industrial robot
;Test and Measurement
- Teledyne LeCroy WaveRunner LT, WaveRunner2LT and WavePro 900 oscilloscope series
- Some Tektronix TDS, DPO, and MSO series oscilloscopes
- Hexagon Metrology GLOBAL Silver coordinate measuring machine (CMM)
;Transportation
- FITSCO Automatic Train Protection (ATP)system
- Bombardier HMI410 Train Information System
;Controllers
- Bachmann M1 Controller System
- Invensys Foxboro PAC System
- National Instruments CompactRIO 901x, 902x 907x controllers
- Emerson distributed control system controllers
- AMX controls system devices
- The Experimental Physics and Industrial Control System (EPICS)
- Bosch Rexroth Industrial Tightening Control Systems
- MCE iBox elevator controller
<!--* Siemens AG MRI measurement control units-->
- Rockwell Automation PLCs - ControlLogix, CompactLogix, Assorted Communication Cards, and Servo Drives
- Schneider Electric Industrial Controller
- B&R Automation Runtime
;Storage systems
- External RAID controllers designed by the LSI Corporation/Engenio prior to 2011, now designed by NetApp. And used in RDAC class arrays as NetApp E/EF Series and OEM arrays
<!--* Storage systems from IBM System Storage, Silicon Graphics, Sun Microsystems/StorageTek, Teradata, Dell, Sepaton, BlueArc and several other companies worldwide -->
- Fujitsu ETERNUS DX Sx family of unified data storage arrays
;Imaging
<!-- * Eurotherm paperless graphic recorders
- Konica Minolta bizhub print controllers
- Xerox Phaser and other Adobe PostScript-based computer printers -->
- Toshiba eBridge based range of photocopiers
<!-- * DIGIC II and some early DIGIC III image-processors by Canon-->
;Others
<!--* Hagan Computerized Slide Ejection Photo Sizer fruit and vegetable packing machine-->
- GrandMA Full-Size and Light Console by MA Lighting
Medical
- Varian Medical Systems Truebeam - a radiotherapy device for treating cancer
- Olympus Corporation's surgical generator
- BD Biosciences FACSCount HIV/AIDS Monitoring System
- Fedegari Autoclavi S.p.A. Thema4 process controller
- Sirona Dental Systems: CEREC extraoral X-ray CAD/CAM systems
- General Electric Healthcare: CT and MRI scanners
- Carl Zeiss Meditec: Humphrey Field Analyzer HFA-II Series
- Philips MRI scanners and C-arm Radiology Equipment
Networking and communication infrastructure
- Arkoon Network Security appliances
- Ubee Interactive's AirWalk EdgePoint
- Kontron's ACTA processor boards
- QQTechnologies's QQSG
- A significant portion of Huawei's telecoms equipment uses VxWorks
- BroadLight’s GPON/PON products
- Shiron Satellite Communications’ InterSKY
- Sky Pilot's SkyGateway, SkyExtender and SkyControl
- EtherRaptor-1010 by Raptor Network Technology
- CPG-3000 and CPX-5000 routers from Siemens
- Nokia Solutions and Networks FlexiPacket series microwave engineering product
- Acme Packet Net-Net series of Session Border Controllers
- Alcatel-Lucent IP Touch 40x8 IP Deskphones
- Avaya ERS 8600
- Avaya IP400 Office
- Cisco CSS platform
- Cisco ONS platform
- Ciena Common Photonic Layer
- Dell PowerConnect switches that are 'powered by' Broadcom, except latest PCT8100 which runs on Linux platform
- Ericsson SmartEdge routers (SEOS 11 run NetBSD 3.0 and VxWorks for Broadcom BCM1480 version 5.5.1 kernel version 2.6)
- Hewlett Packard HP 9000 Superdome Guardian Service Processor
- Hirschmann EAGLE20 Industrial Firewall
- HughesNet/Direcway satellite internet modems
- Mitel Networks' MiVoice Business (formerly Mitel Communications Director (MCD)), 3300 ICP Media Gateways and SX-200 and SX-200 ICP
- Motorola Solutions MCD5000 IP Deskset System
- Motorola SB5100 cable modem
- Motorola Cable Headend Equipment including SEM, NC, OM and other lines
- Nortel CS1000 PBX (formerly Nortel Meridian 1 (Option 11C, Option 61C, Option 81C)
- Nortel Passport
- Radware OnDemand Switches
- Samsung DCS and OfficeServ series PBX
- SonicWALL firewalls
- Thuraya SO-2510 satellite phone and ThurayaModule
- Radvision 3G communications equipment
- 3com NBX phone systems
- Zhone Technologies access systems
- Oracle EAGLE STP system
TCP vulnerability and CVE patches
As of July 2019, a paper published by Armis exposed 11 critical vulnerabilities, including remote code execution, denial of service, information leaks, and logical flaws impacting more than two billion devices using the VxWorks RTOS. The vulnerability allows attackers to tunnel into an internal network using the vulnerability and hack into printers, laptops, and any other connected devices. The vulnerability can bypass firewalls as well.
The system is in use by quite a few mission-critical products, many of which could not be easily patched.
See also
- List of robotics software
